ConfigurationManagement - cirelledo-csa/herd GitHub Wiki
Configuration Management
Storage
Configuration Management should be stored in git
Logging
Log all configuration changes somewhere else that's durable, auditable, reliable and cheap, Hint:S3
Platform Preferences:
Services >> Serverless >> Containers >> Servers
Services
Run
- Deliver services via CD pipeline.
Serverless
Run
- Deliver functions via CD pipeline.
Containers
Build
-
Build immutable containers from code stored in git with a CI/CD pipeline.
-
Use ansible or similar to create reuseable roles for application deployment.
-
Store images in a secure repository, EG Amazon Elastic Container Registry.
Run
- Deploy images as containers with a CI/CD pipeline.
EC2
Build
-
Use packer or similar in a CI/CD pipeline to create immutable images. Store packer templates in git.
-
Use ansible or similar to create reuseable roles for application deployment.
-
Encrypt images
-
Install Amazon Systems manager
-
Install a logging agent that sends logs to S3 - many ways to do this, EG cloudwatch or fluentd
Run
-
Use AWS systems manager (Hint) Howto SSM
-
Deliver images as instances running your app(s) with a CI/CD pipeline.
VMS aka Existing Legacy Systems
Build
Golden vmdk
Run
vmware
Linux systems
Legacy puppet 3 is defacto standard until it can be deprecated with something better
Windows systems
Some combination of SCCM and GPO(Group Policy Objects), don't know if this a standard?