IT Automation: It’s not that scary!
Offered By: Google via Coursera
Course Description
Overview
This course is designed to give you an introduction to concepts related to the automatic management of infrastructure in the IT industry. Using tools like scripting languages, version control, configuration management systems, and monitoring solutions, this course will give you an introduction to automation in IT. It will have an emphasis on creating automation that’s both scalable and manageable.
By the end of this course, you’ll be able to:
* understand the fundamentals of programming using the Ruby language.
* create basic automation scripts to perform system administration tasks.
* use regular expressions to extract meaning from raw text.
* manage code by using the version control system, Git.
* develop and understand the benefits of tests for the scripts and automation they create.
* deploy software using the Chef configuration management software and understand the principles of configuration management in the IT context.
* track the health of technology systems through monitoring and become familiar with common monitoring concepts and practices
Before taking this course, it's helpful to be familiar with the following concepts:
- installation of software on a computer platform
- basic computer network terminology and concepts
- common system administrator tasks and responsibilities
This course has been designed to be completed completely in-browser. You don’t have to install any software on your computer. However, supplemental readings and instructions are provided, where appropriate, if you want to install the software and tools that we discuss in order to experiment on your own systems.
Except as otherwise noted, the contents on this site are licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
By the end of this course, you’ll be able to:
* understand the fundamentals of programming using the Ruby language.
* create basic automation scripts to perform system administration tasks.
* use regular expressions to extract meaning from raw text.
* manage code by using the version control system, Git.
* develop and understand the benefits of tests for the scripts and automation they create.
* deploy software using the Chef configuration management software and understand the principles of configuration management in the IT context.
* track the health of technology systems through monitoring and become familiar with common monitoring concepts and practices
Before taking this course, it's helpful to be familiar with the following concepts:
- installation of software on a computer platform
- basic computer network terminology and concepts
- common system administrator tasks and responsibilities
This course has been designed to be completed completely in-browser. You don’t have to install any software on your computer. However, supplemental readings and instructions are provided, where appropriate, if you want to install the software and tools that we discuss in order to experiment on your own systems.
Except as otherwise noted, the contents on this site are licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Syllabus
Intro to Automation
Welcome to IT Automation: It's not that scary! In the first week of this course, we will cover the basics of what "automation" is and why it's beneficial to IT Support Specialists. We will also learn about a scripting language called Ruby. If you've never programmed or written any code before, don't worry! This module will introduce you to everything you need to know to get started. By the end of this module, you will have written several Ruby scripts and gain a better understanding about how programming works in general.
System Programming
In the second week of this course, we'll learn about system programming. We will explore ways that IT Support Specialists might use programming skills to create automation to save time and cut down on mistakes. We'll start by looking at how we can organize code, how to read and write files, use subprocesses and input streams, and learn about code libraries and how they're packaged. By the end of this module, you will write a Ruby script to discover all the hosts on a local network.
Regex and Text Processing
In the third week of this course, we'll learn about regular expressions and text processing. As an IT Support Specialist, you may find yourself needing to process raw data and text that's not easy to read. We're going to learn how to parse out this text using Ruby so it's easy to read and understand. We'll also take a look at how to process log files so we can identify issues and troubleshoot them. By the end of this module, you'll know how to use regular expressions and string indexing in log files to troubleshoot real-world problems.
Version Control and Testing
In the fourth week of this course, we'll learn about version control systems (VCS) and system testing. We'll explore why VCS are helpful for maintaining source code across programs and scripts. We'll learn how to use a popular type of VCS called Git and why remote repositories can help people develop a project collaboratively. By the end of this module, you'll understand the basic Git workflow, how to commit and "rollback" code, and even learn some advanced Git features (if you're interested). Using a VCS like Git is an awesome skill to have as an IT Support Specialist and will help set you apart from the crowd.
Configuration and Automation at Scale
In the fifth week of this course, we'll explore configuration management and automation at scale. We'll explore why companies desire "scalability" and how IT Support Specialists can scale the IT infrastructure. We'll work with a configuration management system called Chef to configure automation processes. By the end of this module, you will work with Chef to manage and test system configurations at scale.
Monitoring
In the sixth week of the course, we'll learn about system monitoring. Monitoring helps IT Support Specialists analyzes the IT infrastructure so you can identify any problems or risks in the system. We'll learn how to use one monitoring system called Prometheus and use metric visualizations to help us troubleshoot and send alerts. By the end of this module, you will set up a monitoring and alerting system, which you will need to use for your final project of the course.
Cumulative Project
Congratulations, you've made it to the final week in the course! The last week of this course is dedicated to the final project. For the final project, you will set up your very own monitoring system for a web server by using Prometheus. You'll troubleshoot a real-world problem by applying the concepts of automation, configuration and monitoring. By the end of this project, you will demonstrate how to detect problems and understand the benefits of automatic testing. Good luck!
Welcome to IT Automation: It's not that scary! In the first week of this course, we will cover the basics of what "automation" is and why it's beneficial to IT Support Specialists. We will also learn about a scripting language called Ruby. If you've never programmed or written any code before, don't worry! This module will introduce you to everything you need to know to get started. By the end of this module, you will have written several Ruby scripts and gain a better understanding about how programming works in general.
System Programming
In the second week of this course, we'll learn about system programming. We will explore ways that IT Support Specialists might use programming skills to create automation to save time and cut down on mistakes. We'll start by looking at how we can organize code, how to read and write files, use subprocesses and input streams, and learn about code libraries and how they're packaged. By the end of this module, you will write a Ruby script to discover all the hosts on a local network.
Regex and Text Processing
In the third week of this course, we'll learn about regular expressions and text processing. As an IT Support Specialist, you may find yourself needing to process raw data and text that's not easy to read. We're going to learn how to parse out this text using Ruby so it's easy to read and understand. We'll also take a look at how to process log files so we can identify issues and troubleshoot them. By the end of this module, you'll know how to use regular expressions and string indexing in log files to troubleshoot real-world problems.
Version Control and Testing
In the fourth week of this course, we'll learn about version control systems (VCS) and system testing. We'll explore why VCS are helpful for maintaining source code across programs and scripts. We'll learn how to use a popular type of VCS called Git and why remote repositories can help people develop a project collaboratively. By the end of this module, you'll understand the basic Git workflow, how to commit and "rollback" code, and even learn some advanced Git features (if you're interested). Using a VCS like Git is an awesome skill to have as an IT Support Specialist and will help set you apart from the crowd.
Configuration and Automation at Scale
In the fifth week of this course, we'll explore configuration management and automation at scale. We'll explore why companies desire "scalability" and how IT Support Specialists can scale the IT infrastructure. We'll work with a configuration management system called Chef to configure automation processes. By the end of this module, you will work with Chef to manage and test system configurations at scale.
Monitoring
In the sixth week of the course, we'll learn about system monitoring. Monitoring helps IT Support Specialists analyzes the IT infrastructure so you can identify any problems or risks in the system. We'll learn how to use one monitoring system called Prometheus and use metric visualizations to help us troubleshoot and send alerts. By the end of this module, you will set up a monitoring and alerting system, which you will need to use for your final project of the course.
Cumulative Project
Congratulations, you've made it to the final week in the course! The last week of this course is dedicated to the final project. For the final project, you will set up your very own monitoring system for a web server by using Prometheus. You'll troubleshoot a real-world problem by applying the concepts of automation, configuration and monitoring. By the end of this project, you will demonstrate how to detect problems and understand the benefits of automatic testing. Good luck!
Taught by
Tags
Related Courses
Access Controls(ISC)² via Coursera Accessibilité numérique
Inria (French Institute for Research in Computer Science and Automation) via France Université Numerique Administração de Sistemas e Serviços de Infraestrutura de TI
Cresça com o Google via Coursera Administración de sistemas y servicios de infraestructura de TI
Crece con Google via Coursera Administración de las Tecnologías de la Información
Universidad de Palermo via Coursera