구성 관리 - 에서 마이크로서비스 구현 AWS

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

구성 관리

마이크로서비스 아키텍처에서 각 서비스는 데이터베이스, 대기열 및 기타 서비스와 같은 다양한 리소스와 상호 작용합니다. 각 서비스의 연결 및 운영 환경을 구성하는 일관된 방법이 중요합니다. 애플리케이션은 다시 시작할 필요 없이 새 구성에 적응하는 것이 가장 좋습니다. 이 접근 방식은 환경 변수에 구성을 저장하는 것을 권장하는 12단계 앱 원칙의 일부입니다.

다른 접근 방식은 AWS App Config를 사용하는 것입니다. Systems AWS Manager의 기능으로, 고객이 기능 플래그와 애플리케이션 구성을 빠르고 안전하게 구성, 검증 및 배포할 수 있습니다. 배포 전 단계에서 기능 플래그 및 구성 데이터를 구문적으로 또는 의미적으로 검증할 수 있으며, 구성한 경보가 트리거되면 모니터링되고 자동으로 롤백될 수 있습니다. AppConfig 에이전트를 사용하여 AWS AppConfig를 Amazon ECS 및 Amazon EKS와 통합할 수 있습니다. 에이전트는 Amazon ECS 및 Amazon EKS 컨테이너 애플리케이션과 함께 실행되는 사이드카 컨테이너 역할을 합니다. Lambda 함수에서 AppConfig 기능 플래그 또는 기타 동적 구성 데이터를 사용하는 AWS 경우 AWS AppConfig Lambda 확장을 Lambda 함수에 계층으로 추가하는 것이 좋습니다.

GitOps는 Git을 모든 구성 변경의 정확한 소스로 사용하는 구성 관리에 대한 혁신적인 접근 방식입니다. 즉, 구성 파일에 대한 모든 변경 사항은 Git을 통해 자동으로 추적, 버전 관리 및 감사됩니다.

보안 암호 관리

보안이 가장 중요하므로 자격 증명을 일반 텍스트로 전달해서는 안 됩니다.는AWS Systems Manager Parameter Store 및와 같은 보안 서비스를 AWS 제공합니다 AWS Secrets Manager. 이러한 도구는 Amazon EKS의 컨테이너에 보안 암호를 볼륨으로 전송하거나 Amazon ECS에 환경 변수로 전송할 수 있습니다. 에서 AWS Lambda환경 변수는 코드에 자동으로 제공됩니다. Kubernetes 워크플로의 경우 외부 보안 암호 운영자는 AWS Secrets Manager와 같은 서비스에서 직접 보안 암호를 가져와서 해당 Kubernetes 보안 암호를 생성합니다. 이를 통해 Kubernetes 네이티브 구성과 원활하게 통합할 수 있습니다.