Mesh CLI를 사용하여 인프라 리소스 등록하기

인프라 리소스를 등록하려면 애플리케이션이 실행되고 있는 클라우드 및 온프레미스 인프라에 대한 세부 정보를 Mesh 에 제공해야 합니다. CLI를 사용하여 등록할 수 있습니다.

또는 자동 검색을 통해 인프라 리소스를 등록할 수도 있습니다. 자동 검색을 통한 등록에 대한 자세한 내용은 클라우드 인프라 검색하기를 참조하세요.

전제조건

자세한 내용은 CLI 설치하기를 참조하세요.

개요

인프라 리소스에는 계층 구조가 있으며 가장 광범위한 것부터 가장 구체적인 것까지 순서대로 리소스를 등록해야 합니다.

  • 클라우드
    • 위치
    • 가상 프라이빗 클라우드 (vpc)
      • securitygroup
    • 클러스터
      • 네임스페이스
    • 노드 (가상 머신 또는 베어메탈)

배치 환경은 Mesh 가 VPC (Virtual Private Cloud), 클러스터 및 노드에 사용하는 추상적인 용어입니다. 파티션은 네임스페이스 및 보안 그룹에 대한 추상적인 용어입니다. 인프라 등록의 기본 목적은 애플리케이션이 실행되는 배치 환경 및 파티션을 설명하는 것입니다.

클라우드 등록

Mesh 에서 연결할 애플리케이션이 포함된 각 클라우드를 등록하십시오. 클라우드를 등록하려면 palmctl create cloud 명령을 사용합니다.

클라우드 리소스를 등록하기 전에 검색된 리소스를 기본 인프라 그룹( Default_Infrastructure_Group)에 배치할지 아니면 다른 리소스 그룹에 배치할지 결정하세요.

검색된 리소스를 Default_Infrastructure_Group 에 넣으려면 다음 환경 변수를 설정합니다:
RESOURCE_GROUP_ID='default-infra'

검색된 리소스를 다른 리소스 그룹에 넣으려면 다음 단계를 완료하세요:

  • 리소스 그룹을 만듭니다. 자세한 내용은 리소스 그룹을 참조하세요.
  • palmctl create cloud 명령을 실행한 후 출력에서 resource_id 필드의 값을 확인합니다. 셸 변수 RESOURCE_GROUP_ID 값을 resource_id 값으로 설정합니다.

AWS 클라우드를 등록하려면 다음과 같은 명령을 실행합니다:

cat << EOM | palmctl create cloud -f -
name: AWS
type: AWS
is_private: false
EOM
  • name 필드의 값은 고유한 경우 어떤 한야 합니다.
  • type 의 유효한 값은 다음과 같습니다: IBM, AWS, GCP, Azure, other 입니다.
    참고: other 유형의 클라우드에서는 자동 검색을 실행할 수 없습니다.
  • 모든 온프레미스 데이터 센터를 나타내려면 다음 값을 설정합니다:
    • typeother 로 설정하십시오.
    • is_privatetrue 로 설정하십시오.
  • 리소스 그룹 ID가 지정되지 않았으므로 검색된 리소스는 Default_Infrastructure_Group 에 배치됩니다.

환경 변수를 사용하여 클라우드를 등록하고 자동 검색을 사용 설정하고 비밀 번호를 제공하려면 다음과 같은 명령을 실행하세요:

cat << EOM | palmctl create cloud -f -
name: $CLOUD_TYPE
type: $CLOUD_TYPE
auto_discover: true
credentials_key: my-${CLOUD_TYPE}-cloud-secret
resource_group_id: $RESOURCE_GROUP_ID
EOM

클라우드 위치 등록

애플리케이션이 포함된 각 클라우드 내의 각 위치를 등록하십시오. 알려진 퍼블릭 클라우드 위치 중 하나인 경우 위치를 등록하는 것이 더 쉽습니다. 먼저 palmctl get cloudlocations 를 실행하여 퍼블릭 클라우드 위치를 나열하고 사용자의 위치에 해당하는 클라우드 위치의 code 필드를 기록하십시오. 그런 다음 위치를 등록할 때 cloud_location_code 필드에서 해당 코드를 사용하십시오.

기존 퍼블릭 클라우드 위치와 연관된 위치를 등록하는 예:

cat << EOM | palmctl create location --cloud-name AWS -f -
name: AWS-east
cloud_location_code: abcdef
is_multi_zone: true
EOM

기존 퍼블릭 클라우드 위치 (일반적으로 온프레미스 데이터 센터) 와 연관되지 않은 위치를 등록할 때 추가 필드를 지정하십시오.

기존 퍼블릭 클라우드 위치와 연관되지 않은 위치를 등록하는 예:

cat << EOM | palmctl create location --cloud-name OnPrem -f -
name: Factory-CA
type: region
is_multi_zone: false
city: Los Angeles
region: California
country: United States
geo_coordinates: -118.4068,34.1139
EOM
참고:
  • type 필드의 올바른 값은 site, region, zone입니다.
  • geo_coordinates 필드의 좌표는 경도, 위도 순으로 표시됩니다.

VPC 등록

애플리케이션을 포함하는 각 VPC를 등록하십시오. VPC는 배치 환경 자체이거나 (예: VPC의 가상 머신 (VM) 에 애플리케이션이 있음) Kubernetes 클러스터의 컨테이너일 수 있습니다. 두 경우 모두 등록해야 합니다. infra_only 필드를 사용하여 두 케이스를 구별하십시오. 예를 들어,

cat << EOM | palmctl create securitygroup --cloud-name AWS --vpc-name 'myvpc' -f -
name: security group 1
EOM

Kubernetes 클러스터 등록

애플리케이션을 실행 중인 각 클러스터를 등록하십시오. api_end_point, credentials_keyauto_discover: true 가 지정된 경우 Mesh 는 클러스터에서 실행 중인 네임스페이스 및 애플리케이션을 자동으로 발견합니다. 예를 들어,

cat << EOM | palmctl create cluster --cloud-name AWS -f -
name: myEKS
location_id: <resource_id from previous command>
type: EKS
is_multi_zone: true
api_end_point: https://mycloud.com/cluster1
credentials_key: /path/to/key/in/SM
auto_discover: true
EOM
중요 : Mesh 에서 생성한 클러스터의 이름은 IBM Cloud® 또는 AWS 에 배포한 클러스터의 이름과 일치해야 합니다.

클러스터 네임스페이스 등록

클러스터를 등록할 때 자동 감지를 구성하지 않은 경우 애플리케이션을 실행 중인 클러스터에 각 네임스페이스를 등록하십시오. 예를 들어,

cat << EOM | palmctl create namespace --cloud-name AWS --cluster-name myEKS -f -
name: namespace 1
EOM

노드 등록

애플리케이션을 실행 중이고 VPC 외부에 있는 VM의 경우 노드 리소스를 등록하십시오. 예를 들어,

cat << EOM | palmctl create node --cloud-name AWS -f -
name: myVM
location_id: <resource_id from previous command>
type: VM
EOM

palmctl 명령에 대한 도움말에 액세스하기

인프라 리소스를 보거나 수정 또는 삭제할 때 다음 명령을 사용하여 도움말 정보를 얻으세요:

palmctl get -h
palmctl update -h
palmctl delete -h