

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 사용자 지정 도메인을 사용하도록 AWS OpsWorks for Chef Automate 서버 업데이트
<a name="opscm-update-server-custom-domain"></a>

**중요**  
AWS OpsWorks for Chef Automate는 2024년 5월 5일에 수명이 종료되었으며 신규 및 기존 고객 모두에서 비활성화되었습니다. 기존 고객은 Chef SaaS 또는 대체 솔루션으로 마이그레이션하는 것이 좋습니다. 질문이 있는 경우 [AWS re:Post](https://repost.aws/) 또는 [AWS Premium Support](https://aws.amazon.com/support)를 통해 AWS Support 팀에 문의할 수 있습니다.

이 섹션에서는 AWS OpsWorks for Chef Automate 서버 백업을 사용하여 새 서버를 생성하여 사용자 지정 도메인 및 인증서를 사용하도록 기존 서버를 업데이트하는 방법을 설명합니다. 기본적으로 백업에서 새 서버를 생성한 다음 사용자 지정 도메인, 인증서 및 프라이빗 키를 사용하도록 새 서버를 구성하여 기존 AWS OpsWorks for Chef Automate 2.0 서버를 복사합니다.

**Topics**
+ [사전 조건](#opscm-update-server-custom-domain-reqs)
+ [제한 사항](#opscm-update-server-custom-domain-limits)
+ [사용자 지정 도메인을 사용하도록 서버 업데이트](#opscm-update-server-custom-domain-howto)
+ [참고](#opscm-update-server-custom-domain-seealso)

## 사전 조건
<a name="opscm-update-server-custom-domain-reqs"></a>

다음은 사용자 지정 도메인 및 인증서를 사용하도록 기존 AWS OpsWorks for Chef Automate 서버를 업데이트하기 위한 요구 사항입니다.
+ 업데이트(또는 복사)하려는 서버에서 Chef Automate 2.0을 실행 중이어야 합니다.
+ 새 서버를 만드는 데 사용할 백업을 결정합니다. 업데이트하고자 하는 서버에 사용 가능한 백업이 하나 이상 있어야 합니다. 의 백업에 대한 자세한 내용은 단원을 AWS OpsWorks for Chef Automate참조하십시오[AWS OpsWorks for Chef Automate 서버 백업](opscm-chef-backup.md).
+ 백업 소스인 기존 서버를 만드는 데 사용한 서비스 역할 및 인스턴스 프로파일 ARN을 준비합니다.
+  AWS CLI의 최신 릴리스를 실행 중이어야 합니다. AWS CLI 도구 업데이트에 대한 자세한 내용은 *AWS 명령줄 인터페이스 사용 설명서*의 [설치를 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) 참조하세요.

## 제한 사항
<a name="opscm-update-server-custom-domain-limits"></a>

백업에서 새 서버를 생성하여 기존 서버를 업데이트하는 경우 새 서버는 기존 AWS OpsWorks for Chef Automate 서버와 정확히 동일할 수 없습니다.
+  AWS CLI 또는 [AWS SDKs](https://docs.aws.amazon.com/#sdks). AWS Management Console사용을 통해 백업에서 새 서버를 생성할 수 없습니다.
+ 새 서버는 계정 내, 그리고 AWS 리전 내에 있는 기존 서버와 동일한 이름을 사용할 수 없습니다. 이름은 백업 소스로 사용한 기존 서버와 달라야 합니다.
+ 기존 서버에 연결된 노드는 새 서버에서 관리하지 않습니다. 다음 중 하나를 수행해야 합니다.
  + 둘 이상의 Chef Automate 서버에서 노드를 관리할 수 없으므로 다른 노드를 연결합니다.
  + 기존 서버(백업 소스)에서 새 서버 및 새 사용자 지정 도메인 엔드포인트로 노드를 마이그레이션합니다. 노드를 마이그레이션하는 방법에 대한 자세한 내용은 Chef 설명서를 참조하세요.

## 사용자 지정 도메인을 사용하도록 서버 업데이트
<a name="opscm-update-server-custom-domain-howto"></a>

기존 Chef Automate 2.0 서버를 업데이트하려면 `create-server` 명령을 실행하고 백업, 사용자 지정 도메인, 사용자 지정 인증서 및 사용자 지정 프라이빗 키를 지정하는 파라미터를 추가하여 서버의 복사본을 만듭니다.

1. `create-server` 명령에서 지정할 수 있는 서비스 역할 또는 인스턴스 프로파일 ARN이 없는 경우 [를 사용하여 Chef Automate 서버 생성 AWS CLI](gettingstarted-opscm-create.md#gettingstarted-opscm-create-cli)의 1\$15단계를 수행하여 사용할 수 있는 서비스 역할 및 인스턴스 프로필을 만듭니다.

1. 아직 수행하지 않은 경우 사용자 지정 도메인이 있는 새 서버의 기반이 될 기존 Chef Automate 2.0 서버의 백업을 찾습니다. 다음 명령을 실행하여 계정 및 리전의 모든 AWS OpsWorks for Chef Automate 백업에 대한 정보를 표시합니다. 사용할 백업 ID를 적어 둡니다.

   ```
   aws opsworks-cm --region region name describe-backups
   ```

1. `create-server` 명령을 실행하여 AWS OpsWorks for Chef Automate 서버를 생성합니다.
   + `--engine` 값은 `ChefAutomate`, `--engine-model` 값은 `Single`, 그리고 `--engine-version` 값은 `12`입니다.
   + 서버 이름은 AWS 계정 내에서 각 리전 내에서 고유해야 합니다. 서버 이름은 문자로 시작해야 하며, 그 이후에는 문자, 숫자 또는 하이픈(-)을 사용할 수 있으며, 최대 길이는 40자입니다.
   + 1단계의 인스턴스 프로파일 ARN 및 서비스 역할 ARN을 사용합니다.
   + 유효한 인스턴스 유형은 `m5.large`, `r5.xlarge` 또는 `r5.2xlarge`입니다. 인스턴스 유형의 사양에 대한 자세한 내용은 *Amazon EC2 사용 설명서*의 [인스턴스 유형](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html)을 참조하세요.
   + `--engine-attributes` 파라미터는 선택 사항이며, 하나 또는 두 값을 모두 지정하지 않을 경우 서버 생성 프로세스에서 해당 값이 자동으로 생성됩니다. `--engine-attributes`를 추가할 경우 2단계에서 생성한 `CHEF_AUTOMATE_PIVOTAL_KEY` 값, `CHEF_AUTOMATE_ADMIN_PASSWORD` 또는 두 가지 모두를 지정합니다.

     `CHEF_AUTOMATE_ADMIN_PASSWORD`의 값을 설정하지 않으면 암호가 생성되어 `create-server` 응답의 일부로서 반환됩니다. 또한 콘솔에서 스타터 키트를 다시 다운로드할 수도 있습니다. 그러면 이 암호가 다시 생성됩니다. 암호 길이는 최소 8자이며, 최대 32자입니다. 암호는 문자, 숫자 및 특수 문자(`!/@#$%^+=_`)를 포함할 수 있습니다. 암호에는 소문자, 대문자, 숫자 및 특수 문자가 각각 1개 이상 포함되어야 합니다.
   + SSH 키 페어는 선택 사항이지만, Chef Automate 대시보드 관리자 암호를 재설정해야 하는 경우 Chef Automate 서버에 연결하는 데 도움이 될 수 있습니다. SSH 키 페어 생성에 대한 자세한 내용은 *Amazon EC2 사용 설명서*의 [Amazon EC2 키 페어](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html)를 참조하세요.
   + 사용자 지정 도메인을 사용하려면 명령에 다음 파라미터를 추가합니다. 그렇지 않은 경우 Chef Automate의 서버 생성 프로세스가 자동으로 엔드포인트를 생성합니다. 사용자 지정 도메인을 구성하려면 세 가지 파라미터 모두가 필요합니다. 이러한 파라미터 사용에 대한 추가 요구 사항에 대한 자세한 내용은 OpsWorks CM API 참조의 [CreateServer](https://docs.aws.amazon.com/opsworks-cm/latest/APIReference/API_CreateServer.html)를 참조하세요.
     + `--custom-domain` - 서버의 선택적 퍼블릭 엔드포인트(예: `https://aws.my-company.com`).
     + `--custom-certificate` - PEM 형식의 HTTPS 인증서. 값은 자체 서명된 단일 인증서 또는 인증서 체인일 수 있습니다.
     + `--custom-private-key` - HTTPS를 사용하여 서버에 연결하기 위한 PEM 형식의 프라이빗 키. 프라이빗 키는 암호화해서는 안 되며 암호로 보호할 수 없습니다.
   + 매주 시스템 유지 관리가 필요합니다. 유효한 값은 `DDD:HH:MM` 형식으로 지정해야 합니다. 지정한 시간은 협정 세계시(UTC)로 표시됩니다. `--preferred-maintenance-window`의 값을 지정하지 않으면 기본값은 화요일, 수요일 또는 금요일의 임의 한 시간입니다.
   + `--preferred-backup-window`의 유효 값은 `HH:MM`(매일 백업) 또는 `DDD:HH:MM`(매주 백업) 형식 중 하나로 지정해야 합니다. 지정한 시간은 UTC 형식입니다. 기본값은 임의 일일 시작 시간입니다. 자동 백업을 옵트아웃하려면 대신에 `--disable-automated-backup` 파라미터를 추가합니다.
   + `--security-group-ids`에는 공백으로 구분하여 하나 이상의 보안 그룹 ID를 입력합니다.
   + `--subnet-ids`에는 서브넷 ID를 입력합니다.
   + `--backup-id`에는 2단계에서 복사한 백업의 ID를 입력합니다.

   ```
   aws opsworks-cm create-server --engine "ChefAutomate" --engine-model "Single" --engine-version "12" --server-name "server_name" --instance-profile-arn "instance_profile_ARN" --instance-type "instance_type" --engine-attributes '{"CHEF_AUTOMATE_PIVOTAL_KEY":"pivotal_key","CHEF_AUTOMATE_ADMIN_PASSWORD":"password"}' --key-pair "key_pair_name" --preferred-maintenance-window "ddd:hh:mm" --preferred-backup-window "ddd:hh:mm" --security-group-ids security_group_id1 security_group_id2 --service-role-arn "service_role_ARN" --subnet-ids subnet_ID --backup-id backup_ID
   ```

   다음 예제에서는 사용자 지정 도메인을 사용하는 Chef Automate 서버를 만듭니다.

   ```
   aws opsworks-cm create-server --engine "ChefAutomate" --engine-model "Single" --engine-version "12" \
       --server-name "my-custom-domain-server" \
       --instance-profile-arn "arn:aws:iam::12345678912:instance-profile/aws-opsworks-cm-ec2-role" \
       --instance-type "m5.large" \
       --engine-attributes '{"CHEF_AUTOMATE_PIVOTAL_KEY":"MZZE...Wobg","CHEF_AUTOMATE_ADMIN_PASSWORD":"zZZzDj2DLYXSZFRv1d"}' \
       --custom-domain "my-chef-automate-server.my-corp.com" \
       --custom-certificate "-----BEGIN CERTIFICATE----- EXAMPLEqEXAMPLE== -----END CERTIFICATE-----" \
       --custom-private-key "-----BEGIN RSA PRIVATE KEY----- EXAMPLEqEXAMPLE= -----END RSA PRIVATE KEY-----" \
       --key-pair "amazon-test" \
       --preferred-maintenance-window "Mon:08:00" \
       --preferred-backup-window "Sun:02:00" \
       --security-group-ids sg-b00000001 sg-b0000008 \
       --service-role-arn "arn:aws:iam::12345678912:role/service-role/aws-opsworks-cm-service-role" \
       --subnet-ids subnet-300aaa00 \
       --backup-id MyChefServer-20191004122143125
   ```

1. AWS OpsWorks for Chef Automate 새 서버를 생성하는 데 약 15분이 걸립니다. `create-server` 명령의 출력에서 `Endpoint` 속성 값을 복사합니다. 다음은 예입니다.

   ```
   "Endpoint": "automate-07-exampleexample.opsworks-cm.us-east-1.amazonaws.com"
   ```

   `create-server` 명령의 출력을 무시하거나 셸 세션을 닫지 마십시오. 다시 표시되지 않는 중요 정보가 출력에 포함되어 있을 수도 있기 때문입니다. `create-server` 결과에서 암호 및 스타터 키트를 가져오려면 다음 단계로 이동합니다.

1. 에서 키와 암호를 AWS OpsWorks for Chef Automate 생성하도록 선택한 경우 [jq](https://stedolan.github.io/jq/)와 같은 JSON 프로세서를 사용하여 `create-server` 결과에서 사용 가능한 형식으로 추출할 수 있습니다. [jq](https://stedolan.github.io/jq/)를 설치한 후에는 다음 명령을 실행하여 중심 키, Chef Automate 대시보드 관리자 암호 및 스타터 키트를 추출할 수 있습니다. 3단계에서 고유의 중심 키 및 암호를 제공하지 않은 경우 추출한 중심 키 및 관리자 암호를 안전하면서 편리한 위치에 저장해야 합니다.

   ```
   #Get the Chef password:
   cat resp.json | jq -r '.Server.EngineAttributes[] | select(.Name == "CHEF_AUTOMATE_ADMIN_PASSWORD") | .Value'
   
   #Get the Chef Pivotal Key:
   cat resp.json | jq -r '.Server.EngineAttributes[] | select(.Name == "CHEF_AUTOMATE_PIVOTAL_KEY") | .Value'
   
   #Get the Chef Starter Kit:
   cat resp.json | jq -r '.Server.EngineAttributes[] | select(.Name == "CHEF_STARTER_KIT") | .Value' | base64 -D > starterkit.zip
   ```

1. 선택적으로 `create-server` 명령 결과에서 스타터 키트를 추출하지 않은 경우 AWS OpsWorks for Chef Automate 콘솔의 서버 속성 페이지에서 새 스타터 키트를 다운로드할 수 있습니다. 새 스타터 키트를 다운로드하면 Chef Automate 대시보드 관리자 암호를 재설정합니다.

1. 엔터프라이즈의 DNS 관리 도구에 CNAME 항목을 생성하여 사용자 지정 도메인이 4단계에서 복사한 AWS OpsWorks for Chef Automate 엔드포인트를 가리키도록 합니다. 이 단계를 완료해야 서버에 연결하거나 로그인할 수 있습니다.

1. 서버 생성 프로세스가 완료되면 [Starter Kit를 사용하여 Chef 서버 구성](opscm-starterkit.md) 단원을 진행합니다.

## 참고
<a name="opscm-update-server-custom-domain-seealso"></a>
+ [를 사용하여 Chef Automate 서버 생성 AWS CLI](gettingstarted-opscm-create.md#gettingstarted-opscm-create-cli)
+ [백업에서 AWS OpsWorks for Chef Automate 서버 복원](opscm-chef-restore.md)
+  OpsWorks CM API 참조의 [CreateServer](https://docs.aws.amazon.com/opsworks-cm/latest/APIReference/API_CreateServer.html) 
+ *AWS CLI 명령 Reference*의 [https://docs.aws.amazon.com/cli/latest/reference/opsworks-cm/create-server.html](https://docs.aws.amazon.com/cli/latest/reference/opsworks-cm/create-server.html)