LPIC-305 Objectives V3.0

From LPI Wiki
Revision as of 07:45, 3 March 2019 by FabianThorns (Talk | contribs) (341.1 Virtualization Concepts and Theory (weight: 6))

Jump to: navigation, search

Introduction

The description of the entire LPIC-3 programme is listed here.

Version Information

These objectives are version 2.0.0.

There is also a summary and detailed information on the changes from version 1.0 to 2.0 of the objectives.

The version 1.x objectives can be found here.


Translations of Objectives

The following translations of the objectives are available on this wiki:


Objectives

Topic 341: Virtualization

341.1 Virtualization Concepts and Theory (weight: 6)

Weight 6
Description Candidates should know and understand the general concepts, theory and terminology of Virtualization. This includes Xen, KVM and libvirt terminology.

Key Knowledge Areas:

  • Terminology
  • Pros and Cons of Virtualization
  • Variations of Virtual Machine Monitors
  • Migration of Physical to Virtual Machines
  • Migration of Virtual Machines between Host systems
  • Understand the features and implications of virtualization for a virtual machine, such as snapshotting, pausing, cloning and resource limits

The following is a partial list of the used files, terms and utilities:

  • Hypervisor
  • Hardware Virtual Machine (HVM)
  • Paravirtualization (PV)
  • Emulation and Simulation
  • CPU flags
  • /proc/cpuinfo
  • Migration (P2V, V2V)


341.2 Xen (weight: 6)

Weight 6
Description Candidates should be able to install, configure, maintain, migrate and troubleshoot Xen installations. The focus is on Xen version 4.x.

Key Knowledge Areas:

  • Xen architecture, networking and storage
  • Xen configuration
  • Xen utilities
  • Troubleshooting Xen installations
  • Awareness of XAPI
  • Awareness of XenStore
  • Awareness of Xen Boot Parameters
  • Awareness of the xm utility

The following is a partial list of the used files, terms and utilities:

  • Domain0 (Dom0), DomainU (DomU)
  • PV-DomU, HVM-DomU
  • /etc/xen/
  • xl
  • xl.cfg
  • xl.conf
  • xentop


341.3 KVM (weight: 6)

Weight 6
Description Candidates should be able to install, configure, maintain, migrate and troubleshoot KVM installations.

Key Knowledge Areas:

  • KVM architecture, including networking and storage
  • KVM configuration parameters
  • KVM utilities
  • Troubleshooting KVM installations

The following is a partial list of the used files, terms and utilities:

  • Kernel modules: kvm, kvm-intel and kvm-amd
  • /dev/kvm
  • kvm
  • KVM monitor
  • qemu
  • qemu-img


341.4 Libvirt Virtual Machine Management (weight: 9)

Weight 9
Description Candidates should be able to manage virtualization hosts and virtual machines (‘libvirt domains’) using libvirt and related tools.

Key Knowledge Areas:

  • Understand the architecture of libvirt
  • Manage libvirt connections and nodes
  • Create and manage KVM and Xen domains, including snapshots
  • Manage and analyze resource consumption of domains
  • Create and manage storage pools and volumes
  • Create and manage virtual networks
  • Migrate domains between nodes
  • Understand how libvirt interacts with Xen and KVM
  • Understand libvirt XML configuration files

The following is a partial list of the used files, terms and utilities:

  • libvirtd
  • /etc/libvirt/
  • virsh (including relevant subcommands)


Topic 342: Container Virtualization

342.1 Container Virtualization Concepts (weight: 6)

Weight 6
Description Candidates should understand the concept of container virtualization. This includes understanding the Linux components used to implement container virtualization as well as using standard Linux tools to troubleshoot these components.

Key Knowledge Areas:

  • Understand the concepts of system and application container
  • Understand and analyze kernel namespaces
  • Understand and analyze control groups
  • Understand and analyze capabilities
  • Understand the role of seccomp, SELinux and AppArmor for container virtualization
  • Understand how LXC and Docker leverage namespaces, cgroups, capabilities, seccomp and MAC
  • Awareness of other container virtualization approaches in Linux and other free operating systems, such as rkt, OpenVZ, systemd-nspawn or BSD Jails

The following is a partial list of the used files, terms and utilities:

  • nsenter
  • unshare
  • capsh
  • /sys/fs/cgroups
  • /proc/[0-9]+/ns
  • /proc/[0-9]+/status


342.2 LXC (weight: 5)

Weight 5
Description Candidates should be able to use system containers using LXC and LXD.

Key Knowledge Areas:

  • Understand the architecture of LXC and LXD
  • Manage LXC containers based on existing images using LXD, including networking and storage
  • Configure LXC container properties
  • Limit LXC container resource usage
  • Use LXD profiles
  • Understand LXC images
  • Awareness of traditional LXC tools

Partial list of the used files, terms and utilities:

  • lxd
  • lxc (including relevant subcommands)


342.3 Docker (weight: 8)

Weight 8
Description Candidate should be able to manage Docker nodes and Docker containers. This include understand the architecture of Docker as well as understanding how Docker interacts with the node’s Linux system.

Key Knowledge Areas:

  • Understand the architecture and components of Docker
  • Manage Docker containers by using images from a Docker registry
  • Understand and manage images and volumes for Docker containers
  • Understand and manage logging for Docker containers
  • Understand and manage networking for Docker
  • Use Dockerfiles to create container images
  • Run a Docker registry using the registry Docker image

Partial list of the used files, terms and utilities:

  • dockerd
  • /etc/docker/daemon.json
  • /var/lib/docker/
  • docker
  • Dockerfile


342.4 Container Orchestration Platforms (weight: 2)

Weight 2
Description Candidates should understand the importance of container orchestration and the key concepts Docker Swarm and Kubernetes provide to implement container orchestration.

Key Knowledge Areas:

  • Understand the relevance of container orchestration
  • Understand the key concepts of Docker Compose and Docker Swarm
  • Understand the key concepts of Kubernetes and Helm
  • Awareness of OpenShift, Rancher and Mesosphere DC/OS



Topic 343: VM Deployment and Provisioning

343.1 Cloud Management Tools (weight: 2)

Weight 2
Description Candidates should understand common offerings in public clouds and have basic feature knowledge of commonly available cloud management tools.

Key Knowledge Areas:

  • Understand common offerings in public clouds
  • Basic feature knowledge of OpenStack
  • Basic feature knowledge of Terraform
  • Awareness of CloudStack, Eucalyptus and OpenNebula

Partial list of the used files, terms and utilities:

  • IaaS, PaaS, SaaS
  • OpenStack
  • Terraform


343.2 Packer (weight: 2)

Weight 2
Description Candidates should be able to use Packer to create system images. This includes running Packer in various public and private cloud environments as well as building container images for LXC/LXD.

Key Knowledge Areas:

  • Understand the functionality and features of Packer
  • Create and maintain template files
  • Build images from template files using different builders

Partial list of the used files, terms and utilities:

  • packer


343.3 cloud-init (weight: 3)

Weight 3
Description Candidates should able to use cloud-init to configure virtual machines created from standardized images. This includes adjust virtual machines to match their available hardware resources, specifically, disk space and volumes. Additionally, candidates should be able to configure instances to allow secure SSH logins and install a specific set of software packages. Furthermore, candidates should be able to create new system images with cloud-init support.

Key Knowledge Areas:

  • Understanding the features and concepts of cloud-init, including user-data, initializing and configuring cloud-init
  • Use cloud-init to create, resize and mount file systems, configure user accounts, including login credentials such as SSH keys and install software packages from the distribution’s repository
  • Integrate cloud-init into own system images
  • Use config drive datasource for testing

Partial list of the used files, terms and utilities:

  • cloud-init
  • user-data
  • /var/lib/cloud/


343.4 Vagrant (weight: 3)

Weight 3
Description

Key Knowledge Areas:

Partial list of the used files, terms and utilities: