실행 전 검사 이해

베어메탈용 GKE에서는 다음과 같은 다양한 상황에서 프리플라이트 검사를 실행할 수 있습니다.

  • 베어메탈용 GKE는 bmctl을 사용하여 관리자, 하이브리드, 독립형, 사용자 클러스터와 노드 풀 리소스를 만들거나 업데이트할 때 프리플라이트 검사를 실행합니다. 검사에 실패하면 아무것도 변경되지 않습니다. 이러한 검사를 우회할 수도 있습니다.
  • 또한 베어메탈용 GKE는 관리자 또는 하이브리드 클러스터의 사용자 클러스터에 Kubernetes 리소스를 적용할 때 내부 프리플라이트 내부 검사도 수행합니다. 검사는 변경사항이 영향을 받는 사용자 클러스터에 실제로 적용되기 전에 실행됩니다. 검사에 실패하면 아무것도 변경되지 않습니다. 이러한 검사를 우회하거나 명시적으로 실행할 수도 있습니다.

bmctl을 사용하여 클러스터 생성을 위한 실행 전 검사

bmctl 명령어로 관리자, 하이브리드, 독립형, 사용자 클러스터를 만들 때 베어메탈용 GKE는 프리플라이트 검사를 자동으로 수행합니다.

검사가 통과하면 베어메탈용 GKE에서 클러스터를 만듭니다.

자동화된 실행 전 검사의 결과 무시

이러한 자동화된 실행 전 점검을 우회하려는 경우 명령어에서 --force 플래그 옵션을 사용합니다.

실행 전 검사 독립적으로 실행

클러스터를 만들기 전에 실행 전 검사를 자체적으로 실행할 수도 있습니다. 이를 통해 머신 및 노드 리소스가 검사를 통과하도록 하면 시간을 절약할 수 있습니다.

  • 다음 명령어는 지정된 클러스터 구성 파일의 유효성을 검사하지만 클러스터 자체를 만들려고 시도하지 않습니다.

    bmctl check config --cluster CLUSTER_NAME
    

    CLUSTER_NAME을 구성 파일을 확인할 클러스터의 이름으로 바꿉니다.

  • 다음 명령어는 머신 및 네트워크가 클러스터를 만들 준비가 되었는지 확인합니다.

    bmctl check preflight --cluster CLUSTER_NAME
    

    CLUSTER_NAME을 확인할 클러스터의 이름으로 바꿉니다.

최신 실행 전 검사 및 상태 점검 실행

시스템에서 프리플라이트 검사를 수행할 수 있습니다. 프리플라이트 검사는 머신 및 네트워크가 클러스터를 만들 준비가 되었는지 확인합니다. 다음 명령어는 최신 검사 목록을 사용하여 머신 및 네트워크가 클러스터를 만들 준비가 되었는지 확인합니다.

bmctl check preflight --cluster CLUSTER_NAME --check-image-version latest

CLUSTER_NAME을 확인할 클러스터의 이름으로 바꿉니다.

또한 실제 클러스터의 상태 점검을 수행하여 클러스터가 정상인지 확인할 수 있습니다. 실제 클러스터에서 최신 상태 점검을 수행하려면 다음 명령어를 실행합니다.

bmctl check cluster --cluster CLUSTER_NAME --check-image-version latest

CLUSTER_NAME을 확인할 클러스터의 이름으로 바꿉니다.

업그레이드 실행 전 검사

bmctl check preflight 명령어를 사용하면 클러스터를 업그레이드하기 전 실행 전 검사를 수행할 수 있습니다. 업그레이드를 시작하기 전 다음 실행 전 검사 명령어를 실행하여 클러스터의 업그레이드 준비 상태를 확인할 수 있습니다.

  1. 클러스터 구성 파일에서 클러스터 버전(anthosBareMetalVersion)을 업데이트합니다.
  2. 다음 명령어를 사용하면 클러스터의 업그레이드 준비 상태를 확인하고 실행 전 검사를 수행할 수 있습니다.

    bmctl check preflight --kubeconfig ADMIN_CLUSTER_KUBECONFIG_PATH
     -c CLUSTER_NAME
    

    다음을 바꿉니다.

    • CLUSTER_NAME: 업그레이드할 클러스터의 이름입니다.
    • ADMIN_CLUSTER_KUBECONFIG_PATH: 관리자 클러스터 kubeconfig 파일의 경로입니다.

    업그레이드에 대한 bmctl check preflight는 원래 클러스터가 버전 1.13.1 이상일 때 작동합니다.

    관리자 또는 사용자 클러스터 업그레이드를 테스트하기 위해 이 명령어로 실행 전 검사를 만들면 관리자 클러스터에 PreflightCheck 커스텀 리소스가 생성됩니다.

사용자 클러스터 생성을 위한 실행 전 검사

기존 관리자 또는 하이브리드 클러스터로부터 사용자 클러스터가 생성됩니다. 베어메탈용 GKE는 항목을 변경하기 전 프리플라이트 검사를 자동으로 수행합니다. 또한 클러스터를 만들기 전 bmctl로 실행 전 검사를 수행할 수 있습니다.

  • 다음 명령어는 지정된 클러스터 구성 파일의 유효성을 검사하지만 클러스터 자체를 만들려고 시도하지 않습니다.

    bmctl check config --cluster CLUSTER_NAME --admin-kubeconfig ADMIN_KUBECONFIG_PATH
    

    CLUSTER_NAME을 확인하려는 사용자 클러스터의 이름으로 바꾸고 ADMIN_KUBECONFIG_PATH를 연결된 관리자 클러스터의 kubeconfig 파일 경로로 바꿉니다.

  • 다음 명령어는 머신 및 네트워크가 클러스터를 만들 준비가 되었는지 확인합니다.

    bmctl check preflight --cluster CLUSTER_NAME --admin-kubeconfig ADMIN_KUBECONFIG_PATH
    

bmctl--kubeconfig--admin-kubeconfig 플래그의 별칭으로 사용하도록 지원합니다.

기존 클러스터의 실행 전 내부 검사

베어메탈용 GKE는 또한 기존 클러스터에 Kubernetes 리소스를 적용할 때 내부 프리플라이트 검사를 수행합니다. 검사에 실패할 경우 특별히 검사를 우회하지 않은 한 베어메탈용 GKE은 관련 노드를 변경하지 않습니다.

Kubernetes 리소스 적용 시 실행 전 검사 우회

기존 클러스터에 리소스를 적용할 때 실행 전 내부 검사를 무시하려면 클러스터 YAML 파일에서 BypassPreflightCheck 필드를 true로 설정해야 합니다.

다음은 true로 설정된 bypassPreflightCheck 필드를 보여주는 클러스터 구성 YAML 파일의 조각입니다.

# Sample cluster config to bypass preflight check errors:

apiVersion: v1
kind: Namespace
metadata:
  name: cluster-user1
---
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
  name: user1
  namespace: cluster-user1
spec:
  type: user
  bypassPreflightCheck: true
  # Anthos cluster version.
  anthosBareMetalVersion: 1.14.11
....

설치 실행 전 검사 세부정보

프리플라이트 검사를 실행하면 베어메탈용 GKE는 다양한 운영체제, 소프트웨어, 머신의 기본 요건을 확인합니다.

자세한 내용은 설치 기본 요건 개요를 참조하세요.