Terraform에서 생성한 클라이언트의 자동 등록
Terraform에서 생성한 새 클라이언트는 SUSE Manager에 자동으로 등록될 수 있습니다. 등록은 다음의 두 가지 방법으로 수행할 수 있습니다.
-
cloud-init
기반 등록 -
원격 실행 제공자 기반 등록
1. cloud-init
기반 클라이언트 등록
cloud-init
를 활용하여 등록하는 방법은 새로 생성된 가상 머신을 자동으로 등록하는 기본 방법입니다. 이 솔루션은 호스트에 대한 SSH 연결 구성을 방지합니다. 클라이언트 생성에 사용된 도구와 상관없이 사용할 수도 있습니다.
사용자는 SUSE Manager에 머신을 자동으로 등록하기 위해 Terraform으로 이미지를 배포할 때 사용자 데이터 세트를 전달할 수 있습니다. user_data
는 부트스트랩에서 한 번만 실행되며 시스템이 처음 시작될 때만 실행됩니다.
cloud-init
를 사용하여 클라이언트를 등록하기 전 사용자는 다음을 구성해야 합니다.
-
부트스트랩 스크립트입니다. 자세한 내용은 부트스트랩 스크립트로 클라이언트 등록에서 확인할 수 있습니다.
-
활성화 키입니다. 자세한 내용은 활성화 키에서 확인할 수 있습니다.
다음 명령은 부트스트랩 스크립트를 다운로드하고 새 머신이 생성될 때 등록하며, cloud-init
구성에 추가해야 합니다.
curl -s http://hub-server.tf.local/pub/bootstrap/bootstrap-default.sh | bash -s
프로비저닝을 변경하기 위해 |
AWS 기반 cloud-init
에 대한 자세한 내용은 https://registry.terraform.io/providers/hashicorp/template/latest/docs/data-sources/cloudinit_config에서 확인할 수 있습니다.
cloud-init
예제는 https://registry.terraform.io/providers/hashicorp/cloudinit/latest/docs/data-sources/cloudinit_config#example-usage에서 확인할 수 있습니다.
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에서 확인할 수 있습니다.