기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
CloudFormation Ingest 예제: 3티어 웹 애플리케이션
표준 3-Tier 웹 애플리케이션에 대한 CloudFormation 템플릿을 수집합니다.
여기에는 Application Load Balancer, Application Load Balancer 대상 그룹, Auto Scaling 그룹, Auto Scaling 그룹 시작 템플릿, MySQL 데이터베이스가 있는 Amazon Relational Database Service(SQL Server용 RDS), AWS SSM 파라미터 스토어 및 AWS Secrets Manager가 포함됩니다. 이 예제를 살펴보려면 30~60분을 기다립니다.
사전 조건
Secrets Manager를 사용하여 해당 값을 가진 사용자 이름과 암호가 포함된 AWS 암호를 생성합니다. 보안 암호 이름가 포함된이 샘플 JSON 템플릿(zip 파일)을 참조하여 보안 암호 이름으로
ams-shared/myapp/dev/dbsecrets바꿀 수 있습니다. AMS에서 AWS Secrets Manager를 사용하는 방법에 대한 자세한 내용은 섹션을 참조하세요AMS 리소스와 함께 AWS Secrets Manager 사용.AWS SSM Parameter Store(PS)에서 필요한 파라미터를 설정합니다. 이 예제에서는 프라이빗 및 퍼블릭 서브넷
Subnet-Id의VPCId및가 ,/app/DemoApp/PublicSubnet1a, 및PublicSubnet1cPrivateSubnet1aPrivateSubnet1c와 같은 경로의 SSM PS에 저장됩니다VPCCidr. 필요에 따라 경로와 파라미터 이름 및 값을 업데이트합니다.AWS Secrets Manager 및 SSM Parameter Store 경로에 대한 읽기 권한이 있는 IAM Amazon EC2 인스턴스 역할을 생성합니다(이 예제에서 생성 및 사용되는 IAM 역할은 임
customer-ec2_secrets_manager_instance_profile). 인스턴스 프로파일 역할과 같은 IAM 표준 정책을 생성하는 경우 역할 이름은 로 시작해야 합니다customer-. 새 IAM 역할을 생성하려면 (이름 또는 다른customer-ec2_secrets_manager_instance_profile이름을 지정할 수 있음) AMS 변경 유형 관리 | 애플리케이션 | IAM 인스턴스 프로파일 | 생성(ct-0ixp4ch2tiu04) CT를 사용하고 필요한 정책을 연결합니다. AWS IAM 콘솔customer_systemsmanager_parameterstore_policy에서 AMS IAM 표준 정책customer_secrets_manager_policy및를 검토하여 있는 그대로 또는 참조로 사용할 수 있습니다.
표준 3-Tier 웹 애플리케이션을 위한 CloudFormation 템플릿 수집
첨부된 샘플 CloudFormation JSON 템플릿을 zip 파일인 3-tier-cfn-ingest.zip으로 S3 버킷에 업로드하고 CFN Ingest RFC에 사용할 서명된 S3 URL을 생성합니다. 자세한 내용은 presign을 참조하세요. AMS 콘솔을 통해 RFC를 제출할 때 CFN 템플릿을 CFN Ingest RFC에 복사/붙여넣을 수도 있습니다.
AMS 콘솔 또는 AMS CLI를 통해 CloudFormation Ingest RFC(배포 | 수집 | CloudFormation 템플릿의 스택 | 생성(ct-36cn2avfrrj9v))를 생성합니다. CloudFormation 수집 자동화 프로세스는 CloudFormation 템플릿을 검증하여 템플릿에 유효한 AMS 지원 리소스가 있는지 확인하고 보안 표준을 준수합니다.
콘솔 사용 - 변경 유형에서 CloudFormation 템플릿에서 배포 -> 수집 -> 스택 -> 생성을 선택한 다음, 다음 파라미터를 예로 추가합니다(MultiAZDatabase의 기본값은 false임). CloudFormation
CloudFormationTemplateS3Endpoint: "https://s3-ap-southeast-2.amazonaws.com/amzn-s3-demo-bucket/3-tier-cfn-ingest.json?AWSAccessKeyId=#{S3_ACCESS_KEY_ID}&Expires=#{EXPIRE_DATE}&Signature=#{SIGNATURE}" VpcId: "VPC_ID" TimeoutInMinutes:120IAMEC2InstanceProfile: "customer_ec2_secrets_manager_instance_profile" MultiAZDatabase: "true" WebServerCapacity: "2"사용 AWS CLI -를 사용하여 RFCs를 생성하는 방법에 대한 자세한 내용은 RFC 생성을 AWS CLI참조하세요. RFCs 예를 들어 다음 명령을 실행합니다.
aws --profile=saml amscm create-rfc --change-type-id ct-36cn2avfrrj9v --change-type-version "2.0" --title "TEST_CFN_INGEST" --execution-parameters "{\"CloudFormationTemplateS3Endpoint\":\"https://s3-ap-southeast-2.amazonaws.com/my-bucket/3-tier-cfn-ingest.json?AWSAccessKeyId=#{S3_ACCESS_KEY_ID}&Expires=#{EXPIRE_DATE}&Signature=#{SIGNATURE}\",\"TimeoutInMinutes\":120,\"Description\":\"TEST\",\”VpcId”\”:\”VPC_ID\”,\"Name\":\"MY_TEST\",\"Tags\":[{\"Key\":\"env\",\"Value\":\"test\"}],\"Parameters\":[{\"Name\":\"IAMEC2InstanceProfile\",\"Value\":\"customer_ec2_secrets_manager_instance_profile\"},{\"Name\":\"MultiAZDatabase\",\"Value\":\"true\"},{\"Name\":\"VpcId\",\"Value\":\"VPC_ID\"},{\"Name\":\"WebServerCapacity\",\"Value\":\"2\"}]}" --endpoint-urlhttps://amscm.us-east-1.amazonaws.com/operational/--no-verify-ssl
AWS CloudFormation RFC 실행 출력에서 Application Load Balancer URL을 찾아 웹 사이트에 액세스합니다. 리소스 액세스에 대한 자세한 내용은 인스턴스 액세스를 참조하세요.