강력한 Kubernetes 환경을 만들고 관리하려면 네트워크 팀과 애플리케이션 팀 간의 원활한 협업이 필요합니다. 그러나 이들의 우선순위와 작업 스타일은 일반적으로 상당히 다르기 때문에 잠재적으로 심각한 결과를 초래할 수 있는 갈등으로 이어집니다. 앱 개발 속도가 느리거나 배포가 지연되거나 심지어 네트워크 다운타임이 발생할 수도 있습니다.
오늘날의 현대적 애플리케이션이 적절한 보안과 확장성을 갖추고 정해진 시간에 제공되려면 두 팀이 공통의 목표를 향해 성공적으로 노력해야만 합니다. 그러면 각 팀의 기술과 전문성을 활용하면서, 그들이 협력하도록 어떻게 도울 수 있을까요?
저희의 백서 ' Get Me to the Cluster' 에서는 네트워크팀과 애플리케이션팀이 충돌 없이 각자의 강점을 결합할 수 있도록 Kubernetes 서비스에 대한 외부 액세스를 활성화하는 솔루션을 자세히 설명합니다.
이 솔루션은 베어 메탈 또는 기존 Linux 가상 머신(VM)에서 실행되는 노드와 표준 2계층 스위치, 3계층 라우터를 통해 데이터 센터 내 통신을 위한 네트워킹을 제공하는 온프레미스에서 호스팅되는 Kubernetes 클러스터에 특히 적합합니다. 클라우드 호스팅된 Kubernetes 클러스터에는 적용되지 않습니다. 클라우드 공급업체는 해당 데이터 센터의 핵심 네트워킹이나 관리형 Kubernetes 환경의 네트워킹을 제어할 수 없기 때문입니다.
솔루션의 세부 사항을 살펴보기 전에 Kubernetes 클러스터에서 애플리케이션을 노출하는 다른 표준 방식이 온프레미스 배포에 작동하지 않는 이유를 살펴보겠습니다.
A
레코드를 제공하므로 클라우드 호스팅 Kubernetes에 적합합니다. 불행히도 온프레미스 클러스터에는 이에 상응하는 것이 없습니다.그러면 클러스터 외부의 사용자에서 클러스터 내부의 포드로 흐르는 트래픽(북쪽에서 남쪽으로의 트래픽)을 위해 특별히 설계된 Kubernetes Ingress 객체가 남습니다. Ingress는 클러스터에 대한 외부 HTTP/HTTPS 진입점, 즉 외부 사용자가 여러 서비스에 액세스할 수 있는 단일 IP 주소 또는 DNS 이름을 만듭니다. 이게 바로 필요한 거예요! Ingress 객체는 Ingress 컨트롤러에 의해 구현됩니다. 당사 솔루션의 경우 NGINX Plus 를 기반으로 하는 엔터프라이즈급 F5 NGINX Ingress 컨트롤러입니다 .
솔루션의 또 다른 핵심 구성 요소가 3계층 라우팅 프로토콜인 BGP( Border Gateway Protocol )라는 사실에 놀라실 수도 있습니다. 하지만 좋은 솔루션은 반드시 복잡할 필요는 없습니다!
Get Me to the Cluster 에 설명된 솔루션은 실제로 4가지 구성 요소로 구성되어 있습니다.
이 다이어그램은 솔루션 아키텍처를 보여주며, 요청 처리 중에 데이터가 교환되는 순서가 아닌 솔루션 구성 요소가 통신하는 데 사용하는 프로토콜을 나타냅니다.
잘 정의된 구성 요소를 사용하여 솔루션을 구현하기 위해 협력함으로써 네트워크 및 애플리케이션 팀은 최적의 성능과 안정성을 쉽게 제공할 수 있습니다.
당사의 솔루션은 최신 네트워킹 도구, 프로토콜 및 기존 아키텍처를 사용합니다. 비용이 저렴하고 구현, 관리, 지원이 쉽도록 설계되어 팀 간의 연결과 소통이 용이해집니다.
코드가 실행되는 모습을 보고 솔루션을 배포하는 방법을 단계별로 알아보려면 Get Me to the Cluster를 무료로 다운로드하세요 .
"이 블로그 게시물에는 더 이상 사용할 수 없거나 더 이상 지원되지 않는 제품이 참조될 수 있습니다. 사용 가능한 F5 NGINX 제품과 솔루션에 대한 최신 정보를 보려면 NGINX 제품군을 살펴보세요. NGINX는 이제 F5의 일부가 되었습니다. 이전의 모든 NGINX.com 링크는 F5.com의 유사한 NGINX 콘텐츠로 리디렉션됩니다."