
What this book covers
Chapter 1, Package Management, covers the different ways software can be installed, configured, upgraded, and removed using package management tools. There are various ways and tools to do this. Technical topics that are covered in this chapter are dpkg, aptitude, and apt-get, which are the command-line utilities used to automate some of the package management tasks. You will learn the various tools and methodologies to handle software, such as the command-line tools, as well as GUI for the installation, mirroring, upgrade, and removal of software along with their dependencies.
Chapter 2, Networking and DNS, deals with networking. This chapter covers how to understand, configure, and troubleshoot network-related issues. This is a very brief introduction to networking and handling wired and wireless networking. This chapter covers DNS setup, networking concepts, interface configuration, DHCP, network sniffing, binding, and bonding. Regarding DNS, the topics covered are forward zone, reverse zone, and configuring the primary master and secondary master. You will learn the networking concepts, which are key to diagnosing and rectifying networking issues in Ubuntu Server. It also covers the configuration of DHCP, DNS, and interfaces.
Chapter 3, Network Authentication, deals with network authentication for managing users' access to other systems in a secure way. It covers the different tools and methods for letting users access systems and services with restricted authentication. The technical topics covered are OpenLDAP, Kerberos, Kerberos with LDAP, NIS, Samba (optional), PAM, SSH, public and private keys, the RSA and DSA algorithms, passwordless SSH, X forwarding, and sshd. You will be able to set up and manage the users' access to systems and services as well as install, configure, and troubleshoot the services and tools.
Chapter 4, Monitoring and Optimization, deals with monitoring various resources on the server and load balancing with tools. This chapter also covers Nagios, Munin, Puppet, and ClusterSSH. System monitoring, CPU load, storage, networks, memory, resource monitoring, load balancing with IPVS, and ldirectord are also covered in this chapter. You will learn about resource monitoring for CPU, memory, and networks.
Chapter 5, Process Management, covers all the processes, their states, and how to manage them by using the command-line tools. The topics that are covered are ps, top, renice, kill, $$ and $PPID, job, fg, queues, process switching, process priority, and background jobs. You will learn how to handle process management using the command-line tools.
Chapter 6, Shell Management, Tools, and User Management, discusses shell, shell management tools, and user management. Topics such as the Secure Shell server, scheduling using cron, shell optimization, file management and permissions, bash functions, managing user accounts, user properties, and temporary disabling are covered in this chapter. You will learn how to use shell effectively, secure user management, and set user properties.
Chapter 7, Virtualization, explains how virtualization helps administrators separate the services and keep the working environment safe from the development environment. Topics such as KVM, Xen, and Qemu are addressed. You will learn about virtualization, its pros and cons, setting up KVM, and Xen.
Chapter 8, OpenStack with Ubuntu, deals with using OpenStack with Ubuntu Server, understanding the environment, architecture, and the host of services. The topics covered are the OpenStack environment, OpenStack architecture, and a host of services, such as Image, Identity, Networking components, Compute, Object Storage, Block Storage, and dashboard. You will learn how to use OpenStack, its environment, and architecture, along with the Ubuntu Server integration.
Chapter 9, OpenStack and Ubuntu Best Practices, discusses the various components of OpenStack, such as Data Processing, Database, Telemetry, and Orchestration. Some of the best practices for using Ubuntu Server are also discussed in this chapter.