- DevOps with Kubernetes
- Hideto Saito Hui Chuan Chloe Lee Cheng Yang Wu
- 298字
- 2021-07-02 13:41:45
Configuration management tools
There are a variety of configuration management tools available. The most popular ones include Puppet (https://puppet.com), Chef (https://www.chef.io), and Ansible (https://www.ansible.com).
AWS OpsWorks (https://aws.amazon.com/opsworks/) provides a managed Chef platform on AWS Cloud. The following screenshot shows a Chef recipe (configuration) of an installation of the Amazon CloudWatch Log agent using AWS OpsWorks. AWS OpsWorks automates the installation of the CloudWatch Log agent when launching an EC2 instance:

AWS CloudFormation (https://aws.amazon.com/cloudformation/) helps to achieve infrastructure as code. It supports the automation of AWS operations, so that we can perform the following functions:
- Creating a VPC
- Creating a subnet on VPC
- Creating an internet gateway on VPC
- Creating a routing table to associate a subnet to the internet gateway
- Creating a security group
- Creating a VM instance
- Associating a security group to a VM instance
The configuration of CloudFormation is written by JSON, as shown in the following screenshot:

CloudFormation supports parameterizing, so it's easy to create an additional environment with different parameters (such as VPC and CIDR) using a JSON file with the same configuration. It also supports the update operation. If we need to change a part of the infrastructure, there's no need to recreate the whole thing. CloudFormation can identify a delta of configuration and perform only the necessary infrastructure operations on your behalf.
AWS CodeDeploy (https://aws.amazon.com/codedeploy/) is another useful automation tool that focuses on software deployment. It allows the user to define the deployment steps. You can carry out the following actions on the YAML file:
- Specify where to download and install the application
- Specify how to stop the application
- Specify how to install the application
- Specify how to start and configure an application
The following screenshot is an example of the AWS CodeDeploy configuration file, appspec.yml:

- Embedded Linux Projects Using Yocto Project Cookbook
- C及C++程序設計(第4版)
- 現代C++編程:從入門到實踐
- Designing Machine Learning Systems with Python
- 認識編程:以Python語言講透編程的本質
- Java性能權威指南(第2版)
- Python機器學習算法: 原理、實現與案例
- PHP+Ajax+jQuery網站開發項目式教程
- Extreme C
- R語言:邁向大數據之路(加強版)
- Spring 5 Design Patterns
- Practical Microservices
- 計算語言學導論
- 軟件測試技術
- Java 11 and 12:New Features