はじめに

これは、LPIC-3 認定試験に必要な項目です。

バージョン情報

この試験範囲は、バージョン3.0です。

この試験は305試験のバージョン2.0を分割してできました。

304試験バージョン2.0から3.0への、試験範囲の変更点の詳細は、 こちらにあります。

バージョン 2.xの試験範囲はこちらにあります。

試験範囲の翻訳

このwikiに、以下の試験範囲の翻訳があります:


試験範囲

課題 351: Full Virtualization

351.1 仮想化の概念と理論 (総重量: 6)

総重量 6
説明 仮想化の一般的な概念・理論・専門用語を知っていて、理解している必要があります。これには、Xen,QEMU,libvirtの専門用語も含まれます。

主な知識分野:

  • 仮想化の専門用語の理解
  • 仮想化の長所と短所の理解
  • 様々な種類のハイパーバイザーと仮想マシンモニタの理解
  • 物理マシンと仮想マシンのマイグレーションの、主な観点の理解
  • ホストシステム間での、仮想マシンのマイグレーションの、主な観点の理解
  • スナップショット・一時停止・クローン作成・リソース制限などの、仮想マシンに対する仮想化の影響と機能を理解する。
  • oVirt, Proxmox, systemd-machined, VirtualBoxの知識
  • Open vSwitchの知識

用語とユーティリティ:

  • ハイパーバイザー
  • ハードウエア仮想マシン (HVM)
  • 準仮想化(PV: Paravirtualization)
  • エミュレーションとシミュレーション
  • CPU フラグ
  • /proc/cpuinfo
  • マイグレーション (P2V, V2V)


351.2 Xen (総重量: 3)

総重量 3
説明 Xenをインストール・設定・管理・マイグレーション・トラブルシューティングすることができる。対象は、Xenのバージョン4.x。

主な知識分野:

  • ネットワークとストレージを含む、Xenの構造を理解する。
  • Xenノードとドメインの設定を理解する。
  • Xenノードとドメインを管理する。
  • Xenインストールのトラブルシュート。
  • XAPIの知識
  • XenStoreの知識
  • Xen Boot Parameterの知識
  • xmユーティリティの知識

用語とユーティリティ:

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


351.3 QEMU (総重量: 4)

総重量 4
説明 QEMUをインストール・設定・管理・マイグレーション・トラブルシューティングすることができる。

主な知識分野:

  • KVMとネットワークとストレージを含む、QEMUの構造を理解する。
  • QEMUのインスタンスをコマンドラインで起動する。
  • QEMUモニタを利用してスナップショットを管理する。
  • QEMU Gest AgentとVirtIOデバイスドライバをインストールする。
  • ネットワークとストレージを含む、QEMUのトラブルシューティング。
  • QEMUの重要な設定パラメータの知識。

用語とユーティリティ:

  • カーネルモジュール: kvm, kvm-intel and kvm-amd
  • /dev/kvm
  • QEMU monitor
  • qemu
  • qemu-system-x86_64
  • ip
  • brctl
  • tunctl


351.4 Libvirt Virtual Machine Management (総重量: 9)

総重量 9
説明 仮想ホストと仮想マシン(`libvirt ドメイン')を、libvirtと関連ツールを利用して、管理することができる。

主な知識分野:

  • libvirtの構造を理解する。
  • libvirtコネクションとノードを管理する。
  • スナップショットを含む、QEMUとXenドメインの作成と管理。
  • ドメインのリソース消費の管理と解析。
  • ストレージプールとボリュームの作成と管理。
  • 仮想ネットワークの作成と管理。
  • ノード間のドメインのマイグレーション。
  • libvirtがXen,QEMUをどのように操作するか理解する。
  • libvirtがdnsmasqやradvdなどのネットワークサービスをどのように操作するか理解する。
  • libvirt XML設定ファイルを理解する。
  • virtlogdとvirtlockdの知識。

用語とユーティリティ:

  • libvirtd
  • /etc/libvirt/
  • virsh (関連するサブコマンドを含む)


351.5 仮想マシンのディスクイメージの管理 (総重量: 3)

総重量 3
説明 仮想マシンのディスクイメージを管理することができる。これには、様々な種類のディスクイメージのフォーマット間やハイパーバイザー間で、ディスクイメージを変換したり、イメージ内部のデータにアクセスできることを含みます。

主な知識分野:

  • rawイメージ・qcow2・VMDKなどの様々な仮装ディスクイメージのフォーマットの仕様を理解する。
  • qemu-imgを利用して、仮想マシンのディスクイメージを管理する。
  • libguestfishを利用して、パーティションをマウントし、仮想マシンのディスクイメージに含まれるファイルにアクセスする。
  • 物理ディスクの内容を、仮想マシンのディスクイメージにコピーする。
  • 様々な仮想マシンのディスクイメージフォーマット間で、ディスクの内容をマイグレーションする。
  • Open Virtualizationフォーマット(OVF)の知識

用語とユーティリティ:

  • qemu-img
  • guestfish (関連するサブコマンドを含む)
  • guestmount
  • guestumount
  • virt-cat
  • virt-copy-in
  • virt-copy-out
  • virt-diff
  • virt-inspector
  • virt-filesystems
  • virt-rescue
  • virt-df
  • virt-resize
  • virt-sparsify
  • virt-p2v
  • virt-p2v-make-disk
  • virt-v2v
  • virt-sysprep


課題 352: コンテナ仮想化

352.1 コンテナ仮想化の概念 (総重量: 7)

総重量 7
説明 コンテナ仮想化の概念を理解している。これには、通常使われるLinuxのツールをLinuxコンポーネントのトラブルシューティングに使うだけではなく、コンテナ仮想化の実施に使用する、Linuxコンポーネントの理解が含まれる。

主な知識分野:

  • システムとアプリケーションのコンテナの概念を理解している。
  • カーネルネームスペースを理解し分析する
  • コントロールグループを理解し分析する。
  • ケイパビリティを理解し分析する。
  • コンテナ仮想化における、seccomp, SELinux, AppArmorの役割を理解する。
  • LXCとDockerが、namespace, cgroups, ケイパビリティ、seccomp, MACにどのように影響を及ぼすか理解する。
  • runcの概念の理解。
  • CRI-Oとcontainerdの理解。
  • OCIランタイムとimage-spec(image specification)の知識。
  • Kubernetes Container Runtime Interface (CRI)の知識。
  • podman, buildah, skopeoの知識。
  • Linuxとそれ以外の、rkt, OpenVZ, systemd-nspawn, BSD Jailsのようなフリーのオペレーティングシステムにおける、コンテナ仮想化のアプローチの知識がある。

用語とユーティリティ:

  • nsenter
  • unshare
  • ip (関連するサブコマンドを含む)
  • capsh
  • /sys/fs/cgroups
  • /proc/[0-9]+/ns
  • /proc/[0-9]+/status


352.2 LXC (総重量: 6)

総重量 6
説明 LXCとLXDを利用して、システムコンテナを利用することができる。LXCはバージョンが3.0以上を対象としている。

主な知識分野:

  • LXCとLXDの構造の理解。
  • ネットワークとストレージを含む、LXDを利用した存在しているイメージ上の、LXCコンテナを管理する。
  • LXCコンテナプロパティの設定。
  • LXCコンテナのリソース消費を制限する。
  • LXDプロファイルを利用する。
  • LXCイメージを利用する。
  • 従来のLXCツールの知識。

用語とユーティリティ:

  • lxd
  • lxc (関連するサブコマンドを含む)


352.3 Docker (総重量: 9)

総重量 9
説明 DockerノードとDockerコンテナを管理することができる。これには、DockerがノードのLinuxシステムとどのようにやり取りするかを理解するだけではなく、Dockerの構造を理解していることが含まれる。

主な知識分野:

  • Dockerのアーキテクチャとコンポーネントを理解している。
  • Dockerレジストリからイメージを利用して、Dockerコンテナを管理することができる。
  • Dockerコンテナのイメージとボリュームを理解し管理する
  • Dockerコンテナのログ取得を理解し管理する。
  • Dockerのネットワーク機能を理解し管理する。
  • コンテナイメージを作成するために、Dockerfileを利用することができる。
  • レジストリDockerイメージを利用して、Dockerレジストリを実行する。

用語とユーティリティ:

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


352.4 コンテナオーケストレーションプラットフォーム (総重量: 3)

総重量 3
説明 コンテナオーケストレーションの重要性と、コンテナオーケストレーションの実施を提供する、Docker SwarmとKubernetesの主要な概念を理解する。

主な知識分野:

  • コンテナオーケストレーションの関連性を理解する。
  • Docker ComposeとDocker Swarmの主な概念を理解する。
  • KubernetesとHelmの主な概念を理解する。
  • OpenShift, Rancher, Mesosphere DC/OSの知識。



課題 353: VMのデプロイとプロビジョニング

353.1 クラウド管理ツール (総重量: 2)

総重量 2
Description パブリッククラウドの一般的な製品を理解し、一般的なクラウド管理ツールの基本的な機能の知識を持つ。

主な知識分野:

  • パブリッククラウドの、一般的な製品の理解。
  • OpenStackの基本的な機能の知識
  • Terraformの基本的な機能の知識。
  • CloudStack, Eucalyptus, OpenNebulaの知識

用語とユーティリティ:

  • IaaS, PaaS, SaaS
  • OpenStack
  • Terraform


353.2 Packer (総重量: 2)

総重量 2
Description システムイメージを作成するために、Packerを利用することができる。これには、LXC/LCDのコンテナイメージを構築するだけではなく、様々なパブリッククラウドとプライベートクラウド環境でPackerを動作させることを含みます。

主な知識分野:

  • Packerの機能と特徴を理解している。
  • テンプレートファイルを作成し、管理することができる。
  • 異なったビルダーを利用して、テンプレートファイルからイメージを構築することができる。

用語とユーティリティ:

  • packer


353.3 cloud-init (総重量: 3)

総重量 3
説明 標準化されたイメージから作成した仮想マシンを設定するために、cloud-initを利用できる。これには、利用可能なハードウエアリソース・仕様・ディスク容量とボリュームに合わせて、仮想マシンを調節することを含みます。さらに、インスタンスにセキュアなSSHログインを許可し、特定のソフトウエアパッケージのセットをインストールするように、設定できなくてはいけません。 そして、clud-initのサポートにより新しいシステムイメージを作成できなくてはいけません。

Key Knowledge Areas:

  • cloud-initの特徴と概念を理解している。これには、user-dataとcloud-initの初期化と設定が含まれる。
  • cloud-initを、ファイルシステムの作成・リサイズ・マウントに利用でき、SSHキーやディストリビューションのリポジトリからのソフトウエアパッケージをインストールするような、ログイン認証を含む、ユーザアカウント設定する。
  • システムーメージにcloud-initを導入する。
  • テスト用にconfig drive datasourceを利用する。

用語とユーティリティ:

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


353.4 Vagrant (総重量: 3)

総重量 3
説明 仮想マシンのプロビジョニングを含む、仮想マシンの管理をVagrantを利用して行うことができる。

主な知識分野:

  • ストレージとネットワーキングを含む、Vagrantの構造と概念を理解している。
  • Atlasからboxを探し、利用する。
  • Vagrantfile作成し実行する。
  • Vagrant仮想マシンにアクセスする。
  • Vagrant仮想マシンとホストシステム間で、フォルダを共有し同期する。
  • Vagrantプロビジョニングの理解(例:ファイルとシェルのプロビジョナー)
  • 複数マシン(multi-machine)のセットアップの理解

用語とユーティリティ:

  • vagrant
  • Vagrantfile