사용자 지정 도메인을 사용하도록 AWS OpsWorks for Chef Automate 서버 업데이트 - AWS OpsWorks

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

사용자 지정 도메인을 사용하도록 AWS OpsWorks for Chef Automate 서버 업데이트

중요

AWS OpsWorks for Chef Automate는 더 이상 신규 고객을 받지 않습니다. 기존 고객은 서비스를 이용할 수 없게 되는 2024년 5월 5일까지 영향을 받지 않습니다. 기존 고객은 Chef SaaS 또는 대체 솔루션으로 마이그레이션하는 것이 좋습니다. 자세한 내용은 AWS OpsWorks for Chef Automate 수명 종료 관련 자주 묻는 질문 섹션을 참조하세요.

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

필수 조건

다음은 사용자 지정 도메인과 인증서를 사용하도록 기존 AWS OpsWorks for Chef Automate 서버를 업데이트하는 데 있어서의 요구 사항입니다.

  • 업데이트(또는 복사)하려는 서버에서 Chef Automate 2.0을 실행 중이어야 합니다.

  • 새 서버를 만드는 데 사용할 백업을 결정합니다. 업데이트하고자 하는 서버에 사용 가능한 백업이 하나 이상 있어야 합니다. AWS OpsWorks for Chef Automate의 백업에 대한 자세한 내용은 AWS OpsWorks for Chef Automate 서버 백업 단원을 참조하십시오.

  • 백업 소스인 기존 서버를 만드는 데 사용한 서비스 역할 및 인스턴스 프로파일 ARN을 준비합니다.

  • AWS CLI의 최신 릴리스를 실행 중이어야 합니다. AWS CLI 도구 업데이트에 대한 자세한 내용은 AWS Command Line Interface 사용 설명서AWS CLI 설치를 참조하십시오.

제한 사항

백업에서 새 서버를 생성하여 기존 서버를 업데이트하는 경우 새 서버는 기존 AWS OpsWorks for Chef Automate 서버와 정확히 동일할 수 없습니다.

  • AWS CLI 또는 AWS SDK중 하나를 사용하여 이 절차를 완료할 수 있습니다. AWS Management Console 사용을 통해 백업에서 새 서버를 생성할 수 없습니다.

  • 새 서버는 계정 내, 그리고 AWS 리전 내에 있는 기존 서버와 동일한 이름을 사용할 수 없습니다. 이름은 백업 소스로 사용한 기존 서버와 달라야 합니다.

  • 기존 서버에 연결된 노드는 새 서버에서 관리하지 않습니다. 다음 중 하나를 수행해야 합니다.

    • 둘 이상의 Chef Automate 서버에서 노드를 관리할 수 없으므로 다른 노드를 연결합니다.

    • 기존 서버(백업 소스)에서 새 서버 및 새 사용자 지정 도메인 엔드포인트로 노드를 마이그레이션합니다. 노드를 마이그레이션하는 방법에 대한 자세한 내용은 Chef 설명서를 참조하십시오.

사용자 지정 도메인을 사용하도록 서버 업데이트

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

  1. create-server 명령에서 지정할 수 있는 서비스 역할 또는 인스턴스 프로파일 ARN이 없는 경우 AWS CLI를 사용하여 Chef Automate 서버 생성의 1~5단계를 수행하여 사용할 수 있는 서비스 역할 및 인스턴스 프로필을 만듭니다.

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

    aws opsworks-cm --region region name describe-backups
  3. 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 사용 설명서인스턴스 유형을 참조하십시오.

    • --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 키 페어를 참조하세요.

    • 사용자 지정 도메인을 사용하려면 명령에 다음 파라미터를 추가합니다. 그렇지 않은 경우 Chef Automate의 서버 생성 프로세스가 자동으로 엔드포인트를 생성합니다. 사용자 지정 도메인을 구성하려면 세 가지 파라미터 모두가 필요합니다. 이러한 매개 변수를 사용하기 위한 추가 요구 사항에 대한 자세한 내용은 AWS OpsWorks CM API Reference의 서버 생성하기 항목을 참조하십시오.

      • --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
  4. AWS OpsWorks for Chef Automate에서 새 서버를 생성하는 데 약 15분이 걸립니다. create-server 명령의 출력에서 Endpoint 속성 값을 복사합니다. 다음은 예입니다.

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

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

  5. AWS OpsWorks for Chef Automate가 키와 암호를 자동으로 생성하도록 선택한 경우 jq와 같은 JSON 프로세서를 사용하여 create-server 결과에서 사용 가능한 형식으로 키와 암호를 추출할 수 있습니다. 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
  6. 또는 create-server 명령 결과에서 스타터 키트를 추출하지 않은 경우 AWS OpsWorks for Chef Automate 콘솔의 서버 속성 페이지에서 새 스타터 키트를 다운로드할 수 있습니다. 새 스타터 키트를 다운로드하면 Chef Automate 대시보드 관리자 암호를 재설정합니다.

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

  8. 서버 생성 프로세스가 완료되면 Starter Kit를 사용하여 Chef 서버 구성 단원을 진행합니다.

참고 항목