Terraform에서 생성한 클라이언트의 자동 등록
Terraform에 의해 생성된 새로운 클라이언트는 SUSE Multi-Linux Manager에 자동으로 등록될 수 있습니다. 등록은 두 가지 방법으로 달성할 수 있습니다:
-
cloud-init기반 등록 -
원격 실행 제공자 기반 등록
1. cloud-init 기반 클라이언트 등록
`cloud-init`을 활용하여 등록하는 것은 새로 생성된 가상 머신을 자동으로 등록하는 선호되는 방법입니다. 이 솔루션은 호스트에 대한 SSH 연결을 구성할 필요가 없습니다. 클라이언트 생성에 사용되는 도구와 관계없이 사용할 수 있습니다.
사용자는 Terraform으로 이미지를 배포할 때 사용자 데이터 세트를 전달하여 SUSE Multi-Linux Manager에 가상 머신을 자동으로 등록할 수 있습니다. `user_data`는 부팅 시 한 번만 실행되며, 해당 가상 머신이 처음 시작될 때만 실행됩니다.
`cloud-init`을 사용하여 클라이언트를 등록하기 전에 사용자는 다음을 구성해야 합니다:
-
부팅 스크립트. 자세한 내용은 부트스트랩 스크립트로 클라이언트 등록을 참조하십시오.
-
활성화 키. 자세한 내용은 활성화 키을 참조하십시오.
다음 명령은 부팅 스크립트를 다운로드하고 새로 생성된 가상 머신을 등록합니다.
다음은 cloud-init 구성에 추가되어야 합니다:
curl -s http://hub-server.tf.local/pub/bootstrap/bootstrap-default.sh | bash -s
|
프로비저닝 변경을 위해 `user_data`가 업데이트될 때마다, Terraform은 가상 머신을 제거한 후 새 IP 주소 등과 함께 다시 생성합니다. |
AWS에서의 `cloud-init`에 대한 자세한 내용은 https://registry.terraform.io/providers/hashicorp/template/latest/docs/data-sources/cloudinit_config.를 참조하십시오.
2. remote-exec 프로비저너 기반 등록
새로 생성된 가상 머신을 자동으로 등록하기 위한 두 번째 솔루션은 Terraform의 remote-exec 프로비저너를 사용합니다.
remote-exec 프로비저너는 새로 생성된 가상 머신과 상호작용합니다.
SSH 연결을 열고 해당 가상 머신에서 명령을 실행할 수 있습니다.
|
|
나머지 요구 사항은 cloud-init 기반 클라이언트 등록을 사용할 때와 동일합니다:
-
부팅 스크립트. 자세한 내용은 부트스트랩 스크립트로 클라이언트 등록을 참조하십시오.
-
활성화 키. 자세한 내용은 활성화 키을 참조하십시오.
다음 명령은 부팅 스크립트를 다운로드하고 새로 생성된 가상 머신을 등록합니다. 실행할 원격 명령으로 정의되어야 합니다:
curl -s http://hub-server.tf.local/pub/bootstrap/bootstrap-default.sh | bash -s
remote-exec 프로비저너에 대한 자세한 내용은 https://www.terraform.io/docs/provisioners/remote-exec.html.를 참조하십시오.