728x90

AKS(Azure Kubernetes Service) 실습

들어가며

  • AKS(Azure Kubernetes Service)를 실습해보자.
  • 이번 실습은 MS Learn AKS 자습서를 토대로 진행하였다.
  • 이 글은 도커 설치 게시(https://dev-astra.tistory.com/391)에 이어서 진행된다. (실습 전, 우분투 VM에 도커를 미리 설치한다.)

 

Azure ACR and AKS - Integration ⓒ https://stacksimplify.com

 

실습하기

AKS를 위한 애플리케이션 준비하기

애플리케이션 코드 가져오기

  • 다음 명령을 실행하여 애플리케이션 예제를 개발 환경에 복제한다. 그리고 파일 목록을 확인한 후, 복제된 디렉터리에 진입한다. 그리고 내부의 파일 목록을 확인해본다.
$ git clone https://github.com/Azure-Samples/azure-voting-app-redis.git

 

컨테이너 이미지 만들기

  • 우선, 다음 명령을 실행하여 @docker-compise@ 패키지를 설치해준다.
$ sudo apt-get install docker-compose

 

  • 그리고 다음 명령을 실행한다. 이 명령은 샘플 @docker-compose.yaml@ 파일을 사용하여 컨테이너 이미지를 만들고, @Redis@ 이미지를 다운로드하고, 애플리케이션을 시작한다.
$ docker-compose up -d
docker-compose.yaml 파일 내부의 모습
docker-compose up -d 명령을 실행한 후의 모습
  • 다음 명령을 실행하여 도커에서 실행 중인 이미지들을 확인해본다.
$ docker images

'azure-vote-front' 이미지와 'redis' 이미지를 확인할 수 있다.

 

  • 다음 명령을 실행하여 도커에서 실행 중인 프로세스들을 확인해본다.
$ docker ps

 

  • 애저 포털에서 생성한 우분투 가상 머신공용 IP 주소와 터미널에서 @docker ps@ 명령을 실행해 확인한 포트 번호를 이용하여 로컬 PC의 웹 브라우저 검색창을 통해 접속해본다.
애저에서 보안을 위해 기본적으로 막아 놓았기 때문에, 접속이 되지 않는다.
 
  • 해당 주소로 접속하려면 @8080@ 포트에 대해서 접속을 허가해주는 작업을 해주어야 한다. 애저 포털우분투 가상머신 리소스 페이지로 진입한다. 그리고 @[네트워킹]@ 탭을 클릭한다. 그리고 @[인바운드 포트 규칙 추가]@ 버튼을 누른다.
    • 인바운드 : 가상머신으로 들어오는 트래픽
      • 클라우드는 기본적으로 인바운드 트래픽에 대해서는 비용을 청구하지 않는다.
    • 아웃바운드 : 가상머신에서 나오는 트래픽

 

  • @[서비스]@는 @Custom@으로, @[대상 포트 범위]@는 @8080@으로 설정해준다. 그리고 @[추가]@ 버튼을 클릭한다.

 

  • 들어온 요청이 밖으로도 나갈 수 있도록 '아웃바운드 포트 규칙' 또한 만들어준다.
  • @[아웃바운트 포트 규칙]@ 탭을 클릭한 후, @[아웃바운드 포트 규칙 추가]@ 버튼을 클릭한다.

 

 

  • @[우선 순위]@를 @300@번 정도로 입력한 후, @[추가]@ 버튼을 클릭한다.

 

로컬에서 애플리케이션 테스트해보기

  • 다시 웹 브라우저에서 IP 주소포트 번호를 이용하여 접속해본다. 성공적으로 접속되는 것을 확인할 수 있다.

 

리소스 정리하기

  • 다음 명령을 실행하면 컨테이너 인스턴스 및 리소스를 중지하고 제거한다.
$ docker-compose down

 

  • 다음 명령들을 실행하여 도커에서 실행 중인 이미지와 컨테이너들을 확인해본다.

컨테이너는 메모리에서 내려갔고, 이미지 파일만 남은 것을 확인할 수 있다. (서비스가 다운(Down)되었다.)

 

  • 다시 서비스를 키고 싶으면 @docker-compose up -d@ 명령을 실행하면 된다.
$ docker-compose up -d

 

애저 컨테이너 레지스트리(ACR; Azure Container Registry) 만들기

  • 애저(Azure) 안에서 도커의 이미지를 저장하고 관리해주는 것이 ACR(Azure Container Registry)이다.

 

Azure CLI 설치하기

  • Azure CLI를 이용하여 작업을 진행할 것이기 때문에 다음 명령을 실행하여 Azure CLI를 설치해준다.
$ curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash

 

  • 설치가 완료된 후, 다음 명령을 실행하여 제대로 설치가 되었는지 확인한다.
$ az --version

 

  • 다음 명령을 실행하여 애저(Azure)에 로그인을 한다. 터미널에서 접속해야 할 URL인증 코드를 보여준다. 로컬 PC의 웹 브라우저의 검색창에 입력하여 인증 코드를 입력한다. 인증 및 로그인에 성공하면 구독 정보가 표시된다.
$ az login
 

 

  • 참고로 다음의 명령을 실행하면, 리소스 그룹 목록을 확인할 수 있다.
$ az group list
$ az group --output table
$ az group list --output table | grep <리소스그룹이름>    # <리소스그룹이름> 조회
$ az group list --output table > a.txt    # 리소스 그룹 목록을 a.txt 파일에 저장

 

  • 리눅스에 Azure CLI 설치하는 것과 관련된 자세한 내용은 아래의 공식 문서를 참고한다.
 

Linux에 Azure CLI 설치

Linux에서 Azure CLI를 수동으로 설치하고 실행하는 방법을 알아봅니다. 하나의 명령 또는 단계별 프로세스를 통해 Linux 컴퓨터에 Azure CLI를 설치할 수 있습니다.

learn.microsoft.com

 

ACR 만들기

  • 다음 명령을 실행하여 ACR을 생성한다.
    • @--resource-group@ 옵션을 통해 ACR을 생성할 리소스 그룹의 이름을 설정해준다.
    • @--name@ 옵션을 통해 생성할 ACR의 이름을 설정해준다.
    • @--sku@ 옵션을 통해 생성하려는 대상의 스펙을 설정해준다. 기본(@Basic@)으로 설정해준다.
$ az acr create --resource-group RG111 --name labuser111acr --sku Basic

생성 결과가 JSON 형태로 출력된다.

 

  • 애저 포털에서 본인의 리소스 그룹 페이지(@RG111@)에서 ACR이 제대로 생성되었는지 확인해보자.

이름이 labuser111인 ACR이 생성된 것을 확인할 수 있다.

 

ACR에 로그인하기

  • 다음 명령을 실행하여 생성한 ACR(@labuser111acr@)에 로그인을 해준다.
$ az acr login --name labuser111acr

로그인에 성공하면 'Login Succeeded'라는 안내문이 출력된다.

 

컨테이너 이미지 태그 지정하기

  • 다음 명령을 실행하여 현재 실행중인 이미지 목록을 확인한다.
$ docker images

 

  • 다음 명령을 실행하여 로그인 서버 주소를 얻는다.
$ az acr list --resource-group RG111 --query "[].{acrLoginServer:loginServer}" --output table

 

  • 다음 명령을 실행하여 태그를 지정한다. 컨테이너 레지스트리의 @acrLoginServer@ 주소를 사용하여 로컬 @azure-vote-front@ 이미지에 @v1@ 태그를 지정한다.
$ docker tag mcr.microsoft.com/azuredocs/azure-vote-front:v1 labuser111acr.azurecr.io/azure-vote-front:v1

 

ACR에 로컬 이미지 푸시하기

  • 다음 명령을 실행하여 로컬의 이미지를 ACR로 푸시한다.
$ docker push labuser111acr.azurecr.io/azure-vote-front:v1

 

ACR의 이미지 목록 확인하기

  • 다음 명령을 실행하여 ACR 안에 들어 있는 이미지 목록을 확인해본다.
$ az acr repository list --name labuser111acr.azurecr.io --output table

방금 ACR로 푸시한 azure-vote-front 이미지를 확인할 수 있다.

 

  • 다음 명령을 실행하여 로컬의 이미지 목록을 확인해본다.
$ docker images

두 이미지는 IMAGE ID가 같기 때문에 같은 파일이다.

 

  •  다음 명령을 실행하여 ACR에 업로드한 이미지의 태그를 확인해본다.
$ az acr repository show-tags --name labuser111acr.azurecr.io --repository azure-vote-front --output table

 

AKS(Azure Kubernetes Service) 클러스터 배포해보기

Kubernetes 클러스터 만들기

  • 다음 명령을 실행하여 AKS(Azure Kubernetes Service) 클러스터를 생성한다. 본인의 리소스 그룹(@RG111@)에 @labuser111aks@라는 AKS 클러스터를 만든다. (@westus3@ 지역에 배포한다.)
$ az aks create \
      --resource-group RG111 \
      --name labuser111aks \
      --node-count 2 \
      --generate-ssh-keys \
      --attach-acr labuser111acr \
      --location westus3
AKS를 생성하는 데 시간이 꽤 걸린다.
성공적으로 AKS가 생성되면 JSON 형태의 안내문이 출력된다.
  • 애저 포털의 본인의 리소스 그룹 페이지에서 AKS가 성공적으로 설치되었는지 확인한다.

성공적으로 AKS가 생성된 것을 확인할 수 있다. (labuser111aks)

 

  • 다음과 같은 별도의 리소스 그룹 도한 AKS를 만드는 과정에서 생성된다. 이 리소스들을 자신의 그룹(@RG111@)으로 이동시킬 수 있다. 나중에는 각각의 리소스의 이름을 설정해서 관리해줘야 한다.

'공용 IP 주소'는 '부하 분산 장치'가 사용한다.
AKS를 만들 때 노드를 2개로 설정해주었기 때문에, 다음과 같이 VMSS 페이지에서 2개의 가상 머신(인스턴스)을 확인할 수 있다.

 

AKS는 내부적으로 VMSS(Virtual Machine Scale Set, 가상 머신 확장 집합)을 사용한다. VMSS는 워크로드가 부족할/충분할 때마다(급격한 트래픽 급증 등의 원인으로) 자동으로 컨테이너의 개수를 늘린다/줄인다. 트래픽을 나누어 주는 역할은 부하 분산기(Load Balancer)가 해준다. 

 

Kubernetes CLI 설치하기

  • 다음 명령을 실행하여 Kubernetes CLI를 설치한다.
$ sudo az aks install-cli

sudo 명령어를 넣지 않으면 '권한 없음' 문제로 설치할 수 없다. 명령을 실행할 때, sudo 명령어를 앞에 붙여준다.

 

@kubectl@을 사용하여 클러스터에 연결하기

  • 다음 명령을 실행하여 접속이 잘 되는지 확인해본다.
    • 옵션 중에서 @credentials@는 로그인 성공 시 발급 받는 문서와 같은 것이다.
$ az aks get-credentials --resource-group RG111 --name labuser111aks

 

  • 다음 명령을 실행하여 노드 목록을 확인해본다.
$ kubectl get nodes

VMSS로 만들어진 가상 머신 2개를 확인할 수 있다.

 

AKS(Azure Kubernetes Service)에서 애플리케이션 실행하기

매니페스트 파일 업데이트하기

  • Git에서 복제해온 디렉터리(@azure-voting-app-redis@)로 진입한 후 파일 목록을 확인한다.
$ cd azure-voting-app-redis

 

  • 다음 명령을 실행하여 ACR 로그인 서버 이름을 가져온다.
$ az acr list --resource-group RG111 --query "[].{acrLoginServer:loginServer}" --output table

 

  • 다음 명령을 실행하여 매니페스트 파일(@azure-vote-all-in-one-redis.yaml@)을 수정한다.
$ vi azure-vote-all-in-one-redis.yaml

 

원본 내용
apiVersion: apps/v1
kind: Deployment
metadata:
  name: azure-vote-back
spec:
  replicas: 1
  selector:
    matchLabels:
      app: azure-vote-back
  template:
    metadata:
      labels:
        app: azure-vote-back
    spec:
      nodeSelector:
        "beta.kubernetes.io/os": linux
      containers:
      - name: azure-vote-back
        image: mcr.microsoft.com/oss/bitnami/redis:6.0.8
        env:
        - name: ALLOW_EMPTY_PASSWORD
          value: "yes"
        ports:
        - containerPort: 6379
          name: redis
---
apiVersion: v1
kind: Service
metadata:
  name: azure-vote-back
spec:
  ports:
  - port: 6379
  selector:
    app: azure-vote-back
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: azure-vote-front
spec:
  replicas: 1
  selector:
    matchLabels:
      app: azure-vote-front
  strategy:
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 1
  minReadySeconds: 5
  template:
    metadata:
      labels:
        app: azure-vote-front
    spec:
      nodeSelector:
        "beta.kubernetes.io/os": linux
      containers:
      - name: azure-vote-front
        image: mcr.microsoft.com/azuredocs/azure-vote-front:v1
        ports:
        - containerPort: 80
        resources:
          requests:
            cpu: 250m
          limits:
            cpu: 500m
        env:
        - name: REDIS
          value: "azure-vote-back"
---
apiVersion: v1
kind: Service
metadata:
  name: azure-vote-front
spec:
  type: LoadBalancer
  ports:
  - port: 80
  selector:
    app: azure-vote-front

 

수정 할 내용
  • @azure-vote-front@ 부분에서 @image@ 항목을 자신의 ACR 주소에 맞게 수정해준다.
apiVersion: apps/v1
kind: Deployment
metadata:
  name: azure-vote-back
spec:
  replicas: 1
  selector:
    matchLabels:
      app: azure-vote-back
  template:
    metadata:
      labels:
        app: azure-vote-back
    spec:
      nodeSelector:
        "beta.kubernetes.io/os": linux
      containers:
      - name: azure-vote-back
        image: mcr.microsoft.com/oss/bitnami/redis:6.0.8
        env:
        - name: ALLOW_EMPTY_PASSWORD
          value: "yes"
        ports:
        - containerPort: 6379
          name: redis
---
apiVersion: v1
kind: Service
metadata:
  name: azure-vote-back
spec:
  ports:
  - port: 6379
  selector:
    app: azure-vote-back
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: azure-vote-front
spec:
  replicas: 1
  selector:
    matchLabels:
      app: azure-vote-front
  strategy:
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 1
  minReadySeconds: 5
  template:
    metadata:
      labels:
        app: azure-vote-front
    spec:
      nodeSelector:
        "beta.kubernetes.io/os": linux
      containers:
      - name: azure-vote-front
        image: labuser111acr.azurecr.io/azure-vote-front:v1    # 본인의 ACR 주소 입력하기 
        ports:
        - containerPort: 80
        resources:
          requests:
            cpu: 250m
          limits:
            cpu: 500m
        env:
        - name: REDIS
          value: "azure-vote-back"
---
apiVersion: v1
kind: Service
metadata:
  name: azure-vote-front
spec:
  type: LoadBalancer
  ports:
  - port: 80
  selector:
    app: azure-vote-front
 

 

애플리케이션 배포하기

  • 다음 명령을 실행하여 매니페스트 파일(@azure-vote-all-in-one-redis.yaml@)을 배포한다. 
$ kubectl apply -f azure-vote-all-in-one-redis.yaml

 

애플리케이션 테스트하기

  • 다음 명령을 실행하여 실행 중인 서비스 목록을 확인해본다. 그리고 외부 IP 주소(@EXTERNAL-IP@)를 복사한다.
$ kubectl get service azure-vote-front --watch

watch 모드를 종료하려면 [Ctrl] + [C]를 누른다.

 

  • 복사한 외부 IP 주소 로컬 PC의 웹 브라우저 검색창에 넣고 접속해본다.

애플리케이션이 실제로 작동하는 모습을 볼 수 있다.

 

AKS(Azure Kubernetes Service)에서 애플리케이션 크기 조정하기

수동으로 Pod 크기 조정해보기

  • 다음 명령을 실행하여 Pod 수와 상태를 확인해본다.
$ kubectl get pod

 

  • 다음 명령을 실행하여 @azure-vote-front@ 클러스터의 Pod 수를 5개로 늘려본다.
$ kubectl scale --replicas=5 deployment/azure-vote-front

 

  • 다음 명령을 실행하여 Pod가 추가되었는지 확인해본다.
$ kubectl get pod

azure-vote-front Pod의 개수가 5개로 늘어난 것을 확인할 수 있다.

 

자동으로 Pod 크기 조정해보기

  • 다음 명령을 실행하여 AKS 클러스터의 버전을 확인한다.
$ az aks show --resource-group RG111 --name labuser111aks --query kubernetesVersion --output table

AKS 클러스터의 버전이 1.25.6 버전임을 확인할 수 있다.

 

  • 다음 명령을 실행하여 평균 CPU 사용률이 요청된 사용량의 50%를 초과하는 경우, 자동 크기 조정기가 최대 10개의 인스턴스까지 증가시킬 수 있도록 한다. 기본 Pod는 3개를 유지시킨다.
$ kubectl autoscale deployment azure-vote-front --cpu-percent=50 --min=3 --max=10

 

  • 다음 명령을 실행하여 자동 크기 조정기의 상태를 확인해본다.
$ kubectl get hpa

 

참고
  • 다음과 같이 자동 크기 조정기 동작 및 리소스 제한을 정의하는 @azure-vote-hpa.yaml@ 매니페스트 파일을 생성하여 적용시킬 수도 있다. 
apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
  name: azure-vote-back-hpa
spec:
  maxReplicas: 10 # define max replica count
  minReplicas: 3  # define min replica count
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: azure-vote-back
  targetCPUUtilizationPercentage: 50 # target CPU utilization

---

apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
  name: azure-vote-front-hpa
spec:
  maxReplicas: 10 # define max replica count
  minReplicas: 3  # define min replica count
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: azure-vote-front
  targetCPUUtilizationPercentage: 50 # target CPU utilization
$ kubectl apply -f azure-vote-hpa.yaml     # 자동 크기 조정기 매니페스트 파일을 적용

 

수동으로 AKS 노드 크기 조정해보기

  • 다음 명령을 실행하여 클러스터 노드의 크기를 3개로 조정해본다.
$ az aks scale --resource-group RG111 --name labuser111aks --node-count 3

 

  • 다음 명령을 실행하여 실행 중인 노드의 개수를 확인해본다.
$ kubectl get nodes

 

애플리케이션 업데이트 해보기

애플리케이션 업데이트하기

  • 다음 명령을 실행하여 @config_file.cfg@ 파일을 수정한다.
$ vi azure-vote/azure-vote/config_file.cfg

 

원본 내용
# UI Configurations
TITLE = 'Azure Voting App'
VOTE1VALUE = 'Cats'
VOTE2VALUE = 'Dogs'
SHOWHOST = 'false'

 

수정할 내용
# UI Configurations
TITLE = 'Azure Voting App'
VOTE1VALUE = 'Blue'     # 수정
VOTE2VALUE = 'Purple'   # 수정
SHOWHOST = 'false'

 

컨테이너 이미지 업데이트하기

  • 다음 명령을 실행하여 애플리케이션 이미지를 다시 만든다.
$ docker-compose up --build -d

 

로컬에서 애플리케이션 테스트하기

  • 업데이트된 컨테이너 이미지에 변경 내용이 적용되었는지 확인해보기 위해 웹 브라우저에서 공용 IP 주소 포트 번호를 통해 접속해본다.
    • 공용 IP 주소 : 애저 포털의 우분투 VM의 공용 IP 주소
    • 포트 번호 : @8080@

변경 내용이 적용된 것을 확인할 수 있다.

 

이미지에 태그를 지정하고 푸시하기

  • 업데이트된 이미지를 올바르게 사용하려면 @azure-vote-front@ 이미지에 ACR 레지스트리로그인 서버 이름을 태그로 지정해야 한다.
  • 다음 명령을 실행하여 로그인 서버 이름을 확인한다.
$ az acr list --resource-group RG111 --query "[].{acrLoginServer:loginServer}" --output table

 

  • 다음 명령을 실행하여 이미지에 태그를 지정한다. 이미지 버전을 @v2@로 업데이트한다.
$ docker tag mcr.microsoft.com/azuredocs/azure-vote-front:v1 labuser111acr.azurecr.io/azure-vote-front:v2

 

  • 다음 명령을 실행하여 ACR에 이미지를 업로드한다.
$ docker push labuser111acr.azurecr.io/azure-vote-front:v2

 

'unauthorized: authentication required' 와 같은 안내문이 출력되면, ACR에 로그인이 풀렸는지 확인한다. 'az acr login --name <azure container registry name>' 명령을 실행하여 ACR에 로그인을 해준다.

 

업데이트된 애플리케이션 배포하기

  • 다음 명령을 실행하여 실행 중인 Pod를 확인한다.
$ kubectl get pod

 

 

최대의 작동 시간을 제공하려면 애플리케이션의 Pod의 인스턴스가 여러 개 있어야 한다. 프런트 엔드의 Pod가 하나만 있는 경우, 'kubectl scale --replicas=3 deployment/azure-vote-front' 명령을 실행하여 Pod의 개수를 수동으로 3개로 늘려준다.

 

  •  다음 명령을 실행하여 애플리케이션을 업데이트해준다.
$ kubectl set image deployment azure-vote-front azure-vote-front=labuser111acr.azurecr.io/azure-vote-front:v2

 

  • 다음 명령을 실행하여 Pod의 목록을 확인해본다. 기존의 Pod 인스턴스가 종료되고 새로운 Pod 인스턴스가 실행되고 있는 것을 확인할 수 있다.
$ kubectl get pod

 

업데이트 된 애플리케이션 테스트해보기

  • 다음 명령을 실행하여 @azure-vote-front@서비스의 외부 IP 주소(@EXTERNAL IP@)를 가져온다. 그리고 복사한다.
$ kubectl get service azure-vote-front

 

  • 복사한 외부 IP 주소로컬 PC의 웹 브라우저 검색창에 입력하여 접속한다.

업데이트된 애플리케이션을 확인할 수 있다.

 

AKS(Azure Kubernetes Service)에서 Kubernetes 업그레이드 해보기

업그레이드 가능한 Kubernetes 버전 알아보기

  • 다음 명령을 실행하여 업그레이드 할 수 있는 Kubernetes 버전을 확인해본다.
$ az aks get-upgrades --resource-group RG111 --name labuser111aks

현재 버전은 1,25.6이며, 1.26.0, 1.26.3 버전으로 업그레이드 가능하다는 것을 확인할 수 있다. (upgrades 항목)

 

클러스터 업그레이드하기

  • 다음 명령을 실행하여 Kubernetes 클러스터를 1.26.3 버전으로 업그레이드 해본다.
$ az aks upgrade \
    --resource-group RG111 \
    --name labuser111aks \
    --kubernetes-version 1.26.3
여러 가지를 물어보는데 'y'를 눌러준다. 업데이트 하는데도 시간이 오래 걸린다.
업그레이드가 되면 JSON 형태로 결과가 출력된다.

 

 

업그레이드 이벤트 보기

  • 다음 명령을 실행하여 기본 네임스페이스에서 업그레이드 이벤트를 확인해본다.
$ kubectl get events

 

업그레이드 유효성 검사하기

  • 다음 명령을 실행하여 업그레이드가 성공했는지 확인해본다.
$ az aks show --resource-group RG111 --name labuser111aks --output table

업그레이드가 성공한 것을 확인할 수 있다.

 

클러스터 삭제하기

  • 다음 명령을 사용하여 클러스터를 삭제할 수 있다.
$ az group delete --name RG111 --yes --no-wait

 

참고 사이트

 

Azure의 Kubernetes 자습서 - 애플리케이션 준비 - Azure Kubernetes Service

이 AKS(Azure Kubernetes Service) 자습서에서는 Docker Compose를 사용하여 AKS에 배포할 수 있는 다중 컨테이너 앱을 준비하고 빌드하는 방법을 알아봅니다.

learn.microsoft.com

 

Azure의 Kubernetes 자습서 - 컨테이너 레지스트리 만들기 - Azure Kubernetes Service

이 AKS(Azure Kubernetes Service) 자습서에서는 Azure Container Registry 인스턴스를 만들고 애플리케이션 예제 컨테이너 이미지를 업로드합니다.

learn.microsoft.com

 

Azure의 Kubernertes 자습서 - 클러스터 배포 - Azure Kubernetes Service

이 AKS(Azure Kubernetes Service) 자습서에서는 AKS 클러스터를 만들고 kubectl을 사용하여 Kubernetes 마스터 노드에 연결합니다.

learn.microsoft.com

 

Azure의 Kubernertes 자습서 - 애플리케이션 배포 - Azure Kubernetes Service

이 AKS(Azure Kubernetes Service) 자습서에서는 Azure Container Registry에 저장된 사용자 지정 이미지를 사용하여 클러스터에 다중 컨테이너 애플리케이션을 배포합니다.

learn.microsoft.com

 

Azure의 Kubernetes 자습서 - 애플리케이션 크기 조정 - Azure Kubernetes Service

AKS(이 Azure Kubernetes Service) 자습서에서는 노드 및 Pod의 크기를 조정하고 수평 Pod 자동 크기 조정을 구현하는 방법을 알아봅니다.

learn.microsoft.com

 

Azure의 Kubernetes 자습서 - 애플리케이션 업데이트 - Azure Kubernetes Service

이 AKS(Azure Kubernetes Service) 자습서에서는 새 버전의 애플리케이션 코드를 사용하여 기존 애플리케이션 배포를 AKS로 업데이트하는 방법을 알아봅니다.

learn.microsoft.com

 

Azure의 Kubernetes 자습서 - 클러스터 업그레이드 - Azure Kubernetes Service

이 AKS(Azure Kubernetes Service) 자습서에서는 기존 AKS 클러스터를 최신 Kubernetes 버전으로 업그레이드하는 방법을 알아봅니다.

learn.microsoft.com

 

728x90