CloudFormation으로 EC2 인스턴스 프로비저닝

3001 단어 cloudskillsawsdevops
AWS CloudFormation은 텍스트 파일에서 전체 AWS 인프라 및 리소스를 관리할 수 있도록 하는 미친 파티 트릭을 수행합니다. AWS CloudFormation 템플릿에 작성하는 형식이 지정된 YAML 또는 JSON 코드는 AWS 인프라와 필요한 리소스를 설명합니다. CloudFormation은 나머지, 프로비저닝, 구성 및 배포를 모두 수행합니다.

먼저 aws configure 명령을 사용하여 AWS CLI를 구성하려고 합니다.

그런 다음 ec2.yaml을 생성하고 다음 코드를 추가합니다.

AWSTemplateFormatVersion: 2010-09-09
Description: EC2 Instance Create Using CloudFormation

Resources:
  WebAppInstance:
    Type: AWS::EC2::Instance
    Properties:
      ImageId: ami-002068ed284fb165b #AMI ID Unique to Region
      InstanceType: t2.micro
      KeyName: ohio-key #Add keypair name
      SecurityGroupIds:
        - !Ref WebAppSecurityGroup

  WebAppSecurityGroup:
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupName: !Join [ '-', [ webapp-security-group, dev ] ]
      GroupDescription: 'Allow HTTP/HTTPS and SSH inbound and outbound traffic'
      SecurityGroupIngress:
        - IpProtocol: tcp
          FromPort: 80
          ToPort: 80
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 443
          ToPort: 443
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 22
          ToPort: 22
          CidrIp: 0.0.0.0/0

  WebAppEIP:
    Type: AWS::EC2::EIP
    Properties:
      Domain: vpc
      InstanceId: !Ref WebAppInstance
      Tags:
        - Key: Name
          Value: !Join [ '-', [ webapp-eip, dev ] ]

Outputs:
  WebsiteURL:
    Value: !Sub http://${WebAppEIP}
    Description: WebApp URL


그런 다음 CloudFormation 스택을 생성하기 위해 다음 명령을 실행하십시오.aws cloudformation create-stack --stack-name ec2-stack --template-body file://ec2.yaml --output yaml
AWS 콘솔로 이동하여 CloudFormation을 검색하면 새로 생성된 스택과 출력 내역을 확인할 수 있습니다.


그런 다음 EC2 서비스로 이동하면 새로 생성된 EC2 인스턴스를 볼 수 있습니다.



원하는 경우 다음 명령을 사용하여 스택 세부 정보를 업데이트할 수 있습니다.aws cloudformation update-stack --stack-name ec2-stack --template-body file://ec2.yaml --output yaml
마지막으로 다음 명령을 사용하여 AWS 인프라를 제거할 수 있습니다. 파괴하면 생성된 기반 시설을 잃게 된다는 점을 기억하십시오.
aws cloudformation delete-stack --stack-name ec2-stack --output yaml


그런 다음 AWS 콘솔로 이동하면 EC2 인스턴스가 종료되었음을 확인할 수 있습니다.



기사를 읽어 주셔서 감사합니다.

좋은 웹페이지 즐겨찾기