Kubernetes Service Type - ExternalName

Kubernetes는 애플리케이션을 컨테이너화하고 관리하는 강력한 도구입니다. 그 중에서도 Service는 클러스터 내의 애플리케이션을 네트워킹하는 데 중요한 역할을 합니다. Kubernetes 서비스는 ClusterIP, NodePort, LoadBalancer, ExternalName 네 가지 유형이 있습니다. 이번 글에서는 Kubernetes Service의 한 종류인 ExternalName에 대해 자세히 알아보겠습니다. ExternalName 이란? ExternalName 서비스는 Kubernetes 클러스터 외부의 서비스로 트래픽을 전달하는 특별한 서비스 유형입니다. 이 서비스는 Kubernetes 클러스터 외부의 도메인 이름(DNS)으로 트래픽을 라우팅하도록 구성됩니다. 즉, ExternalName 서비스는 외부 서비스에 대한 내부 DNS 엔트리를 생성하여 Kubernetes 클러스터 내의 애플리케이션이 외부 서비스를 쉽게 참조할 수 있게 해줍니다....

September 2, 2024 · Kai

AWS ECR Multi Architecture Images

Amazon Elastic Container Registry(AWS ECR)는 AWS에서 제공하는 container image를 저장하고 관리할 수 있는 서비스입니다. 이 서비스의 멀티 아키텍처(Multi-Architecture) 기능을 사용하면 서로 다른 CPU 아키텍처(예: x86, ARM 등)를 사용하는 시스템에서도 동일한 container image를 실행할 수 있습니다. 즉, 하나의 container image를 생성하면, 이를 다양한 하드웨어 환경에서 호환되게끔 지원해 주는 기능을 제공한다는 의미입니다. 이를 통해 개발자는 하나의 이미지로 다양한 환경을 지원할 수 있어 운영 효율성이 높아집니다. 아래의 예제에서는 Docker 명령어를 사용하였습니다. AWS ECR Multi Architecture Image Build (buildx) Multi Architecture Image를 빌드하는 첫 번째 방법은 Docker Buildx 명령어를 사용하는 것입니다....

August 16, 2024 · Kai

Kubernetes Service Type - Loadbalancer

Kubernetes는 애플리케이션을 컨테이너화하고 관리하는 강력한 도구입니다. 그 중에서도 Service는 클러스터 내의 애플리케이션을 네트워킹하는 데 중요한 역할을 합니다. Kubernetes 서비스는 ClusterIP, NodePort, LoadBalancer, ExternalName 네 가지 유형이 있습니다. 이번 글에서는 Kubernetes Service의 한 종류인 Loadbalancer에 대해 자세히 알아보겠습니다. LoadBalancer란? LoadBalancer 타입은 퍼블릭 클라우드 환경에서 사용할 수 있으며, 클라우드 환경의 로드 밸런서를 생성하여 외부 트래픽을 Kubernetes 클러스터 내부의 서비스로 라우팅하는 데 사용됩니다. 이러한 로드 밸런서는 클러스터 외부에서 접근할 수 있는 IP 주소와 포트를 제공하여 외부 트래픽을 내부 서비스로 효율적으로 분배합니다....

July 25, 2024 · Kai

Argo Rollouts (2) - Blue/Green 배포

앞선 포스트에서 Argo Rollouts를 설치하고 간단한 예시를 통해 배포 전략이 적용되는 모습을 확인해보았습니다. .spec.strategy 필드를 통하여 간단한 배포 전략을 설정하고 실제 배포를 진행했는데요. Argo Rollouts는 필요에 따라 해당 필드를 다양하게 세팅하여 사용할 수 있습니다. 대표적인 방식으로 Blue/Green 배포 전략의 적용이 있습니다. Blue/Green 배포 1 apiVersion: argoproj.io/v1alpha1 kind: Rollout metadata: name: rollout-bluegreen spec: replicas: 5 revisionHistoryLimit: 1 selector: matchLabels: app: rollout-bluegreen template: metadata: labels: app: rollout-bluegreen spec: containers: - name: nginx image: nginx:1....

July 21, 2024 · Daram

Kubernetes Service Type - NodePort

Kubernetes는 애플리케이션을 컨테이너화하고 관리하는 강력한 도구입니다. 그 중에서도 Service는 클러스터 내의 애플리케이션을 네트워킹하는 데 중요한 역할을 합니다. Kubernetes 서비스는 ClusterIP, NodePort, LoadBalancer, ExternalName 네 가지 유형이 있습니다. 이번 글에서는 Kubernetes Service의 한 종류인 NodePort에 대해 자세히 알아보겠습니다. NodePort란? NodePort는 클러스터 외부에서 Kubernetes 클러스터 내부로 트래픽을 전달할 수 있는 가장 간단한 방법 중 하나입니다. NodePort는 클러스터의 각 노드에서 고정된 포트를 열어, 이 포트를 통해 외부 트래픽을 특정 POD로 라우팅합니다. 주요 특징 NodePort는 Kubernetes 클러스터 내 노드의 특정 포트(30000-32767)를 열어 트래픽을 수신합니다....

July 16, 2024 · Kai