DevOps is a combination of software development and IT operations methodologies and technologies. DevOps introduces many functional and technical changes in how companies design, develop, and deploy technologies, infrastructures, and applications. DevOps combines Agile software development practices and IT automation techniques to achieve rapid rates of high quality deployment.
This course will focus on the technologies and tools used by DevOps engineers. Upon completion of this course students will understand the core technologies and tools used within DevOps environments.
- Why DevOps? What do DevOps engineers/teams do?
- Virtual Environments
- Containers, Deploying Microservices in Containers
- Configuration Management via Automation
- Continuous Integration (CI)
- Continuous Delivery and Deployment
- DevOps in the AWS Cloud
* Tools: Vagrant
* Tools: Docker, Kubernetes
* Virtual Machines
* Tools: Chef, Puppet, Salt
* Infrastructure as Code (IaC)
* Why CI?
* Code Integration
* Tools: Jenkins, GitHub
*Automated Packing of Components
*Automated Deployment of Systems
*Tools: Packer, Serverspec
* AWS Basics: EC2, EBS, ELB
* AWS Configuration Management and Deployment
Skills Needed: Students must have basic programming experience using a high level programming language like Java, Python, C#, or a scripting environment like Bash.