phpMyAdmin을 안전하게 운영하기 위한 CloudFormation 템플릿

AWS CloudFormation에서 얻을 수 있는 이점



내가 속한 개발 팀에서는 AWS에 인프라를 구축 할 때,
인프라의 문서 관리라는 낭비를 없애기 위해 CloudFormation을 적극적으로 활용하기로 했습니다.

CloudFormation에서 얻을 수 있는 이점은
이른바 Infrastructure as Code로 얻을 수 있는 부분과,
그 구축한 자원의 삭제도 정리해 주는 곳이라고 느끼고 있습니다.

단순히 리소스를 만들고 삭제할 수 있기 때문에,
필요할 때만 리소스를 만들고 더 이상 필요하지 않으면 삭제합니다.
기본적인 것이 고통없이 실행할 수 있게 됩니다.
그렇다면 클라우드의 이점이기도 한 사용한 분만의 이용료입니다.
작성한 자원의 유지, 운용에 걸리는 수고나 낭비도 줄일 수 있어
모두가 행복할 수 있기 때문에, 아직의 사람은 적극적으로 활용해 갑시다.

이 CloudFormation 템플릿은 다음 리포지토리에 게시됩니다.

이 CloudFormation은 무엇을 기쁘습니까?



보통 RDS는 프라이빗 서브넷에 서 있다고 생각합니다만,
그렇다면 외부에서 관리 도구로 연결하는 것이 번거롭게 되는군요.

따라서 phpMyAdmin이 설치된 EC2가 시작되었습니다.
WEB를 통해 RDS를 관리할 수 있는 환경을 구축하도록 템플릿 파일을 정의하고 있습니다.
물론 이미 생성된 리소스는 건드리지 않습니다.

사용하는 방법



CloudFormation 화면에서 이 템플릿 파일로 스택을 만들면,
다음 매개변수를 입력하라는 메시지가 표시되므로 입력하여 스택을 작성하십시오.
리소스 생성이 완료되면 출력 탭에 phpMyAdmin에 대한 URI가 출력됩니다.
생성된 리소스를 삭제하려면 스택을 삭제하기만 하면 됩니다.

AllowIp
phpMyAdmin에 대한 액세스를 허용하는 IP 주소를 CIDR 표기법으로 지정합니다. (예: 111.111.111.111/32)
여기를 가바가바로 설정하면 보안 위험이 높아집니다.

DBHost
RDS 엔드포인트를 입력합니다.

DBPort
RDS의 포트 번호를 입력합니다.

InstanceType
phpMyAdmin을 실행할 EC2의 인스턴스 유형을 지정합니다.

LatestAmiId
시작할 AMI 이미지를 지정합니다.

이것이이 템플릿 파일의 포인트이며,
CloudFormation에서 동적으로 AMI ID를 가져 오기 때문에
스택을 만들 때마다 최신 이미지로 EC2가 시작됩니다.

지정 가능한 값은 aws cli 로 확인 가능합니다.

# 東京リージョンの場合
aws ssm get-parameters-by-path --path "/aws/service/ami-amazon-linux-latest" --region ap-northeast-1

RDSSecurityGroupId
RDS에 액세스할 수 있는 보안 그룹을 선택합니다.

SubnetId
RDS와 동일한 VPC에 있는 EC2를 배포할 공용 서브넷을 선택합니다.

VpcId
RDS와 동일한 VPC를 선택합니다.

구성도



CloudFormation에서 만든 리소스는 VPC 내에서 이런 식으로 배치됩니다.



사이고에게



phpMyAdmin은 쉘 명령으로 설치하기 때문에,
설치하는 어플리케이션을 변경하면, 여러가지 응용할 수 있다고 생각합니다.

홍보



2019년 4월 14일의 기술 서전 6에 첫 출전하게 되었습니다!
AWS 탈초심자용이라는 테마로 여러 사람이 공동으로 집필했습니다.
장소는 「에28」이 되기 때문에, 좋으면 꼭!

좋은 웹페이지 즐겨찾기