Book Image

Hands-On Linux Administration on Azure

By : Frederik Vos
Book Image

Hands-On Linux Administration on Azure

By: Frederik Vos

Overview of this book

Azure’s market share has increased massively and enterprises are adopting it rapidly, while Linux is a widely-used operating system and has proven to be one of the most popular workloads on Azure. It has thus become crucial for Linux administrators and Microsoft professionals to be well versed with managing Linux workloads in an Azure environment. With this guide, system administrators will be able to deploy, automate, and orchestrate containers in Linux on Azure. The book follows a hands-on approach to help you understand DevOps, monitor Linux workloads on Azure and perform advanced system administration. Complete with systematic explanations of concepts, examples and self-assessment questions, the chapters will give you useful insights into Linux and Azure. You’ll explore some of Linux’s advanced features for managing multiple workloads and learn to deploy virtual machines (VMs) in Azure. Dedicated sections will also guide you with managing and extending Azure VMs’ capabilities and understanding automation and orchestration with Ansible and PowerShell DSC. In later chapters, you’ll cover useful Linux troubleshooting and monitoring techniques that will enable you to maintain your workload on Azure. By the end of this book, you’ll be able to make the most out of Azure’s services to efficiently deploy and manage your Linux workloads.
Table of Contents (14 chapters)

Containers and storage

The last part of this chapter is about containers and storage. Every build tool that can create images provides the option to add data to your container.

You should use this feature only to provide configuration files. Data for applications should be hosted, as much as possible, outside the container: if you want to quickly update/remove/replace/scale, and so on, your container, it's almost impossible if the data is within the container.

There are often multiple ways to do this: you can use your local storage, or mounts on the host, and so on. Here is just one example in Rkt:

rkt run --volume data,kind=host,source=/directory>,readOnly=false \
<container>

This will make /srv/data on the localhost available on /var/data.

For Docker, there are solutions such as https://github.com/ContainX/docker-volume-netshare.

If you are using Docker and...