인스턴스에 클러스터 네트워크 인터페이스 연결
인스턴스를 생성한 후에는 기존 클러스터 네트워크 인스턴스 서브넷에 연결할 수 있습니다. 또는, 연결할 서브넷 인스턴스를 생성하기 전에 먼저 클러스터 네트워크 인스턴스를 생성하여 네트워크를 계획할 수 있습니다.
시작하기 전에
- 계획 고려 사항과 알려진 문제를 검토합니다.
- 다음 단계를 모두 완료했는지 확인하십시오:
- 클러스터 네트워크가 존재하는지 확인하십시오. 자세한 내용은 클러스터 네트워크 생성을 참조하십시오.
- 클러스터 네트워크 서브넷을 생성합니다.
- 가상 서버 인스턴스를 생성합니다.
- 클러스터 네트워크 인터페이스를 생성합니다.
CLI, API 또는 Terraform을 사용하여 인스턴스에 클러스터 네트워크 인터페이스를 연결할 수 있습니다.
클라우드 플랫폼의 명령줄 인터페이스(CLI)를 통해 인스턴스에 클러스터 네트워크 인터페이스 연결하기
CLI에서 인터페이스를 인스턴스에 연결하려면 다음 단계를 따르십시오:
-
CLI 환경을 설정하십시오.
-
CLI에서 계정에 로그인하십시오. 비밀번호를 입력한 후, 시스템은 계정과 지역을 요청합니다:
ibmcloud login --sso -
인스턴스에 인터페이스를 연결하려면 다음 명령을 입력합니다:
ibmcloud is instance-cluster-network-attachments INSTANCE --cnac CLUSTER_NETWORK_ATTACHMENT여기서:
INSTANCE- 인스턴스의 ID 또는 이름입니다.
--output- 출력 형식을 지정합니다. JSON만 지원됩니다.
JSON중 하나입니다. -q,quiet- 상세 출력이 표시되지 않도록 합니다.
명령 예제
-
클러스터 네트워크 연결이 있는
my-ins-1인스턴스를 만들려면:ibmcloud is instance-create my-ins-1 cli-vpc us-south-2 fx3d-160c1792x9h100 cli-subnet --image ibm-ubuntu-20-04-6-minimal-amd64-5 --cluster-network-attachments '[{"name":"instance-cnac-1","cluster_network_interface":{"id":"7208-18204195-be40-4f12-aaaa-2649e19acb91"}},{"name":"instance-cnac-2","cluster_network_interface":{"id":"7208-cf6023a3-86c7-459f-84b8-536b4f812541"}},{"name":"instance-cnac-3","cluster_network_interface":{"id":"7208-2d55d27c-835c-4566-acbc-da36bcf49da7"}},{"name":"instance-cnac-4","cluster_network_interface":{"id":"7208-161e2919-c505-4e6d-bd49-88e7e0c0f1f3"}},{"name":"instance-cnac-5","cluster_network_interface":{"id":"7208-d700a40e-af61-45ee-b71a-a09203db76bd"}},{"name":"instance-cnac-6","cluster_network_interface":{"id":"7208-c7dbc8b9-6b47-4b83-8649-512e4e8f0a81"}},{"name":"instance-cnac-7","cluster_network_interface":{"id":"7208-f4773e40-49b5-4d44-8c68-7a75513bbf16"}},{"name":"instance-cnac-8","cluster_network_interface":{"id":"7208-46e097b5-c1ea-4669-aafd-7a4cc82d0e02"}}]' -
클러스터 네트워크 첨부 JSON 파일로 인스턴스
my-ins-2생성하려면:ibmcloud is instance-create my-ins-2 deceiving-strode-dimly-undesirable us-south-2 hx3d-160x1002x8h100 test-subnet --image ibm-ubuntu-20-04-6-minimal-amd64-5 --cluster-network-attachments @~/cnac.json
API를 사용하여 인스턴스에 클러스터 네트워크 인터페이스 연결
API를 사용하여 클러스터 네트워크 인터페이스를 인스턴스에 연결하려면 다음 단계를 따르십시오:
- 올바른 변수를 사용하여 API 환경을 설정하십시오.
- API 명령에 사용할 추가 변수를 저장하십시오. 예를 들어, 다음과 같습니다.
version (문자열): API 버전, 형식은 YYYY-MM-DD 입니다.
-
모든 변수가 시작되면 다음 명령을 입력하여 클러스터 네트워크 인터페이스를 인스턴스에 연결합니다:
curl -X POST "$vpc_api_endpoint/v1/instances/$instance_id/cluster_network_attachments?version=$today&generation=2" -H "Authorization: Bearer $iam_token" -d '{ "name": "my-cluster-network-attachment", "cluster_network_interface": { "id": "$cluster_network_interface_id" } }'
클러스터 네트워크 API의 전체 집합을 보려면 VPC API 참조를 참조 하세요.
Terraform을 사용하여 인스턴스에 클러스터 네트워크 인터페이스 연결하기
다음 예제는 Terraform을 사용하여 인스턴스 클러스터 네트워크 연결을 프로비저닝하는 예제입니다:
resource "ibm_is_instance_cluster_network_attachment" "is_instance_cluster_network_attachment_instance" {
instance = var.is_instance_cluster_network_attachment_instance_id
before {
# href = "https://us-south.iaas.cloud.ibm.com/v1/instances/5dd61d72-acaa-47c2-a336-3d849660d010/cluster_network_attachments/0767-fb880975-db45-4459-8548-64e3995ac213" // conflicts with id
id = "0767-fb880975-db45-4459-8548-64e3995ac213"
}
cluster_network_interface {
# id = var.is_cluster_network_interface_id // conflicts with other properties
auto_delete = var.is_cluster_auto_delete
name = var.is_cluster_name
subnet = var.is_cluster_subnet_id
primary_ip {
address = "192.168.3.4"
name = "my-cluster-subnet-reserved-ip-1"
}
}
name = var.is_instance_cluster_network_attachment_name
}