라군 + 쿠버네티스 1.22 🥳
Kubernetes는 상당히 공격적인 개발 및 릴리스 속도(연간 3개 릴리스)를 설정하지만 주요 클라우드 공급자는 이러한 릴리스를 다른 일정으로 제공하므로 종종 업스트림 릴리스보다 몇 개월 지연됩니다.
여기에서 몇 가지를 참조하십시오.
가장 중요한 것은 공급자가 클러스터를 새 버전의 Kubernetes로 자동 업그레이드하는 시점을 주목하는 것입니다. 대부분의 쿠버네티스 릴리스는 비교적 원활하게 업그레이드할 수 있지만 때때로 더 중요한 쿠버네티스 릴리스는 일반적으로 많은 지원 중단과 함께 제공되기 때문에 항상 탐색하기 까다롭습니다. 이들은 일반적으로 사전에 잘 전달되지만 특히 Lagoon만큼 움직이는 부분이 많은 코드 베이스에서 여전히 문제를 일으킬 수 있습니다.
고맙게도 Kubernetes API는 매우 잘 문서화되어 있으며 팀은 우리가 따라할 수 있도록 Deprecated API Migration Guide을 게시합니다. API가 더 이상 사용되지 않는 경우는 일반적으로 해당 API의 버전이 베타 또는 안정적인 릴리스로 증가했기 때문입니다. 하지만 때때로 우리가 사용하던 API가 Kubernetes에서 제거될 수 있습니다.
우리가 사용하는 모든 API에 대해 지원 중단이 우리에게 영향을 미치는지 여부를 평가해야 합니다.
coordination.k8s.io/v1beta1
는 coordination.k8s.io/v1
로 이름을 바꿉니다.) authorization.k8s.io/v1
API 버전에서 spec.group은 spec.groups사용되지 않는 이러한 API에 대한 모든 참조가 교체를 위해 업데이트되었는지 확인하기 위해 정밀한 빗(및 내장된 사용 중단 경고의 도움)으로 Lagoon의 다양한 구성 요소를 모두 검토했습니다. 여기에는 Lagoon을 배포하는 데 사용되는 모든 Helm 차트, Lagoon에서 실행되는 Lagoon 프로젝트 및 Lagoon이 활용하는 타사 서비스가 포함됩니다. 또한 Lagoon이 배포하는 컨트롤러 및 연산자의 일부 코드 재작성도 포함됩니다.
lagoon-corerelease 1.0.0 현재 이 작업이 완료되었습니다! Lagoon Helm 차트의 모든 최신 릴리스는 Kubernetes 1.22(및 1.23!)와 완벽하게 호환됩니다. 릴리스에 대한 매트릭스 테스트 버전 1.21,1.22,1.23 및 1.24, 릴리스 전에 다양한 테스트 클러스터 실행, Lagoon 구성 요소를 Kubernetes <1.19를 지원하지 않는 것으로 표시하는 등 향후 호환성을 보장하기 위해 몇 가지 추가 조치를 취했습니다. 그때 우리가 마이그레이션한 여러 대체 API가 처음 도입되었습니다.
To anybody running a pre-1.0.0 version of Lagoon on their <1.21 cluster, we would encourage you to upgrade to 1.22 ahead of time.
Kubernetes는 모든 리소스를 Kubernetes 1.22와 호환되도록 자동으로 업데이트하는 여러 웹후크를 도입했으며 클러스터는 1.22로 안전하게 업그레이드됩니다. 그러나 후속 Helm 차트 업그레이드는 더 이상 유효한 Kubernetes 개체가 아닌 해당 리소스의 사전 업데이트된 상태에서 작동하기 때문에 실패할 수 있습니다(혼란스럽죠?).
고맙게도 이미 업그레이드했거나 업그레이드되었으며 다음 오류가 표시되는 경우 이에 대한 수정 사항이 있습니다.
Error: UPGRADE FAILED: current release manifest contains removed kubernetes api(s) for this kubernetes version and it is therefore unable to build the kubernetes objects for performing the diff. error from kubernetes: unable to recognize "": no matches for kind "PriorityClass" in version "scheduling.k8s.io/v1beta1"
Helm 플러그인https://github.com/helm/helm-mapkubeapis은 정확히 이 문제를 해결하도록 설계되었으며 모든 버전의 Kubernetes에 대해 업데이트하는 데 필요한 리소스 매핑이 사전 로드되어 제공됩니다! 완벽하게 작동한다고 증언할 수 있습니다.
질문이 있으시면 언제든지 Lagoon 팀에 문의하십시오. 반짝이는 새 제품Discord Server에서도 당사를 찾을 수 있습니다.
Reference
이 문제에 관하여(라군 + 쿠버네티스 1.22 🥳), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/uselagoon/lagoon-kubernetes-122-ek8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)