Harbor 레지스트리에 저장된 이미지를 사용하여 감독자 클러스터의 네임스페이스에 vSphere 포드를 배포할 수 있습니다.

사전 요구 사항

  • 애플리케이션을 배포하려는 네임스페이스와 이름이 동일한 Harbor 레지스트리의 프로젝트에 이미지를 푸시합니다. 내장된 Harbor 레지스트리로 이미지 푸시의 내용을 참조하십시오.
  • vspere-plugin.zip의 컨텐츠를 사용하는 환경의 실행 파일 경로에 추가합니다.

프로시저

  1. 다음 매개 변수를 포함하는 YAML 파일을 생성합니다.
    ...
    namespace: <namespace-name>
    ...
    spec:
    ...
    image: <image registry URL>/<namespace name>/<image name>
  2. 감독자 클러스터에 로그인합니다.
    kubectl vsphere login --server=https://<server_adress> --vsphere-username <your user account name>
  3. 애플리케이션을 배포하려는 네임스페이스로 전환합니다.
    kubectl config use-context <namespace>
  4. 해당 YAML 파일에서 vSphere 포드을 배포합니다.
    kubectl apply -f <yaml file name>.yaml
  5. 다음 명령을 실행하여 이미지를 Harbor 레지스트리에서 가져왔고 vSphere 포드의 상태가 실행 중인지 확인합니다.
    kubectl describe pod/<yaml name>

결과

생성한 YAML 파일은 네임스페이스에 따라 이름이 지정된 Harbor 레지스트리에서 프로젝트의 이미지를 사용하여 지정된 네임스페이스에 배포됩니다.

예:

Harbor 레지스트리에서 demoapp1 프로젝트의 busybox 이미지를 사용하여 demoapp1 네임스페이스에 다음 YAML 파일을 생성하고 배포합니다.

apiVersion: v1
kind: Pod
metadata:
  name: busybox
  namespace: demoapp1
spec:
  containers:
  - name: busybox
    image: <harbor_IP>/demoapp1/busybox:latest
    command:
      - sleep
      - "3600"
    imagePullPolicy: IfNotPresent
  restartPolicy: Always