課程名稱:Linux LPI Level 3 (LPIC-3) Virtualization and Containerization 國際認可證書課程 - 簡稱:LPI Level 3 (LPIC-3) Training Course (Virtualization & Containerization) |
1. About Virtualization
1.1 Overview
1.2 Virtualization in Cloud Platform
1.2.1 Cloud Overview
1.2.2 Cloud Service Models
2. Full Virtualization
2.1 Hypervisor
2.1.1 Overview
2.1.2 Types of Hypervisor
`2.2 Virtual Hardware in a VM
2.2.1 Virtual CPU (vCPU)
2.2.2 Virtual RAM Memory
2.2.3 Virtual Disk Storage
2.2.4 Virtual Network Interface Card (vNIC)
2.2.5 Other Devices
2.3 Ways for Creating Virtual Machines
2.3.1 Standard Installation
2.3.2 Through a Template or OVA / OVF File
2.3.3 Through Conversion / Migration
2.4 Paravirtualization (半虛擬化)
3. KVM and QEMU
3.1 Overview
3.2 Installing the Basic Packages for using KVM
3.3 Creating a VM in KVM:
3.4 Brief Notes about CPU Virtualization Extension in the Host
3.5 Common Types of Virtual Network
3.5.1 QEMU User Mode Networking
3.5.2 Linux Bridge and TAP Interfaces
3.6 QEMU Monitor
3.6.1 Overview
3.6.2 An Example of Using QEMU Monitor
3.7 Using Paravirtualized I/O Devices in KVM
3.7.1 Virtio
3.7.2 Brief Notes about Direct Kernel Boot
3.8 Managing Disk Image File
3.8.1 Disk Image Formats
3.8.2 Converting Image Formats
3.8.3 Managing Snapshots in a qcow2 Disk Image
4. Libvirt
4.1 Overview
4.2 Installing Libvirt
4.3 Create a VM with virt-install
4.4 Importing / Cloning / Migrating VM
4.4.1 Importing VM from an Existing Disk Image
4.4.2 Cloning an Existing VM
4.4.3 Migrating a VM from Another Host
4.5 Networking in Libvirt
4.5.1 Enabling Serial Console and Examining Characteristics of Network “default”
4.5.2 Configuring Fixed IP Address for a VM
4.5.3 Brief Notes About Network Filters
4.6 Creating and Managing Networks
4.6.1 Creating a New Network
4.6.2 Configure a VM to use the New Network
4.6.3 Destroying and Undefining a Network
4.7 Managing Block Devices in a VM
4.7.1 Changing CD/DVD Drive Media
4.7.2 Hot Plugging Block Device
4.8 Creating and Restoring Snapshots
4.9 Other SubCommands for Managing VMs
4.9.1 save and restore
4.9.2 suspend and resume
4.9.3 reboot and reset
4.9.4 autostart
4.10 Daemons for Libvirt
4.10.1 libvirtd
4.10.2 systemd-machined
4.11 Tools for Managing Disk Images
4.11.1 Overview
4.11.2 Examples for using tools from libguestfs
4.11.3 More Examples of using Guestfish Shell (參考章節)
5. XEN
5.1 Background
5.2 Xen Overview
5.2.1 Dom0 / Domain0
5.2.2 VM Modes
5.2.3 Accessing VM’s Console / Terminal
5.2.4 Networking
5.3 Installing Xen
5.3.1 BootLoader Settings Before Xen Installation
5.3.2 Xen Installation Steps
5.3.3 BootLoader Settings After installation
5.3.4 Creating a Linux Bridge
5.4 Basic Configuration Files and Commands
5.4.1 /etc/xen/xl.conf
5.4.2 Configuration files for VM (i.e. DomU)
5.4.3 xl info
5.4.4 xl dmesg
5.4.5 xl list
5.4.6 xenstore-ls
5.4.7 xentop / xl top
5.4.8 Other Sub-Commands of xl
5.5 Creating and Managing an HVM DomU
5.5.1 Preparation
5.5.2 Create an HVM DomU and Install a Guest OS
5.5.3 Making Console Access and Examining Information in the Guest OS
5.5.4 Information of DomU gathered in the Host
5.5.5 Managing Block Devices in DomU
5.5.6 Shutting Down a DomU
5.5.7 Starting a DomU with Console Access
6. Container Virtualization
6.1 Overview
6.2 Linux Namespaces
6.2.1 About Namespaces
6.2.2 PID Namespace
6.2.3 Mount Namespace
6.2.4 Network Namespace
6.2.5 UTS Namespace
6.2.6 Time Namespace
6.2.7 User Namespace
6.2.8 IPC Namespace
6.2.9 Cgroup Namespace
6.3 Control Groups (Cgroups)
6.4 Secomp
6.5 Capabilities
6.6 History and Types of Containers
6.6.1 Brief History
6.6.2 System Container
6.6.3 Application Containers
7. Docker
7.1 Introduction
7.2 Installing Docker
7.3 Creating a Container running Web Server
7.4 Configuration Settings and Logging
7.4.1 Image Configuration
7.4.2 Container Configuration
7.4.3 Container Logging
7.5 Examining Namespace / Cgroup / Capabilites
7.6 Committing a Custom Image
7.7 Volumes
7.8 Creating a Custom Container / Image from a Base Image
7.9 Dockerfile
7.10 Notes about Docker’s Networks
7.10.1 The Default Network “bridge”
7.10.2 Creating a Custom Network
7.10.3 Creating a Custom Network with Custom IP Subnet / Range
7.10.4 Removing a Custom Network
7.11 Introduction to Docker Compose and Docker Swarm
7.11.1 Docker Compose
7.11.2 Docker Swarm
7.12 Components for Managing Containers
7.12.1 Overview
7.12.2 More about containerd
7.12.3 More about runc
8. LXC and LXD
8.1 LXC
8.1.1 Overview
8.1.2 Installing LXC
8.1.3 Create a Simple Container
8.1.4 Configuration Settings and Files for a Container
8.1.5 Namespaces, Cgroup and Capabilities for a Container
8.1.6 Networking for Containers
8.1.7 Snapshots
8.1.8 Other LXC’s commands
8.2 LXD
8.2.1 Overview
8.2.2 Installing LXD
8.2.3 Creating a Container with LXD
8.2.4 Configuration Settings of a Container
8.2.5 Profiles
8.2.6 Namespaces, Cgroup and Capabilities for a Container
8.2.7 Networking
8.2.8 Creating / Managing Images
8.2.9 Copying / Backing up Containers
8.2.10 Snapshots
8.2.11 Commonly Used lxc SubCommands
8.2.12 lxd SubCommands
9. Tools for Provision / Deployment / Orchestration
9.1 Packer
9.1.1 Overview
9.1.2 Installing Packer
9.1.3 Packer Template File
9.1.4 Example for using Packer
9.2 Cloud-init
9.2.1 Overview
9.2.2 Cloud-init Configuration Files and Services
9.2.3 Cloud Images
9.2.4 Configuration
9.2.5 Example of Using Cloud-init
9.3 Vagrant
9.3.1 Overview
9.3.2 Configuration Settings
9.3.3 Example of Installing and Using Vagrant
9.4 Other Configuration / Orchestration Tools
9.4.1 Openstack
9.4.2 CloudStack
9.4.3 OpenNebula
9.4.4 Proxmox
9.4.5 Terraform
9.4.6 Eucalyptus
9.4.7 oVirt
9.4.8 Kubernetes
Appendix 1 : Basic Setup for Exercises in this Course
1.1 Downloading and Installing VMware Workstation Player
1.2 Download CentOS and Install it in a VM
1.3 Cloning a CentOS VM for our Exercise
1.4 Installing VNC Client Program in your Windows PC
Appendix 2 : QEMU: Add/Delete Device and Other Forms of Snapshots
1.1 Add / Delete Device in QEMU Monitor
1.2 External Snapshots
Appendix 3 : Migrating VM with Libvirt
1.1 Performing Live Migration of the VM “vm1”
1.1.1 Preparing the Target Host
1.1.2 Preparing the Source Host and the Migrating VM
1.1.3 Migration the running VM “vm1”
1.1.4 Examining the Migrated VM
Appendix 4 : Using cloud-init in KVM
1.1 Preparing User Data
1.2 Downloading Cloud Images
1.3 Example of Creating a VM using cloud-init
1.3.1 Creating a VM using CentOS Stream 9 Cloud Image
1.3.2 Creating a VM using Ubuntu 22 Cloud Image
1.4 Using a Cloud Image without cloud-init
|