DevOps Pro Moscow 2018

Yury Ignatov

Express 42, Russia

Workshop info:

Date: 13 November

Time: 10:00 – 17:00

Language: Russian

 

RESERVE YOUR SEAT

Yury Ignatov

Express 42, Russia

Workshop info:

Date: 13 November

Time: 10:00 – 17:00

Language: Russian

 

RESERVE YOUR SEAT

About Yury Ignatov

As a senior engineer at Express42, Yury develops and implements solutions for the continuous delivery in the enterprise. He assists with the adoption of key DevOps practices and gives lectures and trainings on automation and configuration management.

Workshop

Configuration management with Ansible

The problems the Configuration Management (CM) tools aim to solve. When and when not to use CM tools. The Ansible basics: playbooks, roles, modules, variables, hosts and groups (inventory), tags. Idempotence and repeatability, YAML syntax.

Practice: Set up your workstation for work with Ansible.

Infrastructure as a Code

Describing infrastructure in code. The different ways of running Ansible. Ansible integration with popular cloud providers.

Practice: learn how to use Ansible modules, variables, templates, roles and groups of hosts.

Configuration management data

How to manage configuration management data. Configuration management of different environments, hosts and groups of hosts, variable precedence. How to work with secrets using Ansible vault.

Practice: manage configuration of a three-tier service (web-server, application server, database) using Ansible.

Configuration management workflow when working with Ansible.

How your workflow should look like when managing configuration with Ansible. Ansible Galaxy and work with community roles. Best practices of managing dependencies inside the configuration code, testing your configuration code and problem resolution when configuration code fails.

Practice: integrate your application with a monitoring system.

Requirements:

  • Must have a laptop with OSX or Linux OS with your preferred text editor installed
  • Should know the basics of Linux OS
  • Experience with a version control system Git will be helpful

Agenda

  • What is Docker?
    • How do containers work?
    • Why use containers and how do they compare to other tools?
  • Building your first Docker container
    • Running an application in a Docker container
    • Reproducible installations using a Dockerfile
    • Dockerizing your first service
    • How docker layers work
  • Sharing your containers
    • Using a Docker Registry to share built container images
    • Using a Continuous Integration to build Docker Containers automatically from git
  • Getting Docker into production
    • Running multiple services with Docker
    • Using docker-compose to run containers on a single machine
    • Building a cluster using Docker Swarm

Objectives

This workshop aims to teach you how to use Docker from the ground up, from setting up your very first Docker container to getting your containers production ready.

Target audience

This workshop is targeted at developers and systems engineers who are new to Docker, but have some experience in writing Linux shell scripts.

Technical requirements

  • In order to participate you will need a Windows, Linux laptop or a Macbook.
  • In case of Windows: please install PuTTY or Linux subsystem for Windows 10.
  • In case of Linux: please install an SSH client (e.g. openssh-client for Ubuntu)
  • In case of MacOS: please install iTerm2 terminal emulator.

Note: it is strongly recommended that you install the recommended SSH client as the trainer may not be able to help you if you use a different one.