Man page - lxc.container.conf(5)
Packages contains this manual
- lxc-user-nic(1)
- lxc-config(1)
- lxc-checkconfig(1)
- pam_cgfs(8)
- lxc-update-config(1)
- lxc-freeze(1)
- lxc-autostart(1)
- lxc-device(1)
- lxc-destroy(1)
- lxc.conf(5)
- lxc-info(1)
- lxc-wait(1)
- lxc-checkpoint(1)
- lxc-stop(1)
- lxc-console(1)
- lxc-top(1)
- lxc(7)
- lxc.container.conf(5)
- lxc-attach(1)
- lxc.system.conf(5)
- lxc-create(1)
- lxc-unshare(1)
- lxc-copy(1)
- lxc-execute(1)
- lxc-monitor(1)
- lxc-snapshot(1)
- lxc-start(1)
- lxc-unpriv-attach(1)
- lxc-unpriv-start(1)
- lxc-usernsexec(1)
- lxc-usernet(5)
- lxc-ls(1)
- lxc-cgroup(1)
- lxc-unfreeze(1)
apt-get install lxc
Available languages:
en ko jaManual
lxc.container.conf
NAME説 明
設 定
ア ー キ テ ク チ ャ
ホ ス ト 名
ク リ ー ン な シ ャ ッ ト ダ ウ ン 時 の シ グ ナ ル
リ ブ ー ト 時 の シ グ ナ ル
強 制 停 止 時 の シ グ ナ ル
INIT コ マ ン ド
INIT の ワ ー キ ン グ デ ィ レ ク ト リ
INIT が 使 う ID
コ ア ス ケ ジ ュ ー リ ン グ
PROC
一 時 的 な コ ン テ ナ
ネ ッ ト ワ ー ク
新 し い 擬 似 端 末 の イ ン ス タ ン ス (DEVPTS)
コ ン テ ナ の シ ス テ ム コ ン ソ ー ル
TTY を 通 し た コ ン ソ ー ル
コ ン ソ ー ル デ バ イ ス の 位 置
/DEV デ ィ レ ク ト リ
マ ウ ン ト ポ イ ン ト
ル ー ト フ ァ イ ル シ ス テ ム
CONTROL GROUP ("CGROUP")
ケ ー パ ビ リ テ ィ
名 前 空 間
リ ソ ー ス 制 限
SYSCTL
APPARMOR プ ロ フ ァ イ ル
SELINUX コ ン テ キ ス ト
カ ー ネ ル キ ー リ ン グ
SECCOMP の 設 定
PR_SET_NO_NEW_PRIVS
UID の マ ッ ピ ン グ
コ ン テ ナ の フ ッ ク
コ ン テ ナ の フ ッ ク で 使 え る 環 境 変 数
ロ ギ ン グ
自 動 起 動
自 動 起 動 と シ ス テ ム ブ ー ト
コ ン テ ナ の 環 境 変 数
例
ネ ッ ト ワ ー ク
UID/GID の マ ッ ピ ン グ
CONTROL GROUP
複 雑 な 設 定
SEE ALSO
SEE ALSO
NAME
lxc.container.conf - LXC コ ン テ ナ 設 定 フ ァ イ ル
説 明
LXC は 良 く 知 ら れ た 、 多 く の テ ス ト が 行 わ れ た Linux コ ン テ ナ の ラ ン タ イ ム で す 。 LXC は 、 2008 年 以 来 ア ク テ ィ ブ に 開 発 さ れ て お り 、 世 界 中 の 重 要 な 本 番 環 境 で 実 証 さ れ て い ま す 。 開 発 へ の 貢 献 者 の 中 に は 、 Linux カ ー ネ ル 内 の 良 く 知 ら れ た 様 々 な コ ン テ ナ 機 能 の 実 装 に 貢 献 し た 人 と 同 じ 人 も い ま す 。
LXC は 主 に シ ス テ ム コ ン テ ナ に フ ォ ー カ ス を 当 て て い ま す 。 つ ま り 、 VM で 得 ら れ る 環 境 と 可 能 な 限 り 近 い 環 境 を 提 供 を 提 供 す る に も 関 わ ら ず 、 別 々 の カ ー ネ ル を 実 行 し た り 、 ハ ー ド ウ ェ ア を す べ て シ ミ ュ レ ー ト し た り す る こ と に よ る オ ー バ ー ヘ ッ ド が な い コ ン テ ナ の こ と で す 。
こ の よ う な 環 境 は 、 名 前 空 間 (namespace)、 強 制 ア ク セ ス コ ン ト ロ ー ル 、 cgroup と い っ た カ ー ネ ル の セ キ ュ リ テ ィ 機 能 の 組 み 合 わ せ で 実 現 し て い ま す 。
LXC は 非 特 権 コ ン テ ナ を サ ポ ー ト し て い ま す 。 非 特 権 コ ン テ ナ は 、 い か な る 特 権 も 持 た ず に 実 行 す る コ ン テ ナ で す 。 非 特 権 コ ン テ ナ の 実 行 に は 、 コ ン テ ナ を 実 行 し て い る カ ー ネ ル に ユ ー ザ 名 前 空 間 (user namespace) の サ ポ ー ト が 必 要 で す 。 LXC は 、 ユ ー ザ 名 前 空 間 が メ イ ン ラ イ ン カ ー ネ ル に マ ー ジ さ れ て か ら 、 初 め て 非 特 権 コ ン テ ナ を サ ポ ー ト し た ラ ン タ イ ム で す 。
本 質 的 に は 、 ユ ー ザ 名 前 空 間 は 与 え ら れ た UID、 GID の 組 を 隔 離 し ま す 。 ユ ー ザ 名 前 空 間 は 、 ホ ス ト 上 の UID、 GID の あ る 範 囲 を 、 そ れ と は 異 な る コ ン テ ナ 上 の UID、 GID の 範 囲 へ マ ッ ピ ン グ す る こ と で 実 現 し ま す 。 カ ー ネ ル は 、 ホ ス ト 上 で は 実 際 に は UID、 GID は 特 権 を 持 た な い に も 関 わ ら ず 、 コ ン テ ナ 内 で は す べ て の UID、 GID が 期 待 さ れ る よ う に 見 え る よ う に 変 換 を 行 い ま す 。 例 え ば 、 コ ン テ ナ 内 で は UID、 GID が 0 と し て 実 行 中 の プ ロ セ ス は 、 ホ ス ト 上 で は UID、 GID が 100000 と し て 見 え る で し ょ う 。 実 装 と 動 作 の 詳 細 は 、 ユ ー ザ 名 前 空 間 の man ペ ー ジ か ら 得 ら れ ま す 。 UID と GID の マ ッ ピ ン グ は lxc.idmap を 使 っ て 定 義 で き ま す 。
Linux コ ン テ ナ は 、 簡 単 な 設 定 フ ァ イ ル で 定 義 し ま す 。 設 定 フ ァ イ ル 中 の オ プ シ ョ ン は key = value の 形 で 一 行 で 表 し ま す 。 ’#’ は 、 そ の 行 は コ メ ン ト で あ る こ と を 示 し ま す 。 ケ ー パ ビ リ テ ィ や cgroup の オ プ シ ョ ン の よ う な 、 リ ス ト 形 式 で 指 定 す る オ プ シ ョ ン で は 、 value が な い 形 式 で 指 定 で き 、 そ の よ う に 使 う と 、 そ れ 以 前 に 定 義 し た 値 を す べ て ク リ ア し ま す 。
LXC は 、 シ ン グ ル ド ッ ト を 使 っ て 設 定 キ ー の 名 前 空 間 を 表 し ま す 。 lxc.net.0 の よ う な 複 雑 な 設 定 キ ー は 、 lxc.net.0.type 、 lxc.net.0.link 、 lxc.net.0.ipv6.address や 、 さ ら に 細 分 化 さ れ た 設 定 向 け の 色 々 な サ ブ キ ー を 持 つ こ と を 意 味 し ま す 。
設 定
複
数 の 関 係 す る
コ ン テ ナ の 管
理 を 容 易 に す
る た め に 、 コ
ン テ ナ の 設 定
フ ァ イ ル に 別
の フ ァ イ ル を
ロ ー ド す る こ
と が 可 能 で す
。 例 え ば 、 ネ
ッ ト ワ ー ク の
設 定 を 、 複 数
の コ ン テ ナ か
ら include さ せ る よ
う に 1 つ の フ ァ
�\xA4ル に 定 義 す
る こ と が 可 能
で す 。 そ の 場
合 、 コ ン テ ナ
が 他 の ホ ス ト
に 移 動 す る と
、 そ の フ ァ イ
ル だ け を 更 新
す る 必 要 が あ
る か も し れ ま
せ ん 。
lxc.include
include さ せ た い フ ァ イ ル を 指 定 し ま す 。 include す る フ ァ イ ル は 、 lxc 設 定 フ ァ イ ル の フ ォ ー マ ッ ト と し て 有 効 で な け れ ば い け ま せ ん 。
ア ー キ テ ク チ ャ
コ
ン テ ナ に 対 し
て ア ー キ テ ク
チ ャ を 設 定 す
る こ と が 可 能
で す 。 例 え ば
、 64 ビ ッ ト の ホ
ス ト 上 で 32 ビ ッ
ト の バ イ ナ リ
を 動 か す た め
に 32 ビ ッ ト ア ー
キ テ ク チ ャ を
設 定 す る こ と
が 可 能 で す 。
こ の 設 定 を 行
う こ と に よ り
、 パ ッ ケ ー ジ
の ダ ウ ン ロ ー
ド を 行 う な ど
の 作 業 の う ち
、 ア ー キ テ ク
チ ャ 名 に 依 存
す る よ う な 作
業 を 行 う コ ン
テ ナ ス ク リ プ
ト の 修 正 を 行
い ま す 。
lxc.arch
コ ン テ ナ に 設 定 す る ア ー キ テ ク チ ャ を 指 定 し ま す 。
有 効 な オ プ シ ョ ン に は 以 下 の よ う な も の が あ り ま す 。 x86 , i686 , x86_64 , amd64
ホ ス ト 名
utsname セ
ク シ ョ ン は 、
コ ン テ ナ に 設
定 さ れ る ホ ス
ト 名 を 定 義 し
ま す 。 コ ン テ
ナ は 、 シ ス テ
ム の ホ ス ト 名
を 変 え る こ と
な く 、 自 身 の
ホ ス ト 名 を 持
つ 事 が 可 能 で
す 。 こ の こ と
に よ り 、 ホ ス
ト 名 は コ ン テ
ナ 専 用 と な り
ま す 。
lxc.uts.name
コ ン テ ナ の ホ ス ト 名 を 指 定 し ま す 。
ク リ ー ン な シ ャ ッ ト ダ ウ ン 時 の シ グ ナ ル
コ
ン テ ナ を ク リ
ー ン に シ ャ ッ
ト ダ ウ ン す る
た め に コ ン テ
ナ の init プ ロ セ ス
に 送 る シ グ ナ
ル 名 か 番 号 を
指 定 で き ま す
。 init シ ス テ ム に
よ っ て 、 ク リ
ー ン な シ ャ ッ
ト ダ ウ ン を 行
う た め に 使 う
シ グ ナ ル は 異
な り ま す 。 こ
の オ プ シ ョ ン
で は シ グ ナ ル
と し て kill(1) で 使
う 形 式 を 指 定
で き ま す 。 例
え ば SIGKILL, SIGRTMIN+14, SIGRTMAX-10 の
よ う な 形 式 、
も し く は 数 字
を 指 定 し ま す
。 デ フ ォ ル ト
の シ グ ナ ル は SIGPWR
で す 。
lxc.signal.halt
コ ン テ ナ を シ ャ ッ ト ダ ウ ン す る た め に 使 う シ グ ナ ル を 指 定 し ま す 。
リ ブ ー ト 時 の シ グ ナ ル
コ
ン テ ナ を リ ブ
ー ト す る た め
に 送 る シ グ ナ
ル 名 か 番 号 を
指 定 で き ま す
。 こ の オ プ シ
ョ ン で は シ グ
ナ ル と し て kill(1)
で 使 う 形 式 を
指 定 で き ま す
。 例 え ば SIGKILL, SIGRTMIN+14,
SIGRTMAX-10 の よ う な 形
式 、 も し く は
数 字 を 指 定 し
ま す 。 デ フ ォ
ル ト の シ グ ナ
ル は SIGINT で す 。
lxc.signal.reboot
コ ン テ ナ を リ ブ ー ト す る た め に 使 う シ グ ナ ル を 指 定 し ま す 。
強 制 停 止 時 の シ グ ナ ル
コ
ン テ ナ を 強 制
的 に シ ャ ッ ト
ダ ウ ン す る た
め に 送 る シ グ
ナ ル 名 か 番 号
を 指 定 で き ま
す 。 こ の オ プ
シ ョ ン で は シ
グ ナ ル と し て
kill(1) で 使 う 形 式
を 指 定 で き ま
す 。 例 え ば SIGKILL,
SIGRTMIN+14, SIGRTMAX-10 の よ う な
形 式 、 も し く
は 数 字 を 指 定
し ま す 。 デ フ
ォ ル ト の シ グ
ナ ル は SIGKILL で す
。
lxc.signal.stop
コ ン テ ナ を 停 止 す る の に 使 用 す る シ グ ナ ル を 指 定 し ま す 。
INIT コ マ ン ド
コ
ン テ ナ の init と し
て 使 う コ マ ン
ド を 設 定 し ま
す 。
lxc.execute.cmd
デ フ ォ ル ト で 実 行 す る バ イ ナ リ の コ ン テ ナ の root か ら の 絶 対 パ ス を 指 定 し ま す 。 こ れ は lxc-execute の た め の 設 定 で す 。
lxc.init.cmd
init と し て 使 う バ イ ナ リ の 、 コ ン テ ナ の root か ら の 絶 対 パ ス を 指 定 し ま す 。 こ れ は lxc-start の た め の 設 定 で す 。 デ フ ォ ル ト は /sbin/init で す 。
INIT の ワ ー キ ン グ デ ィ レ ク ト リ
コ
ン テ ナ の ワ ー
キ ン グ デ ィ レ
ク ト リ と し て
、 コ ン テ ナ 内
の 絶 対 パ ス を
設 定 し ま す 。 LXC
は init を 実 行 す る
前 に 、 こ の デ
ィ レ ク ト リ に
移 動 し ま す 。
lxc.init.cwd
ワ ー キ ン グ デ ィ レ ク ト リ と し て 使 う コ ン テ ナ 内 の 絶 対 パ ス
INIT が 使 う ID
init と
後 続 の コ マ ン
ド が 使 う UID/GID を
設 定 し ま す 。
シ ス テ ム コ ン
テ ナ を 起 動 す
る の に 非 root な UID
を 使 う と 、 特
権 が な い た め
に 動 作 し な い
で し ょ う 。 UID/GID
の 指 定 は 、 通
常 は ア プ リ ケ
ー シ ョ ン コ ン
テ ナ の 動 作 の
際 に 役 に 立 ち
ま す 。 デ フ ォ
ル ト 値 : UID(0)、 GID(0)
lxc.init.uid
init が 使 う UID で す 。
lxc.init.gid
init が 使 う GID で す 。
コ ア ス ケ ジ ュ ー リ ン グ
コ
ア ス ケ ジ ュ ー
リ ン グ は 、 コ
ン テ ナ の ペ イ
ロ ー ド が 同 じ
コ ア で ス ケ ジ
ュ ー ル 可 能 で
あ る と マ ー ク
す る か ど う か
を 指 定 し ま す
。 こ れ に よ り
カ ー ネ ル ス ケ
ジ ュ ー ラ ー は
、 同 じ グ ル ー
プ に 属 さ な い
タ ス ク が 同 一
コ ア 上 で 同 時
に 実 行 さ れ な
い よ う に し ま
す 。 こ れ は 、
コ ン テ ナ ペ イ
ロ ー ド が ク ロ
ス ハ イ パ ー ス
レ ッ ド 攻 撃 を
受 け る こ と を
防 ぐ た め の 、
追 加 の セ キ ュ
リ テ ィ 対 策 と
し て 機 能 さ せ
る こ と が で き
ま す 。
lxc.sched.core
0 ま た は 1 の み 指 定 で き ま す 。 1 を 設 定 す る と 、 コ ン テ ナ に 対 す る コ ア ス ケ ジ ュ ー リ ン グ ド メ イ ン を 作 成 し 、 0 を 設 定 す る と 作 成 し ま せ ん 。 明 示 的 に 指 定 し て い な い 場 合 は 、 コ ン テ ナ に 対 す る コ ア ス ケ ジ ュ ー リ ン グ ド メ イ ン は 作 成 さ れ ま せ ん 。
PROC
コ
ン テ ナ 内 の proc フ
ァ イ ル シ ス テ
ム で 設 定 で き
る パ ラ メ ー タ
を 設 定 し ま す
。
lxc.proc.[proc file name]
設 定 し た い proc フ ァ イ ル シ ス テ ム の フ ァ イ ル 名 を 指 定 し ま す 。 指 定 で き る フ ァ イ ル 名 は /proc/PID/ 以 下 に 存 在 す る も の で す 。 例 :
lxc.proc.oom_score_adj = 10
一 時 的 な コ ン テ ナ
シ
ャ ッ ト ダ ウ ン
後 に コ ン テ ナ
を 削 除 す る か
ど う か を 指 定
で き ま す 。
lxc.ephemeral
指 定 で き る 値 は 0 ま た は 1 の み で す 。 こ の 値 を 1 に 設 定 す る と 、 シ ャ ッ ト ダ ウ ン 後 に コ ン テ ナ を 削 除 し ま す 。
ネ ッ ト ワ ー ク
ネ
ッ ト ワ ー ク セ
ク シ ョ ン は 、
コ ン テ ナ 内 で
ど の よ う に ネ
ッ ト ワ ー ク を
仮 想 化 す る か
を 定 義 し ま す
。 ネ ッ ト ワ ー
ク の 仮 想 化 は
レ イ ヤ ー 2 で 作
動 し ま す 。 ネ
ッ ト ワ ー ク の
仮 想 化 を 使 用
す る た め に は
、 コ ン テ ナ の
ネ ッ ト ワ ー ク
イ ン タ ー フ ェ
ー ス を 定 義 し
な け れ ば な り
ま せ ん 。 い く
つ か の 仮 想 イ
ン タ ー フ ェ ー
ス を ア サ イ ン
す る こ と が で
き ま す 。 そ し
て 、 仮 に 物 理
ネ ッ ト ワ ー ク
イ ン タ ー フ ェ
ー ス が 一 つ し
か な く て も 、
コ ン テ ナ 内 で
い く つ も の 仮
想 イ ン タ ー フ
ェ ー ス を 使 う
こ と が で き ま
す 。
lxc.net
値 を 指 定 せ ず に 使 い 、 そ れ 以 前 に 定 義 さ れ た す べ て の ネ ッ ト ワ ー ク オ プ シ ョ ン を ク リ ア で き ま す 。
lxc.net.[i].type
コ ン テ ナ が ど の 種 類 の ネ ッ ト ワ ー ク 仮 想 化 を 使 う か を 指 定 し ま す 。 ネ ッ ト ワ ー ク デ バ イ ス の 他 の オ プ シ ョ ン を 設 定 す る 前 に 指 定 し な け れ ば い け ま せ ん 。 す べ て の lxc.net.* キ ー に 、 追 加 の イ ン デ ッ ク ス i を 使 う と 、 複 数 の ネ ッ ト ワ ー ク を 指 定 で き ま す 。 例 え ば 、 lxc.net.0.type = veth と lxc.net.1.type = veth は 、 同 じ タ イ プ の 異 な る ネ ッ ト ワ ー ク を 2 つ 指 定 し ま す 。 同 じ イ ン デ ッ ク ス を 指 定 し た キ ー は す べ て 同 じ ネ ッ ト ワ ー ク の 指 定 に な り ま す 。 例 え ば 、 lxc.net.0.link = br0 は lxc.net.0.type と 同 じ ネ ッ ト ワ ー ク の 設 定 に な り ま す 。 現 時 点 で は 、 以 下 の ネ ッ ト ワ ー ク 仮 想 化 の タ イ プ が 使 え ま す :
empty: ル ー プ バ ッ ク イ ン タ ー フ ェ ー ス だ け を 作 成 し ま す 。
veth: 一 方 が コ ン テ ナ に 、 も う 一 方 が ホ ス ト に 接 続 さ れ る ペ ア の 仮 想 イ ー サ ネ ッ ト デ バ イ ス を 作 成 し ま す 。 lxc.net.[i].veth.mode は 、 veth の 親 ( ホ ス ト 側 ) が ホ ス ト 上 で 使 う モ ー ド を 指 定 し ま す 。 指 定 で き る モ ー ド は bridge と router で す 。 指 定 し な い 場 合 の デ フ ォ ル ト の モ ー ド は bridge で す 。 bridge モ ー ド で は 、 ホ ス ト 側 は 、 lxc.net.[i].link オ プ シ ョ ン で 指 定 し た ブ リ ッ ジ に 接 続 さ れ ま す 。 も し 、 ブ リ ッ ジ が 指 定 さ れ て い な い 場 合 、 veth ペ ア デ バ イ ス は 作 成 さ れ ま す が 、 ブ リ ッ ジ に は 接 続 さ れ ま せ ん 。 ブ リ ッ ジ は コ ン テ ナ が 開 始 す る 前 に シ ス テ ム で 事 前 に 設 定 し て お く 必 要 が あ り ま す 。 lxc は コ ン テ ナ 外 の 設 定 を 扱 う こ と は あ り ま せ ん 。 router モ ー ド で は 、 ホ ス ト 側 の veth イ ン タ ー フ ェ ー ス を 指 す コ ン テ ナ の IP ア ド レ ス に 対 し て 、 ホ ス ト 上 で ス タ テ ィ ッ ク ル ー ト が 作 成 さ れ ま す 。 加 え て 、 コ ン テ ナ が ホ ス ト に 到 達 で き る た め に 、 コ ン テ ナ 内 で 定 義 さ れ た ゲ ー ト ウ ェ イ の IP ア ド レ ス に 対 し て 、 Proxy ARP と Proxy NDP エ ン ト リ が ホ ス ト 側 の veth イ ン タ ー フ ェ ー ス に 追 加 さ れ ま す 。 デ フ ォ ル ト で は 、 lxc が コ ン テ ナ の 外 部 に 属 す る ネ ッ ト ワ ー ク デ バ イ ス に 対 す る 名 前 を 決 定 し ま す 。 し か し 、 も し こ の 名 前 を 自 分 で 指 定 し た い 場 合 、 lxc.net.[i].veth.pair オ プ シ ョ ン を 使 っ て 名 前 を 設 定 し 、 lxc に 対 し て 指 定 を す る こ と が で き ま す (非 特 権 コ ン テ ナ の 場 合 を の ぞ き ま す 。 セ キ ュ リ テ ィ 上 の 理 由 か ら こ の オ プ シ ョ ン は 無 視 さ れ ま す )。 lxc.net.[i].veth.ipv4.route 、 lxc.net.[i].veth.ipv6.route オ プ シ ョ ン を 使 っ て 、 静 的 ル ー テ ィ ン グ を コ ン テ ナ を 指 し 示 す ホ ス ト 上 に 追 加 で き ま す 。 複 数 の ル ー ト が あ る 場 合 は 複 数 の 設 定 を 指 定 し ま す 。 ル ー ト は x.y.z.t/m の 形 式 で す 。 例 : 192.168.1.0/24 bridge モ ー ド で は 、 タ グ な し VLAN は lxc.net.[i].veth.vlan.id で 設 定 で き ま す 。 こ の オ プ シ ョ ン で は 、 コ ン テ ナ ポ ー ト を ブ リ ッ ジ の デ フ ォ ル ト の タ グ な し VLAN か ら 削 除 す る た め の 特 別 な 値 ’none’ が 指 定 で き ま す 。 コ ン テ ナ の ブ リ ッ ジ ポ ー ト を 複 数 の タ グ 付 き VLAN に 所 属 さ せ る た め に 、 lxc.net.[i].veth.vlan.tagged.id を 複 数 回 指 定 で き ま す 。
vlan: vlan イ ン タ ー フ ェ ー ス は lxc.net.[i].link で 指 定 さ れ た イ ン タ ー フ ェ ー ス と リ ン ク し 、 コ ン テ ナ に 割 り 当 て ら れ ま す 。 vlan の 指 定 は lxc.net.[i].vlan.id オ プ シ ョ ン で 指 定 し ま す 。
macvlan: macvlan イ ン タ ー フ ェ ー ス は lxc.net.[i].link に よ り 指 定 さ れ る イ ン タ ー フ ェ ー ス と リ ン ク し 、 コ ン テ ナ に 割 り 当 て ら れ ま す 。 lxc.net.[i].macvlan.mode で モ ー ド を 指 定 す る と 、 そ の macvlan の 指 定 を 、 同 じ 上 位 デ バ イ ス で 異 な る macvlan 間 の 通 信 を す る 時 に 使 い ま す 。 指 定 で き る モ ー ド は private 、 vepa 、 bridge 、 passthru の い ず れ か で す 。 private モ ー ド の 場 合 、 デ バ イ ス は 同 じ 上 位 デ バ イ ス の 他 の デ バ イ ス と の 通 信 を 行 い ま せ ん (デ フ ォ ル ト )。 新 し い 仮 想 イ ー サ ネ ッ ト ポ ー ト 集 約 モ ー ド (Virtual Ethernet Port Aggregator (VEPA)) で あ る vepa モ ー ド の 場 合 、 隣 接 し た ポ ー ト が 、 ソ ー ス と デ ス テ ィ ネ ー シ ョ ン の 両 方 が macvlan ポ ー ト に 対 し て ロ ー カ ル で あ る フ レ ー ム を 全 て 返 す と 仮 定 し ま す 。 す な わ ち 、 ブ リ ッ ジ が reflective relay と し て 設 定 さ れ て い る と い う こ と で す 。 上 位 デ バ イ ス か ら 入 っ て く る ブ ロ ー ド キ ャ ス ト フ レ ー ム は 、 VEPA モ ー ド で あ る 全 て の macvlan イ ン タ ー フ ェ ー ス に 送 り つ け ら れ ま す 。 ロ ー カ ル の フ レ ー ム は ロ ー カ ル に は 配 送 さ れ ま せ ん 。 bridge モ ー ド の 場 合 、 同 じ ポ ー ト の 異 な る macvlan イ ン タ ー フ ェ ー ス の 間 の シ ン プ ル な ブ リ ッ ジ と し て 動 作 し ま す 。 あ る イ ン タ ー フ ェ ー ス か ら 他 の イ ン タ ー フ ェ ー ス へ の フ レ ー ム は 、 直 接 配 送 さ れ 、 外 部 に は 送 出 さ れ ま せ ん 。 ブ ロ ー ド キ ャ ス ト フ レ ー ム は 、 全 て の 他 の ブ リ ッ ジ と 外 部 の イ ン タ ー フ ェ ー ス に 対 し て 送 ら れ ま す 。 し か し 、 reflective relay か ら フ レ ー ム が 返 っ て き た と き は 、 再 度 そ れ を 配 送 す る こ と は し ま せ ん 。 全 て の MAC ア ド レ ス を 知 っ て い る の で 、 ブ リ ッ ジ モ ジ ュ ー ル の よ う に 、 macvlan ブ リ ッ ジ モ ー ド は 学 習 や STP の 必 要 は あ り ま せ ん 。 passthru モ ー ド の 場 合 、 物 理 イ ン タ ー フ ェ ー ス で 受 け 取 っ た 全 て の フ レ ー ム は macvlan イ ン タ ー フ ェ ー ス に 転 送 さ れ ま す 。 passthru モ ー ド の 場 合 、 ひ と つ の macvlan イ ン タ ー フ ェ ー ス だ け が 、 ひ と つ の 物 理 イ ン タ ー フ ェ ー ス に 対 し て 設 定 で き ま す 。
ipvlan: ipvlan イ ン タ ー フ ェ ー ス は lxc.net.[i].link に よ り 指 定 さ れ る イ ン タ ー フ ェ ー ス と リ ン ク し 、 コ ン テ ナ に 割 り 当 て ら れ ま す 。 lxc.net.[i].ipvlan.mode で モ ー ド を 指 定 す る と 、 そ の ipvlan の 指 定 を 、 同 じ 上 位 デ バ イ ス で 異 な る ipvlan 間 の 通 信 を す る 時 に 使 い ま す 。 指 定 で き る モ ー ド は l3 、 l3s 、 l2 で 、 デ フ ォ ル ト は l3 モ ー ド で す 。 l3 モ ー ド で は 、 L3 ま で の TX (送 信 ) 処 理 は ス レ ー ブ デ バ イ ス に ア タ ッ チ さ れ た ス タ ッ ク イ ン ス タ ン ス 上 で 行 わ れ ま す 。 そ し て パ ケ ッ ト は 、 L2 処 理 の た め に マ ス タ ー デ バ イ ス の ス タ ッ ク イ ン ス タ ン ス に ス イ ッ チ さ れ ま す 。 こ の イ ン ス タ ン ス か ら の ル ー テ ィ ン グ は 、 発 信 デ バ イ ス 上 で キ ュ ー に 入 る 前 に 使 わ れ ま す 。 こ の モ ー ド で は 、 ス レ ー ブ は マ ル チ キ ャ ス ト ・ ブ ロ ー ド キ ャ ス ト の ト ラ フ ィ ッ ク を 受 信 し ま せ ん し 、 送 信 も で き ま せ ん 。 l3s モ ー ド は 、 TX (送 信 ) 処 理 は L3 モ ー ド と 非 常 に 似 て い ま す が 、 iptables (conn-tracking) が こ の モ ー ド で 動 作 し ま す 。 そ れ ゆ え に L3対 称 (symmetric) (L3s) で す 。 こ の モ ー ド は 若 干 パ フ ォ ー マ ン ス が 低 下 し ま す が 、 conn-tracking (接 続 追 跡 ) が 動 作 す る よ う に 、 普 通 の L3 モ ー ド の 代 わ り に こ の モ ー ド を 選 ん で い る の で 問 題 に は な ら な い は ず で す 。 l2 モ ー ド で は 、 TX (送 信 ) 処 理 は ス レ ー ブ デ バ イ ス に ア タ ッ チ さ れ た ス タ ッ ク イ ン ス ン タ ン ス 上 で 行 わ れ ま す 。 パ ケ ッ ト は 送 信 の た め 、 マ ス タ ー デ バ イ ス に ス イ ッ チ さ れ 、 マ ス タ ー デ バ イ ス 上 で キ ュ ー に 入 り ま す 。 こ の モ ー ド で は 、 ス レ ー ブ は マ ル チ キ ャ ス ト も ( 該 当 す る 場 合 ) ブ ロ ー ド キ ャ ス ト も RX/TX (送 受 信 ) 処 理 し ま す 。 lxc.net.[i].ipvlan.isolation は 隔 離 モ ー ド を 指 定 し ま す 。 隔 離 モ ー ド に は bridge 、 private 、 vepa が 指 定 で き ま す 。 デ フ ォ ル ト は bridge モ ー ド で す 。 bridge 隔 離 モ ー ド で は 、 ス レ ー ブ は マ ス タ ー デ バ イ ス 経 由 の 通 信 と は 別 に 、 ス レ ー ブ 同 士 で 通 信 で き ま す 。 private 隔 離 モ ー ド で は 、 ポ ー ト は プ ラ イ ベ ー ト に 設 定 さ れ ま す 。 つ ま り 、 ス レ ー ブ 間 の 通 信 は で き ま せ ん 。 vepa 隔 離 モ ー ド で は 、 ポ ー ト は VEPA モ ー ド に 設 定 さ れ ま す 。 つ ま り 、 802.1Qbg で 説 明 さ れ て い る よ う に 、 ポ ー ト は ス イ ッ チ ン グ 機 能 を 外 部 エ ン テ ィ テ ィ に オ フ ロ ー ド し ま す 。
phys: lxc.net.[i].link で 指 定 さ れ た 、 す で に 存 在 し て い る イ ン タ ー フ ェ ー ス が コ ン テ ナ に 割 り 当 て ら れ ま す 。
lxc.net.[i].flags
ネ ッ ト ワ ー ク に 対 し て 行 う ア ク シ ョ ン を 指 定 し ま す 。
up: イ ン タ ー フ ェ ー ス を 起 動 さ せ ま す 。
lxc.net.[i].link
実 際 の ネ ッ ト ワ ー ク ト ラ フ ィ ッ ク に 使 う イ ン タ ー フ ェ ー ス を 指 定 し ま す 。
lxc.net.[i].l2proxy
レ イ ヤ 2 IP 近 隣 プ ロ キ シ エ ン ト リ を 、 コ ン テ ナ の IP ア ド レ ス に 対 応 す る lxc.net.[i].link イ ン タ ー フ ェ ー ス に 追 加 す る か ど う か を 制 御 し ま す 。 0 か 1 が 設 定 で き 、 デ フ ォ ル ト は 0 で す 。 IPv4 ア ド レ ス で 使 う 場 合 は 、 次 の sysctl 設 定 が 必 要 で す : net.ipv4.conf.[link].forwarding=1 IPv6 ア ド レ ス で 使 う 場 合 は 、 次 の sysctl 設 定 が 必 要 で す : net.ipv6.conf.[link].proxy_ndp=1 net.ipv6.conf.[link].forwarding=1
lxc.net.[i].mtu
イ ン タ ー フ ェ ー ス に 対 す る MTU を 指 定 し ま す 。
lxc.net.[i].name
イ ン タ ー フ ェ ー ス 名 は 動 的 に 割 り 当 て ら れ ま す 。 し か し 、 も し コ ン テ ナ が 使 用 す る 設 定 フ ァ イ ル が 一 般 的 な 名 前 を 使 用 す る た め に 、 他 の 特 定 の 名 前 が 必 要 で あ れ ば (例 え ば eth0 な ど )、 コ ン テ ナ 内 の イ ン タ ー フ ェ ー ス は 、 こ の オ プ シ ョ ン で 指 定 し た 名 前 に リ ネ ー ム さ れ ま す 。
lxc.net.[i].hwaddr
仮 想 イ ン タ ー フ ェ ー ス の MAC ア ド レ ス は 、 デ フ ォ ル ト で は 動 的 に 割 り 当 て ら れ ま す 。 し か し 、 MAC ア ド レ ス の 衝 突 や 、 リ ン ク ロ ー カ ル IPv6 ア ド レ ス を 常 に 同 じ に し た 場 合 な ど は 、 こ の オ プ シ ョ ン が 必 要 で す 。 ア ド レ ス 中 の "x" と い う 文 字 は 、 ラ ン ダ ム な 値 に 置 き 換 え ら れ ま す 。 こ れ に よ り テ ン プ レ ー ト に hwaddr を 設 定 す る こ と が 可 能 に な り ま す 。
lxc.net.[i].ipv4.address
仮 想 イ ン タ ー フ ェ ー ス に 割 り 当 て る ipv4 ア ド レ ス を 指 定 し ま す 。 複 数 行 に よ り 複 数 の ipv4 ア ド レ ス を 指 定 し ま す 。 こ の ア ド レ ス は x.y.z.t/m と い う フ ォ ー マ ッ ト で 指 定 し ま す 。 例 ) 192.168.1.123/24 IP ア ド レ ス の あ と に オ プ シ ョ ン で ブ ロ ー ド キ ャ ス ト ア ド レ ス を 指 定 で き ま す 。 例 ) 192.168.1.123/24 255.255.255.255 指 定 し な け れ ば IP ア ド レ ス か ら 自 動 的 に 計 算 さ れ ま す 。
lxc.net.[i].ipv4.gateway
コ ン テ ナ で ゲ ー ト ウ ェ イ と し て 使 う IPv4 ア ド レ ス を 指 定 し ま す 。 ア ド レ ス は x.y.z.t と い う フ ォ ー マ ッ ト で す 。 例 ) 192.168.1.123 auto と い う 特 別 な 値 を 指 定 で き ま す 。 こ れ は ( lxc.net.[i].link で 指 定 し た ) ブ リ ッ ジ イ ン タ ー フ ェ ー ス の 最 初 の ア ド レ ス を 使 用 し 、 そ れ を ゲ ー ト ウ ェ イ に 使 う と い う 意 味 に な り ま す 。 auto は ネ ッ ト ワ ー ク タ イ プ と し て veth 、 macvlan 、 ipvlan を 指 定 し て い る 時 だ け 有 効 と な り ま す 。 特 別 な 値 で あ る dev も 設 定 で き ま す 。 こ れ は デ バ イ ス の ル ー ト と し て デ フ ォ ル ト ゲ ー ト ウ ェ イ を 設 定 す る と い う 意 味 で す 。 こ れ は 主 に 、 IPVLAN の よ う な レ イ ヤ 3 の ネ ッ ト ワ ー ク モ ー ド で 使 用 し ま す 。
lxc.net.[i].ipv6.address
仮 想 イ ン タ ー フ ェ ー ス に 割 り 当 て る ipv6 ア ド レ ス を 指 定 し ま す 。 複 数 行 に よ り 複 数 の ipv6 ア ド レ ス を 指 定 し ま す 。 こ の ア ド レ ス は x::y/m と い う フ ォ ー マ ッ ト で 指 定 し ま す 。 例 ) 2003:db8:1:0:214:1234:fe0b:3596/64
lxc.net.[i].ipv6.gateway
コ ン テ ナ で ゲ ー ト ウ ェ イ と し て 使 う IPv6 ア ド レ ス を 指 定 し ま す 。 ア ド レ ス は x::y と い う フ ォ ー マ ッ ト で す 。 例 ) 2003:db8:1:0::1 auto と い う 特 別 な 値 を 記 述 す る 事 も 可 能 で す 。 こ れ は ( lxc.net.[i].link で 指 定 し た ) ブ リ ッ ジ イ ン タ ー フ ェ ー ス の 最 初 の ア ド レ ス を 使 用 し 、 そ れ を ゲ ー ト ウ ェ イ に 使 う と い う 意 味 に な り ま す 。 auto は ネ ッ ト ワ ー ク タ イ プ と し て veth 、 macvlan 、 ipvlan を 指 定 し て い る 時 だ け 有 効 と な り ま す 。 特 別 な 値 で あ る dev も 設 定 で き ま す 。 こ れ は デ バ イ ス の ル ー ト と し て デ フ ォ ル ト ゲ ー ト ウ ェ イ を 設 定 す る と い う 意 味 で す 。 こ れ は 主 に 、 IPVLAN の よ う な レ イ ヤ 3 の ネ ッ ト ワ ー ク モ ー ド で 使 用 し ま す 。
lxc.net.[i].script.up
ホ ス ト 側 か ら 使 わ れ る 、 ネ ッ ト ワ ー ク の 作 成 と 設 定 が 済 ん だ 後 に 実 行 す る ス ク リ プ ト を 指 定 し ま す 。
す べ て の フ ッ ク で 追 加 の 情 報 が 使 え ま す 。 以 下 の 情 報 が ス ク リ プ ト に 提 供 さ れ ま す :
|
• |
LXC_HOOK_TYPE: フ ッ ク タ イ プ 。 ’up’ か ’down’ の い ず れ か で す |
||
|
• |
LXC_HOOK_SECTION: セ ク シ ョ ン タ イ プ と し て ’net’ が 設 定 さ れ ま す |
||
|
• |
LXC_NET_TYPE: ネ ッ ト ワ ー ク タ イ プ 。 有 効 な ネ ッ ト ワ ー ク タ イ プ の う ち の ひ と つ で す (例 : ’vlan’, ’macvlan’, ’ipvlan’, ’veth’) |
||
|
• |
LXC_NET_PARENT: ホ ス ト 上 の 親 デ バ イ ス 名 。 こ れ は ネ ッ ト ワ ー ク タ イ プ が ’macvlan’、 ’veth’、 ’phys’ の ど れ か の と き だ け 設 定 さ れ ま す |
||
|
• |
LXC_NET_PEER: ホ ス ト 上 の ピ ア デ バ イ ス 名 。 こ れ は ネ ッ ト ワ ー ク タ イ プ が ’veth’ の 場 合 の み 設 定 さ れ ま す 。 こ の 情 報 は lxc.hook.version が 1 に 設 定 さ れ て い る 場 合 の み 設 定 さ れ ま す |
こ の 情 報 が 環 境 変 数 の 形 で 提 供 さ れ る か 、 ス ク リ プ ト へ の 引 数 の 形 で 提 供 さ れ る か は lxc.hook.version の 値 に よ っ て 決 ま り ま す 。 も し lxc.hook.version が 1 に 設 定 さ れ て い る 場 合 は 、 環 境 変 数 の 形 で 提 供 さ れ ま す 。 も し 0 が 設 定 さ れ て い る 場 合 は 、 ス ク リ プ ト へ の 引 数 と し て 提 供 さ れ ま す 。
ス
ク リ プ ト か ら
の 標 準 出 力 は debug
レ ベ ル で ロ ギ
ン グ さ れ ま す
。 標 準 エ ラ ー
出 力 は ロ ギ ン
グ さ れ ま せ ん
。 し か し 、 フ
ッ ク の 標 準 エ
ラ ー 出 力 を 標
準 出 力 に リ ダ
イ レ ク ト す る
こ と に よ り 保
存 す る こ と は
可 能 で す 。
lxc.net.[i].script.down
ホ ス ト 側 か ら 使 わ れ る 、 ネ ッ ト ワ ー ク を 破 壊 す る 前 に 実 行 す る ス ク リ プ ト を 指 定 し ま す 。
す べ て の フ ッ ク で 追 加 の 情 報 が 使 え ま す 。 以 下 の 情 報 が ス ク リ プ ト に 提 供 さ れ ま す :
|
• |
LXC_HOOK_TYPE: フ ッ ク タ イ プ 。 ’up’ か ’down’ の い ず れ か で す |
||
|
• |
LXC_HOOK_SECTION: セ ク シ ョ ン タ イ プ と し て ’net’ が 設 定 さ れ ま す |
||
|
• |
LXC_NET_TYPE: ネ ッ ト ワ ー ク タ イ プ 。 有 効 な ネ ッ ト ワ ー ク タ イ プ の う ち の ひ と つ で す (例 : ’vlan’, ’macvlan’, ’ipvlan’, ’veth’) |
||
|
• |
LXC_NET_PARENT: ホ ス ト 上 の 親 デ バ イ ス 名 。 こ れ は ネ ッ ト ワ ー ク タ イ プ が ’macvlan’、 ’veth’、 ’phys’ の ど れ か の と き だ け 設 定 さ れ ま す |
||
|
• |
LXC_NET_PEER: ホ ス ト 上 の ピ ア デ バ イ ス 名 。 こ れ は ネ ッ ト ワ ー ク タ イ プ が ’veth’ の 場 合 の み 設 定 さ れ ま す 。 こ の 情 報 は lxc.hook.version が 1 に 設 定 さ れ て い る 場 合 の み 設 定 さ れ ま す |
こ の 情 報 が 環 境 変 数 の 形 で 提 供 さ れ る か 、 ス ク リ プ ト へ の 引 数 の 形 で 提 供 さ れ る か は lxc.hook.version の 値 に よ っ て 決 ま り ま す 。 も し lxc.hook.version が 1 に 設 定 さ れ て い る 場 合 は 、 環 境 変 数 の 形 で 提 供 さ れ ま す 。 も し 0 が 設 定 さ れ て い る 場 合 は 、 ス ク リ プ ト へ の 引 数 と し て 提 供 さ れ ま す 。
ス ク リ プ ト か ら の 標 準 出 力 は debug レ ベ ル で ロ ギ ン グ さ れ ま す 。 標 準 エ ラ ー 出 力 は ロ ギ ン グ さ れ ま せ ん 。 し か し 、 フ ッ ク の 標 準 エ ラ ー 出 力 を 標 準 出 力 に リ ダ イ レ ク ト す る こ と に よ り 保 存 す る こ と は 可 能 で す 。
新 し い 擬 似 端 末 の イ ン ス タ ン ス (DEVPTS)
さ
ら に 厳 し い 隔
離 の た め に 、
コ ン テ ナ は 自
身 の プ ラ イ ベ
ー ト な pseudo tty (擬 似
端 末 ) を 持 つ こ
と が 可 能 で す
。
lxc.pty.max
も し 設 定 さ れ た 場 合 、 コ ン テ ナ は 新 し い pseudo tty イ ン ス タ ン ス を 持 ち 、 そ れ を 自 身 の プ ラ イ ベ ー ト と し ま す 。 こ の 値 は pty イ ン ス タ ン ス に 許 可 さ れ る pseudo tty の 最 大 数 を 指 定 し ま す (こ の 制 限 は ま だ 実 装 さ れ て い ま せ ん )。
コ ン テ ナ の シ ス テ ム コ ン ソ ー ル
コ
ン テ ナ で ル ー
ト フ ァ イ ル シ
ス テ ム を 持 つ
よ う に 設 定 さ
れ て お り 、 inittab
フ ァ イ ル で コ
ン ソ ー ル の 使
用 が 設 定 さ れ
て い る 場 合 、
こ の コ ン ソ ー
ル の 出 力 が ど
こ に な さ れ る
の か を 指 定 し
た い と 思 う で
し ょ う 。
lxc.console.buffer.size
こ の オ プ シ ョ ン を 設 定 す る と 、 liblxc は イ ン メ モ リ の リ ン グ バ ッ フ ァ を 割 り 当 て ま す 。 コ ン テ ナ の コ ン ソ ー ル は リ ン グ バ ッ フ ァ に 出 力 さ れ ま す 。 リ ン グ バ ッ フ ァ は 少 な く と も 標 準 ペ ー ジ サ イ ズ の 大 き さ で な け れ ば な り ま せ ん 。 ペ ー ジ サ イ ズ よ り 小 さ い 値 を 与 え た 場 合 は 、 liblxc は ペ ー ジ サ イ ズ の リ ン グ バ ッ フ ァ を 割 り 当 て ま す 。 ペ ー ジ サ イ ズ は 通 常 は 4KB で す 。 ’auto’ を 指 定 す る と 、 liblxc は 128KB の リ ン グ バ ッ フ ァ を 割 り 当 て ま す 。 リ ン グ バ ッ フ ァ サ イ ズ を 数 値 指 定 す る 場 合 、 値 が バ イ ト に 変 換 さ れ る と き に 2 の 累 乗 に な り ま す 。 サ イ ズ 接 頭 辞 付 き の 単 位 と し て ’KB’、 ’MB’、 ’GB’ が 使 え ま す 。 (こ の 場 合 の 変 換 は 1024 の 倍 数 に 基 づ い て い ま す 。 つ ま り ’KB’ == ’KiB’、 ’MB’ == ’MiB’、 ’GB’ == ’GiB’ と い う 意 味 で す 。 加 え て 、 単 位 の 大 文 字 小 文 字 は 無 視 さ れ ま す 。 す な わ ち ’kB’、 ’KB’、 ’Kb’ は 同 一 に 扱 わ れ ま す 。 )
lxc.console.size
liblxc は lxc.console.logfile で 指 定 し た コ ン ソ ー ル ロ グ の サ イ ズ を 、 こ の オ プ シ ョ ン で 設 定 し た 値 に 制 限 し ま す 。 ロ グ フ ァ イ ル の サ イ ズ は 少 な く と も 標 準 ペ ー ジ サ イ ズ で な け れ ば な り ま せ ん 。 ペ ー ジ サ イ ズ 以 下 の 値 を 設 定 し た 場 合 は 、 liblxc は ロ グ フ ァ イ ル の サ イ ズ を ペ ー ジ サ イ ズ に 設 定 し ま す 。 ペ ー ジ サ イ ズ は 通 常 は 4KB で す 。 ’auto’ を 指 定 す る と 、 liblxc は ロ グ フ ァ イ ル の サ イ ズ を 128KB に 制 限 し ま す 。 ロ グ フ ァ イ ル サ イ ズ の 値 を 数 値 指 定 す る 場 合 、 値 が バ イ ト に 変 換 さ れ る と き に 2 の 累 乗 に な り ま す 。 サ イ ズ 接 頭 辞 付 き の 単 位 と し て ’kB’、 ’MB’、 ’GB’ が 使 え ま す 。 (こ の 場 合 の 変 換 は 1024 の 倍 数 に 基 づ い て い ま す 。 つ ま り ’kB’ == ’KiB’、 ’MB’ == ’MiB’、 ’GB’ == ’GiB’ と い う 意 味 で す 。 加 え て 、 単 位 の 大 文 字 小 文 字 は 無 視 さ れ ま す 。 す な わ ち ’kB’、 ’KB’、 ’Kb’ は 同 一 に 扱 わ れ ま す 。 ) デ ィ ス ク 上 の コ ン ソ ー ル リ ン グ バ ッ フ ァ と ミ ラ ー に な る よ う に し た い 場 合 は 、 lxc.console.size と lxc.console.buffer.size の 値 を 同 じ 値 に 設 定 し ま す 。
lxc.console.logfile
コ ン ソ ー ル 出 力 を 書 き 込 む フ ァ イ ル の パ ス を 指 定 し ま す 。 デ ィ ス ク に 保 存 さ れ る リ ン グ バ ッ フ ァ ロ グ と 異 な り 、 こ の フ ァ イ ル は サ イ ズ が 大 き く な り 続 け る の で 、 フ ァ イ ル が ロ ー テ ー ト や 削 除 さ れ な い 限 り は 、 ユ ー ザ の デ ィ ス ク を い っ ぱ い に し て し ま う 可 能 性 が あ り ま す 。 こ の 問 題 は 、 イ ン メ モ リ の リ ン グ バ ッ フ ァ オ プ シ ョ ン で あ る 、 lxc.console.buffer.size と lxc.console.buffer.logfile を 使 う こ と で も 回 避 で き ま す 。
lxc.console.rotate
lxc.console.logfile で 指 定 し た コ ン ソ ー ル ロ グ フ ァ イ ル を ロ ー テ ー ト す る か ど う か を 指 定 し ま す 。 ユ ー ザ は ロ グ フ ァ イ ル を ロ ー テ ー ト す る よ う に API リ ク エ ス ト を 送 る こ と が で き ま す 。 古 い ロ グ フ ァ イ ル は 、 元 の フ ァ イ ル 名 と 同 じ 名 前 の フ ァ イ ル に ".1" と い う サ フ ィ ッ ク ス が 付 け 加 わ り ま す 。 ユ ー ザ が コ ン ソ ー ル ロ グ で デ ィ ス ク が い っ ぱ い に な る の を 防 ぐ に は 、 ロ グ フ ァ イ ル を ロ ー テ ー ト し 、 不 要 な ロ グ フ ァ イ ル を 削 除 し て く だ さ い 。 こ の 問 題 は イ ン メ モ リ の リ ン グ バ ッ フ ァ オ プ シ ョ ン で あ る lxc.console.buffer.size と lxc.console.buffer.logfile を 使 う こ と で も 防 げ ま す 。
lxc.console.path
コ ン ソ ー ル を 割 り 当 て る デ バ イ ス の パ ス を 指 定 し ま す 。 ’none’ と い う キ ー ワ ー ド は 、 単 純 に コ ン ソ ー ル を 無 効 に し ま す 。 ’none’ を 指 定 し 、 コ ン テ ナ 内 の コ ン ソ ー ル に 対 す る デ バ イ ス ノ ー ド を /dev/console に 作 成 す る か 、 も し く は ホ ス ト の /dev/console を コ ン テ ナ 内 の /dev/console に bind mount す る 場 合 、 そ の コ ン テ ナ は ホ ス ト の /dev/console へ 直 接 ア ク セ ス を 行 う こ と に 注 意 が 必 要 で す 。 そ の コ ン テ ナ が デ バ イ ス へ の 書 き 込 み 権 を 持 っ て い る 場 合 は 危 険 で す の で 、 注 意 し て こ の 指 定 を 使 用 す る 必 要 が あ り ま す 。
TTY を 通 し た コ ン ソ ー ル
こ
の オ プ シ ョ ン
は コ ン テ ナ が root
フ ァ イ ル シ ス
テ ム を 持 つ よ
う に 設 定 さ れ
て お り 、 inittab フ
ァ イ ル で tty 上 に
getty の 起 動 が 設 定
さ れ て い る 場
合 に 役 に 立 ち
ま す 。 こ の オ
プ シ ョ ン は コ
ン テ ナ で 利 用
で き る tty の 数 を
指 定 し ま す 。
inittab フ ァ イ ル に
設 定 す る getty の 数
は 、 こ の オ プ
シ ョ ン の 指 定
す る tty の 数 よ り
大 き く し て は
い け ま せ ん 。
さ も な け れ ば
、 超 過 し た 分
の getty セ ッ シ ョ ン
は コ ン ソ ー ル
か /var/log/messages に う っ
と う し い メ ッ
セ ー ジ を 生 死
を 表 示 し な が
ら 、 永 久 に 生
死 を 繰 り 返 す
で し ょ う 。
lxc.tty.max
コ ン テ ナ に 作 成 出 来 る tty の 数 を 指 定 し ま す 。
コ ン ソ ー ル デ バ イ ス の 位 置
LXC の
コ ン ソ ー ル は
ホ ス ト に よ っ
て 作 ら れ 、 コ
ン テ ナ 内 で 要
求 さ れ た デ バ
イ ス に bind マ ウ ン
ト さ れ た Unix98 PTY 経
由 で 提 供 さ れ
ま す 。 デ フ ォ
ル ト で は
/dev/console
と
/dev/ttyN
に bind マ ウ
ン ト さ れ ま す
。 こ れ は ゲ ス
ト 内 で の パ ッ
ケ ー ジ の ア ッ
プ グ レ ー ド を
妨 げ る 可 能 性
が あ り ま す 。
な の で
/dev
以 下
の デ ィ レ ク ト
リ を 指 定 す る
こ と が で き ま
す 。 LXC は こ の デ
ィ レ ク ト リ 以
下 に フ ァ イ ル
を 作 成 し 、 こ
れ ら の フ ァ イ
ル を bind マ ウ ン ト
し ま す 。 そ し
て 、 こ れ ら の
(作 成 さ れ た ) フ
ァ イ ル は
/dev/console
と
/dev/ttyN
に シ ン
ボ リ ッ ク リ ン
ク さ れ ま す 。
シ ン ボ リ ッ ク
リ ン ク を 消 去
し た り 置 き 換
え た り す る こ
と は 可 能 で す
か ら 、 パ ッ ケ
ー ジ の ア ッ プ
グ レ ー ド は 成
功 し ま す 。
lxc.tty.dir
コ ン テ ナ の コ ン ソ ー ル デ バ イ ス を 作 成 す る た め の /dev 以 下 の デ ィ レ ク ト リ を 指 定 し ま す 。 LXC は /dev/console に 対 す る bind mount や /dev/console デ バ イ ス ノ ー ド を こ の デ ィ レ ク ト リ 以 下 に 移 動 す る こ と に 注 意 が 必 要 で す 。
/DEV デ ィ レ ク ト リ
デ
フ ォ ル ト で は
、 lxc は コ ン テ ナ
の
/dev
以 下 に fd, stdin,
stdout, stderr の シ ン ボ リ
ッ ク リ ン ク を
作 成 し ま す が
、 自 動 的 に は
デ バ イ ス ノ ー
ド の エ ン ト リ
は 作 成 し ま せ
ん 。 こ れ は 、
コ ン テ ナ の rootfs で
必 要 な 設 定 を
行 え る よ う に
す る も の で す
。 lxc.autodev が 1 に 設 定
さ れ て い る 場
合 、 コ ン テ ナ
の rootfs を マ ウ ン ト
し た 後 、 LXC は 新
し い tmpfs を
/dev
以
下 に マ ウ ン ト
し ま す (デ フ ォ
ル ト で は 500k 制 限
で マ ウ ン ト 、
lxc.autodev.tmpfs.size で 指 定 可
能 )。 そ し て 初
期 デ バ イ ス の
最 小 限 の セ ッ
ト を 作 成 し ま
す 。 こ れ は 、
"systemd" ベ ー ス の
"init" 環 境 の コ
ン テ ナ を 起 動
す る 時 に 通 常
必 要 で す が 、
他 の 環 境 の 場
合 は オ プ シ ョ
ナ ル な も の で
す 。 コ ン テ ナ
の /dev デ ィ レ ク ト
リ 内 の 追 加 デ
バ イ ス は
lxc.hook.autodev
フ ッ ク を 使 用
し て 作 成 さ れ
ま す 。
lxc.autodev
コ ン テ ナ の 起 動 時 に LXC が /dev を マ ウ ン ト し て 最 小 限 の /dev を 作 成 す る の を 止 め る に は 、 こ の 値 を 0 に 設 定 し て く だ さ い 。
lxc.autodev.tmpfs.size
こ の 設 定 で /dev tmpfs の サ イ ズ を 指 定 し ま す 。 デ フ ォ ル ト 値 は 500000 (500K) で す 。 こ の パ ラ メ ー タ を 値 な し で 使 う と 、 デ フ ォ ル ト 値 が 使 わ れ ま す 。
マ ウ ン ト ポ イ ン ト
マ ウ ン ト ポ イ ン ト セ ク シ ョ ン は 、 マ ウ ン ト す る た め の 区 別 さ れ た 場 所 を 指 定 し ま す 。 こ れ ら の マ ウ ン ト ポ イ ン ト は 、 コ ン テ ナ だ け に 見 え 、 コ ン テ ナ 外 で 実 行 さ れ る プ ロ セ ス か ら 見 え る こ と は あ り ま せ ん 。 例 え ば 、 /etc や /var や /home を マ ウ ン ト す る と き に 役 に 立 つ で し ょ う 。
注
意 : 通 常 LXC は 、 マ
ウ ン ト 対 象 と
相 対 パ ス 指 定
の バ イ ン ド マ
ウ ン ト を 、 適
切 に コ ン テ ナ
ル ー ト 以 下 に
閉 じ 込 め ま す
。 こ れ は 、 ホ
ス ト の デ ィ レ
ク ト リ や フ ァ
イ ル に 対 し て
重 ね 合 わ せ を
行 う よ う な マ
ウ ン ト に よ る
攻 撃 を 防 ぎ ま
す 。 (絶 対 パ ス
指 定 の マ ウ ン
ト ソ ー ス 中 の
各 パ ス が シ ン
ボ リ ッ ク リ ン
ク で あ る 場 合
は 無 視 さ れ ま
す 。 ) し か し 、
も し コ ン テ ナ
の 設 定 が 最 初
に 、 /home/joe の よ う
な コ ン テ ナ ユ
ー ザ の コ ン ト
ロ ー ル 配 下 に
あ る デ ィ レ ク
ト リ を 、 コ ン
テ ナ 中 の あ る
path
に マ ウ ン ト
し 、 そ の 後
path
以 下 で マ ウ ン
ト が 行 わ れ る
よ う な 場 合 、
コ ン テ ナ ユ ー
ザ が タ イ ミ ン
グ を 見 計 ら っ
て 自 身 の ホ ー
ム デ ィ レ ク ト
リ 以 下 で シ ン
ボ リ ッ ク リ ン
ク を 操 作 す る
よ う な TOCTTOU 攻 撃
が 成 立 す る 可
能 性 が あ り ま
す 。
lxc.mount.fstab
マ ウ ン ト 情 報 の 書 か れ た fstab フ ォ ー マ ッ ト で 書 か れ た フ ァ イ ル の 場 所 を 指 定 し ま す 。 マ ウ ン ト す る 場 所 は 相 対 バ ス で 書 く こ と が で き ま す 。 そ し て 、 ほ と ん ど の 場 合 に コ ン テ ナ の root か ら の 相 対 パ ス と な る は ず で す 。 例 え ば 、 以 下 の よ う に 書 き ま す 。
proc proc proc nodev,noexec,nosuid 0 0
こ の 例 は 、 root フ ァ イ ル シ ス テ ム が ど こ に あ っ て も 、 コ ン テ ナ の /proc 以 下 に proc フ ァ イ ル シ ス テ ム を マ ウ ン ト し ま す 。 こ れ は 、 ブ ロ ッ ク デ バ イ ス が バ ッ ク エ ン ド の フ ァ イ ル シ ス テ ム だ け で な く 、 コ ン テ ナ の ク ロ ー ン に も 柔 軟 に 対 応 で き ま す 。
フ ァ イ ル シ ス テ ム が イ メ ー ジ フ ァ イ ル や ブ ロ ッ ク デ バ イ ス か ら マ ウ ン ト さ れ て い る 場 合 、 3 つ 目 の フ ィ ー ル ド (fs_vfstype) は mount (8) の よ う に auto を 指 定 す る こ と は で き ず 、 明 確 に 指 定 し な け れ ば い け ま せ ん 。
lxc.mount.entry
fstab フ ォ ー マ ッ ト の 一 行 と 同 じ フ ォ ー マ ッ ト の マ ウ ン ト ポ イ ン ト の 指 定 を し ま す 。 加 え て 、 LXC で は rshared や rprivate と い っ た マ ウ ン ト ・ プ ロ パ ゲ ー シ ョ ン オ プ シ ョ ン と 、 独 自 の 3 つ の マ ウ ン ト オ プ シ ョ ン が 使 え ま す 。 optional は 、 マ ウ ン ト が 失 敗 し て も 失 敗 を 返 さ ず に 無 視 し ま す 。 create=dir と create=file は 、 マ ウ ン ト ポ イ ン ト を マ ウ ン ト す る 際 に デ ィ レ ク ト リ も し く は フ ァ イ ル を 作 成 し ま す 。 relative を 指 定 す る と 、 マ ウ ン ト さ れ た コ ン テ ナ ル ー ト か ら の 相 対 パ ス と し て 取 得 さ れ ま す 。
dev/null proc/kcore none bind,relative 0 0
は dev/null を ${ LXC_ROOTFS_MOUNT }/dev/null と 展 開 し 、 コ ン テ ナ 内 の proc/kcore に マ ウ ン ト し ま す 。
lxc.mount.auto
標 準 の カ ー ネ ル フ ァ イ ル シ ス テ ム で 自 動 的 に マ ウ ン ト す る も の を 指 定 し ま す 。 こ れ は 劇 的 に 設 定 を 容 易 に す る 可 能 性 が あ り ま す 。
|
• |
proc:mixed (or proc ): /proc を 読 み 書 き 可 能 で マ ウ ン ト し ま す 。 た だ し 、 /proc/sys と /proc/sysrq-trigger は 、 セ キ ュ リ テ ィ と コ ン テ ナ の 隔 離 の 目 的 で リ ー ド オ ン リ ー で 再 マ ウ ン ト さ れ ま す 。 |
||
|
• |
proc:rw : /proc を 読 み 書 き 可 能 で マ ウ ン ト し ま す 。 |
||
|
• |
sys:mixed (or sys ): /sys/devices/virtual/net の み 書 き 込 み 可 能 で 、 そ の 他 の /sys は リ ー ド オ ン リ ー で マ ウ ン ト し ま す 。 |
||
|
• |
sys:ro : /sys を 、 セ キ ュ リ テ ィ と コ ン テ ナ の 隔 離 の 目 的 で リ ー ド オ ン リ ー で マ ウ ン ト し ま す 。 |
||
|
• |
sys:rw : /sys を 読 み 書 き 可 能 で マ ウ ン ト し ま す 。 |
||
|
• |
cgroup:mixed : /sys/fs/cgroup を tmpfs で マ ウ ン ト し 、 そ の コ ン テ ナ の 追 加 が 行 わ れ た 全 て の 階 層 に 対 す る デ ィ レ ク ト リ を 作 成 し 、 そ れ ら の 階 層 内 に cgroup 名 で サ ブ デ ィ レ ク ト リ を 作 成 し 、 そ の コ ン テ ナ 自 身 の cgroup を そ の デ ィ レ ク ト リ に バ イ ン ド マ ウ ン ト し ま す 。 コ ン テ ナ は 自 身 の cgroup デ ィ レ ク ト リ に 書 き 込 み が 可 能 で す が 、 親 デ ィ レ ク ト リ は リ ー ド オ ン リ ー で 再 マ ウ ン ト さ れ て い る た め 書 き 込 め ま せ ん 。 |
||
|
• |
cgroup:mixed:force : force を 指 定 す る と 、 LXC は あ ら ゆ る 状 況 で コ ン テ ナ の た め の cgroup マ ウ ン ト を 実 行 し ま す 。 そ れ 以 外 は cgroup:mixed と 同 様 で す 。 こ れ は 主 に cgroup 名 前 空 間 が 有 効 な 場 合 に 便 利 で す 。 こ の 場 合 は 完 全 に 安 全 で す の で 、 LXC は 通 常 コ ン テ ナ の init バ イ ナ リ が cgroup を マ ウ ン ト し た ま ま の 状 態 に し て お き ま す 。 |
||
|
• |
cgroup:ro : cgroup:mixed と 同 様 に マ ウ ン ト さ れ ま す が 、 全 て リ ー ド オ ン リ ー で マ ウ ン ト さ れ ま す 。 |
||
|
• |
cgroup:ro:force : force を 指 定 す る と 、 LXC は あ ら ゆ る 状 況 で コ ン テ ナ の た め の cgroup マ ウ ン ト を 実 行 し ま す 。 そ れ 以 外 は cgroup:ro と 同 様 で す 。 こ れ は 主 に cgroup 名 前 空 間 が 有 効 な 場 合 に 便 利 で す 。 こ の 場 合 は 完 全 に 安 全 で す の で 、 LXC は 通 常 コ ン テ ナ の init バ イ ナ リ が cgroup を マ ウ ン ト し た ま ま の 状 態 に し て お き ま す 。 |
||
|
• |
cgroup:rw : cgroup:mixed と 同 様 に マ ウ ン ト さ れ ま す が 、 全 て 読 み 書 き 可 能 で マ ウ ン ト さ れ ま す 。 コ ン テ ナ 自 身 の cgroup に 至 る ま で の パ ス も 書 き 込 み 可 能 に な る こ と に 注 意 が 必 要 で す が 、 cgroup フ ァ イ ル シ ス テ ム に は な ら ず 、 /sys/fs/cgroup の tmpfs の 一 部 分 に な る で し ょ う 。 |
||
|
• |
cgroup:rw:force : force を 指 定 す る と 、 LXC は あ ら ゆ る 状 況 で コ ン テ ナ の た め の cgroup マ ウ ン ト を 実 行 し ま す 。 そ れ 以 外 は cgroup:rw と 同 様 で す 。 こ れ は 主 に cgroup 名 前 空 間 が 有 効 な 場 合 に 便 利 で す 。 こ の 場 合 は 完 全 に 安 全 で す の で 、 LXC は 通 常 コ ン テ ナ の init バ イ ナ リ が cgroup を マ ウ ン ト し た ま ま の 状 態 に し て お き ま す 。 |
||
|
• |
cgroup (マ ウ ン ト オ プ シ ョ ン な し の 場 合 ): コ ン テ ナ が CAP_SYS_ADMIN ケ ー パ ビ リ テ ィ を 保 持 し て い る 場 合 、 cgroup:rw と な り ま す 。 保 持 し て い な い 場 合 、 cgroup:mixed と な り ま す 。 |
||
|
• |
cgroup-full:mixed : /sys/fs/cgroup を tmpfs で マ ウ ン ト し 、 そ の コ ン テ ナ の 追 加 が 行 わ れ た 全 て の 階 層 構 造 に 対 す る デ ィ レ ク ト リ を 作 製 し 、 ホ ス ト か ら コ ン テ ナ ま で の 階 層 構 造 を 全 て バ イ ン ド マ ウ ン ト し 、 コ ン テ ナ 自 身 の cgroup を 除 い て リ ー ド オ ン リ ー に し ま す 。 cgroup と 比 べ る と 、 コ ン テ ナ 自 身 の cgroup に 至 る ま で の 全 て の パ ス が tmpfs の 下 層 の シ ン プ ル な デ ィ レ ク ト リ と な り 、 コ ン テ ナ 自 身 の cgroup の 外 で は リ ー ド オ ン リ ー に な り ま す が 、 /sys/fs/cgroup/$hierarchy は ホ ス ト の 全 て の cgroup 階 層 構 造 を 含 み ま す 。 こ れ に よ り 、 コ ン テ ナ に は か な り の 情 報 が 漏 洩 し ま す 。 |
||
|
• |
cgroup-full:mixed:force : force を 指 定 す る と 、 LXC は あ ら ゆ る 状 況 で コ ン テ ナ の た め の cgroup マ ウ ン ト を 実 行 し ま す 。 そ れ 以 外 は cgroup-full:mixed と 同 様 で す 。 こ れ は 主 に cgroup 名 前 空 間 が 有 効 な 場 合 に 便 利 で す 。 こ の 場 合 は 完 全 に 安 全 で す の で 、 LXC は 通 常 コ ン テ ナ の init バ イ ナ リ が cgroup を マ ウ ン ト し た ま ま の 状 態 に し て お き ま す 。 |
||
|
• |
cgroup-full:ro : cgroup-full:mixed と 同 様 に マ ウ ン ト さ れ ま す が 、 全 て リ ー ド オ ン リ ー で マ ウ ン ト さ れ ま す 。 |
||
|
• |
cgroup-full:ro:force : force を 指 定 す る と 、 LXC は あ ら ゆ る 状 況 で コ ン テ ナ の た め の cgroup マ ウ ン ト を 実 行 し ま す 。 そ れ 以 外 は cgroup-full:ro と 同 様 で す 。 こ れ は 主 に cgroup 名 前 空 間 が 有 効 な 場 合 に 便 利 で す 。 こ の 場 合 は 完 全 に 安 全 で す の で 、 LXC は 通 常 コ ン テ ナ の init バ イ ナ リ が cgroup を マ ウ ン ト し た ま ま の 状 態 に し て お き ま す 。 |
||
|
• |
cgroup-full:rw : cgroup-full:mixed と 同 様 に マ ウ ン ト さ れ ま す が 、 全 て 読 み 書 き 可 能 で マ ウ ン ト さ れ ま す 。 こ の 場 合 、 コ ン テ ナ は 自 身 の cgroup か ら 脱 出 す る 可 能 性 が あ る こ と に 注 意 し て く だ さ い (コ ン テ ナ が CAP_SYS_ADMIN を 持 ち 、 自 身 で cgroup フ ァ イ ル シ ス テ ム を マ ウ ン ト 可 能 な ら 、 い ず れ に せ よ そ の よ う に す る か も し れ な い こ と に も 注 意 し て く だ さ い )。 |
||
|
• |
cgroup-full:rw:force : force を 指 定 す る と 、 LXC は あ ら ゆ る 状 況 で コ ン テ ナ の た め の cgroup マ ウ ン ト を 実 行 し ま す 。 そ れ 以 外 は cgroup-full:rw と 同 様 で す 。 こ れ は 主 に cgroup 名 前 空 間 が 有 効 な 場 合 に 便 利 で す 。 こ の 場 合 は 完 全 に 安 全 で す の で 、 LXC は 通 常 コ ン テ ナ の init バ イ ナ リ が cgroup を マ ウ ン ト し た ま ま の 状 態 に し て お き ま す 。 |
||
|
• |
cgroup-full (マ ウ ン ト オ プ シ ョ ン な し の 場 合 ): コ ン テ ナ が CAP_SYS_ADMIN ケ ー パ ビ リ テ ィ を 保 持 し て い る 場 合 、 cgroup-full:rw と な り ま す 。 保 持 し て い な い 場 合 、 cgroup-full:mixed と な り ま す 。 |
cgroup 名 前 空 間 が 有 効 の 場 合 、 cgroup の 自 動 マ ウ ン ト の 指 定 は ど れ も 無 視 さ れ ま す 。 こ れ は 、 コ ン テ ナ が 自 身 で フ ァ イ ル シ ス テ ム を マ ウ ン ト す る た め 、 自 動 マ ウ ン ト が コ ン テ ナ の init を 混 乱 さ せ る 可 能 性 が あ る た め で す 。
cgroup フ ァ イ ル シ ス テ ム の 自 動 マ ウ ン ト が 有 効 の 場 合 、 /sys/fs/cgroup 以 下 の tmpfs は 常 に 読 み 書 き 可 能 で マ ウ ン ト さ れ る こ と に 注 意 が 必 要 で す (し か し :mixed と :ro の 場 合 は 、 個 々 の 階 層 の /sys/fs/cgroup/$hierarchy は 読 み 込 み 専 用 と な る で し ょ う )。 こ れ は Ubuntu の mountall (8) コ マ ン ド の 特 異 な 動 き に 対 処 す る た め の も の で す 。 特 異 な 動 き と は 、 /sys/fs/cgroup が 読 み 込 み 専 用 で マ ウ ン ト さ れ た 状 態 で 、 コ ン テ ナ が CAP_SYS_ADMIN を 持 た な い 場 合 、 /sys/fs/cgroup を 読 み 書 き 可 能 で 再 マ ウ ン ト し よ う と し て で き な い た め 、 コ ン テ ナ の ブ ー ト 時 に ユ ー ザ か ら の 入 力 を 待 っ て し ま う と い う も の で す 。
例 :
lxc.mount.auto =
proc sys cgroup
lxc.mount.auto = proc:rw sys:rw cgroup-full:rw
ル ー ト フ ァ イ ル シ ス テ ム
コ
ン テ ナ の ル ー
ト フ ァ イ ル シ
ス テ ム は 、 ホ
ス ト の ル ー ト
フ ァ イ ル シ ス
テ ム と 異 な る
よ う に す る こ
と も 可 能 で す
。
lxc.rootfs.path
コ ン テ ナ の ル ー ト フ ァ イ ル シ ス テ ム を 指 定 し ま す 。 こ の 値 は イ メ ー ジ フ ァ イ ル 、 デ ィ レ ク ト リ 、 ブ ロ ッ ク デ バ イ ス の ど れ か を 取 る こ と が で き ま す 。 も し 指 定 さ れ な い 場 合 、 コ ン テ ナ は ホ ス ト と ル ー ト フ ァ イ ル シ ス テ ム を 共 有 し ま す 。
デ ィ レ ク ト リ 、 単 純 な ブ ロ ッ ク デ バ イ ス の バ ッ ク エ ン ド を 持 つ コ ン テ ナ の 場 合 、 パ ス 名 を 使 う こ と が で き ま す 。 も し rootfs が nbd デ バ イ ス の 場 合 、 nbd:file:1 と い う 指 定 は file を nbd デ バ イ ス と し て 使 用 し 、 そ の 1 番 目 の パ ー テ ィ シ ョ ン が rootfs と し て マ ウ ン ト さ れ ま す 。 nbd:file と い う 指 定 は 、 nbd デ バ イ ス 自 身 を マ ウ ン ト し ま す 。 overlayfs:/lower:/upper と い う 指 定 は 、 rootfs は /lower と い う 読 み 込 み 専 用 で マ ウ ン ト さ れ る デ ィ レ ク ト リ の 上 に 、 /upper と い う デ ィ レ ク ト リ を 読 み 書 き 可 能 で 重 ね 合 わ せ て マ ウ ン ト し ま す 。 overlayfs は 、 複 数 の /lower デ ィ レ ク ト リ を 指 定 で き ま す 。 loop:/file は /file を loop デ バ イ ス と し て 使 用 し 、 loop デ バ イ ス を マ ウ ン ト し ま す 。
lxc.rootfs.mount
root フ ァ イ ル シ ス テ ム の 変 更 の 前 に 、 lxc.rootfs.path を 再 帰 的 に ど こ に バ イ ン ド す る の か を 指 定 し ま す 。 こ れ は pivot_root (8) シ ス テ ム コ ー ル が 確 実 に 成 功 す る 事 を 保 証 し ま す 。 ど ん な デ ィ レ ク ト リ で も 良 く 、 デ フ ォ ル ト で も 通 常 は 動 く は ず で す 。
lxc.rootfs.options
rootfs を マ ウ ン ト す る と き に 使 う マ ウ ン ト オ プ シ ョ ン 。 マ ウ ン ト オ プ シ ョ ン の フ ォ ー マ ッ ト は fstab で 使 う フ ォ ー マ ッ ト と 同 じ で す 。 加 え て 、 LXC で は 独 自 の idmap= マ ウ ン ト オ プ シ ョ ン が 使 え ま す 。 こ の オ プ シ ョ ン を 使 う と 、 LXC に 対 し て コ ン テ ナ の rootfs を idmapped マ ウ ン ト す る よ う に 指 示 で き ま す 。 こ れ は 、 コ ン テ ナ が 使 う ユ ー ザ ー 名 前 空 間 の ID マ ッ ピ ン グ と 一 致 さ せ る た め に 、 コ ン テ ナ の rootfs を 再 帰 的 に chown し た く な い 場 合 に 役 に 立 ち ま す 。 代 わ り に idmapped マ ウ ン ト が 使 え ま す 。 idmap= の 引 数 は 、 LXC が 開 い て rootfs を idmap す る の に 使 う ユ ー ザ ー 名 前 空 間 フ ァ イ ル を 指 す パ ス 、 も し く は "container" と い う 特 別 な 値 の ど ち ら か で す 。 "container" と い う 値 は 、 コ ン テ ナ の ユ ー ザ ー 名 前 空 間 を 使 っ て rootfs を idmap す る よ う に LXC に 指 示 し ま す 。
lxc.rootfs.managed
LXC が コ ン テ ナ の ス ト レ ー ジ を 管 理 し て い な い 場 合 は 、 こ の 値 を 0 に 設 定 し ま す 。 0 に 設 定 す る と 、 LXC は コ ン テ ナ の ス ト レ ー ジ を 変 更 し ま せ ん 。 デ フ ォ ル ト 値 は 1 で す 。
CONTROL GROUP ("CGROUP")
CONTROL GROUP セ ク シ ョ ン は 、 (lxc と は ) 別 の サ ブ シ ス テ ム の 設 定 を 含 み ま す 。 lxc は 、 こ の サ ブ シ ス テ ム 名 の 正 し さ は チ ェ ッ ク し ま せ ん 。 実 行 時 の エ ラ ー を 検 出 す る の に 不 便 で す が 、 別 の 将 来 の サ ブ シ ス テ ム を サ ポ ー ト 出 来 る と い う 有 利 な 点 も あ り ま す 。
カ ー ネ ル に お け る cgroup 実 装 は 長 年 に わ た っ て 大 き く 変 化 し て き ま し た 。 Linux 4.5 で 新 し い cgroup フ ァ イ ル シ ス テ ム の サ ポ ー ト が 追 加 さ れ ま し た 。 通 常 は "cgroup2" や "unified hierarchy"( 単 一 階 層 構 造 ) と 呼 ば れ て い ま す 。 そ れ 以 来 、 通 常 は 古 い cgroup フ ァ イ ル シ ス テ ム は "cgroup1" や "legacy hierarchies"( レ ガ シ ー 階 層 構 造 ) と 呼 ば れ て い ま す 。 こ の 2 つ の バ ー ジ ョ ン の 違 い に つ い て の 詳 細 な 説 明 は 、 cgroup の マ ニ ュ ア ル ペ ー ジ を ご 覧 く だ さ い 。
LXC は cgroup1( レ ガ シ ー 階 層 構 造 ) と cgroup2( 単 一 階 層 構 造 ) に 対 す る 設 定 を 、 異 な る 設 定 プ レ フ ィ ッ ク ス を 使 っ て 区 別 し て い ま す 。 cgroup1 に 対 す る 設 定 を 変 更 す る に は lxc.cgroup. と い う プ レ フ ィ ッ ク ス を 使 う 必 要 が あ り 、 cgroup2 の 設 定 を 変 更 す る に は lxc.cgroup2. を 使 う 必 要 が あ り ま す 。 LXC は 、 cgroup2 だ け が 使 わ れ て い る シ ス テ ム 上 の lxc.cgroup. を 無 視 し ま す 。 逆 に cgroup1 だ け が 使 わ れ て い る シ ス テ ム 上 の lxc.cgroup2. を 無 視 し ま す 。
cgroup 階 層 の 本 質 は 、 プ ロ セ ス を 階 層 的 に 構 造 化 す る 方 法 で す 。 通 常 は 、 cgroup 階 層 で は 1 つ 以 上 の 「 コ ン ト ロ ー ラ ー 」 が 有 効 に な っ て い ま す 。 通 常 、 cgroup 階 層 の 「 コ ン ト ロ ー ラ ー 」 は 階 層 に 従 っ て 特 定 の タ イ プ の シ ス テ ム リ ソ ー ス を 分 配 す る 役 割 を 果 た し ま す 。 コ ン ト ロ ー ラ ー に は "pids" コ ン ト ロ ー ラ ー 、 "cpu" コ ン ト ロ ー ラ ー 、 "memory" コ ン ト ロ ー ラ ー な ど が あ り ま す 。 し か し 、 シ ス テ ム リ ソ ー ス の 分 配 す る と い う 役 割 に 該 当 し な い コ ン ト ロ ー ラ ー も あ り ま す 。 こ の よ う な コ ン ト ロ ー ラ ー は 「 ユ ー テ ィ リ テ ィ ー 」 コ ン ト ロ ー ラ ー と 呼 ば れ た り し ま す 。 ユ ー テ ィ リ テ ィ ー コ ン ト ロ ー ラ ー の 1 つ に デ バ イ ス コ ン ト ロ ー ラ ー が あ り ま す 。 こ の コ ン ト ロ ー ラ ー は シ ス テ ム リ ソ ー ス を 分 配 す る 代 わ り に デ バ イ ス へ の ア ク セ ス を 管 理 で き ま す 。
cgroup1 で は 、 デ バ イ ス コ ン ト ロ ー ラ ー は 他 の 多 く の コ ン ト ロ ー ラ ー と 同 様 に 、 書 き 込 み で き る フ ァ イ ル の セ ッ ト と し て 実 装 さ れ て い ま し た 。 こ れ ら の フ ァ イ ル は "devices.allow" と "devices.deny" と い う 名 前 の フ ァ イ ル で し た 。 レ ガ シ ー デ バ イ ス コ ン ト ロ ー ラ ー は 「 許 可 リ ス ト ( allowlists) 」 と 「 拒 否 リ ス ト ( denylists) 」 の 両 方 を 実 装 で き ま し た 。
許 可 リ ス ト ( allowlist) と は 、 す べ て の デ バ イ ス へ の ア ク セ ス を ブ ロ ッ ク す る デ バ イ ス プ ロ グ ラ ム で す 。 特 定 の デ バ イ ス へ の ア ク セ ス を 行 う に は 、 特 定 の デ バ イ ス も し く は デ バ イ ス ク ラ ス に 対 す る 「 許 可 ル ー ル ( allow rules) 」 を 指 定 す る 必 要 が あ り ま す 。 一 方 、 拒 否 リ ス ト ( denylist) は デ フ ォ ル ト で す べ て の デ バ イ ス へ の ア ク セ ス を 許 可 す る デ バ イ ス プ ロ グ ラ ム で す 。 特 定 の デ バ イ ス へ の ア ク セ ス を 拒 否 す る に は 、 特 定 の デ バ イ ス も し く は デ バ イ ス ク ラ ス に 対 す る 「 拒 否 ル ー ル ( deny rules) 」 を 指 定 す る 必 要 が あ り ま す 。
cgroup2 で は 、 デ バ イ ス コ ン ト ロ ー ラ ー の 実 装 が 完 全 に 変 わ り ま し た 。 読 み 書 き す る フ ァ イ ル の 代 わ り に 、 BPF_PROG_TYPE_CGROUP_DEVICE の eBPF プ ロ グ ラ ム を cgroup に ア タ ッ チ で き ま す 。 カ ー ネ ル の 実 装 が 完 全 に 変 わ っ た の に も か か わ ら ず 、 LXC は cgroup1 の デ バ イ ス コ ン ト ロ ー ラ ー と cgroup2 の eBPF ベ ー ス の デ バ イ ス コ ン ト ロ ー ラ ー で 同 じ セ マ ン テ ィ ク ス に 従 え る よ う に し て い ま す 。 こ の あ と の 段 落 で は 、 cgroup2 の eBPF デ バ イ ス コ ン ト ロ ー ラ ー に 対 す る セ マ ン テ ィ ク ス を 説 明 し ま す 。
先 に 述 べ た よ う に 、 cgroup2 の eBPF ベ ー ス の デ バ イ ス コ ン ト ロ ー ラ ー に 対 す る デ バ イ ス ル ー ル を 指 定 す る フ ォ ー マ ッ ト は 、 cgroup1 の デ バ イ ス コ ン ト ロ ー ラ ー と 同 じ で す 。 た だ し 、 設 定 キ ー の プ レ フ ィ ッ ク ス は 変 更 さ れ て い ま す 。 具 体 的 に は 、 cgroup1 の デ バ イ ス コ ン ト ロ ー ラ ー に 対 す る デ バ イ ス ル ー ル は lxc.cgroup.devices.allow と lxc.cgroup.devices.deny を 使 っ て 指 定 し ま す 。 一 方 、 cgroup2 の eBPF ベ ー ス の コ ン ト ロ ー ラ ー で は lxc.cgroup2.devices.allow と lxc.cgroup2.devices.deny を 使 わ な け れ ば な り ま せ ん 。
|
• |
拒 否 リ ス ト ( denylist) の デ バ イ ス ル ー ル |
lxc.cgroup2.devices.deny = a
は 、 カ ー ネ ル に 対 し て デ フ ォ ル ト で す べ て の デ バ イ ス へ の ア ク セ ス を ブ ロ ッ ク す る よ う に LXC が 指 示 し ま す 。 デ バ イ ス へ の ア ク セ ス を 許 可 す る に は 、 デ バ イ ス に 対 す る 許 可 ル ー ル を lxc.cgroup2.devices.allow を 使 っ て 追 加 す る 必 要 が あ り ま す 。 こ れ は 「 許 可 リ ス ト 」 デ バ イ ス プ ロ グ ラ ム と し て 参 照 さ れ ま す 。
|
• |
許 可 リ ス ト ( allowlist) の デ バ イ ス ル ー ル |
lxc.cgroup2.devices.allow = a
は 、 カ ー ネ ル に 対 し て す べ て の デ バ イ ス へ の ア ク セ ス を デ フ ォ ル ト で 許 可 す る よ う に LXC が 指 示 し ま す 。 デ バ イ ス へ の ア ク セ ス を 拒 否 す る に は 、 デ バ イ ス に 対 す る 拒 否 ル ー ル を lxc.cgroup2.devices.deny を 使 っ て 追 加 す る 必 要 が あ り ま す 。 こ れ は 「 拒 否 リ ス ト 」 デ バ イ ス プ ロ グ ラ ム と し て 参 照 さ れ ま す 。
|
• |
前 述 の 2 つ の ル ー ル の い ず れ か を 指 定 す る と 、 そ れ 以 前 に 指 定 し て い た ル ー ル が す べ て ク リ ア さ れ ま す 。 つ ま り 、 デ バ イ ス リ ス ト が リ セ ッ ト さ れ ま す 。 |
||
|
• |
許 可 リ ス ト プ ロ グ ラ ム が 要 求 さ れ る 場 合 、 つ ま り デ フ ォ ル ト で す べ て の デ バ イ ス へ の ア ク セ ス が ブ ロ ッ ク さ れ て い る 場 合 、 個 別 の デ バ イ ス や デ バ イ ス ク ラ ス へ の 拒 否 ル ー ル を 指 定 し て も 無 視 さ れ ま す 。 |
||
|
• |
拒 否 リ ス ト プ ロ グ ラ ム が 要 求 さ れ る 場 合 、 つ ま り デ フ ォ ル ト で す べ て の デ バ イ ス へ の ア ク セ ス が 許 可 さ れ て い る 場 合 、 個 別 の デ バ イ ス や デ バ イ ス ク ラ ス へ の 許 可 ル ー ル を 指 定 し て も 無 視 さ れ ま す 。 |
例 え ば 、 次 の よ う な ル ー ル の 組
lxc.cgroup2.devices.deny
= a
lxc.cgroup2.devices.allow = c *:* m
lxc.cgroup2.devices.allow = b *:* m
lxc.cgroup2.devices.allow = c 1:3 rwm
は 、 許 可 リ ス ト ( allowlist) デ バ イ ス プ ロ グ ラ ム を 実 装 し ま す 。 つ ま り 、 カ ー ネ ル は こ の リ ス ト で 許 可 さ れ る よ う に 設 定 さ れ て い な い す べ て の デ バ イ ス へ の ア ク セ ス を ブ ロ ッ ク し ま す 。 こ の プ ロ グ ラ ム で は 、 す べ て の キ ャ ラ ク タ ー デ バ イ ス と ブ ロ ッ ク デ バ イ ス が 作 成 で き ま す が 、 読 み 書 き は /dev/null に 対 し て し か 行 な え ま せ ん 。
代 わ り に 先 の ル ー ル か ら 次 の よ う な ル ー ル の 組 に 変 更 し た と す る と 、
lxc.cgroup2.devices.allow
= a
lxc.cgroup2.devices.deny = c *:* m
lxc.cgroup2.devices.deny = b *:* m
lxc.cgroup2.devices.deny = c 1:3 rwm
LXC は カ ー ネ ル に 拒 否 リ ス ト ( denylist) の 実 装 を 指 示 し ま す 。 つ ま り カ ー ネ ル は こ の リ ス ト で 拒 否 を 指 定 し て い な い す べ て の デ バ イ ス へ の ア ク セ ス を 許 可 し ま す 。 こ の プ ロ グ ラ ム で は 、 キ ャ ラ ク タ ー デ バ イ ス と ブ ロ ッ ク デ バ イ ス は 作 成 で き ま せ ん 。 そ し て /dev/null の 読 み 書 き と 作 成 は 許 可 さ れ ま せ ん 。
こ こ で 、 同 じ プ ロ グ ラ ム で も 、 前 述 の よ う に デ バ イ ス の プ ロ グ ラ ム タ イ プ を 決 定 す る よ う な 「 グ ロ ー バ ル ル ー ル 」 が 続 い て い る 場 合 を 考 え て み ま し ょ う 。
lxc.cgroup2.devices.allow
= a
lxc.cgroup2.devices.deny = c *:* m
lxc.cgroup2.devices.deny = b *:* m
lxc.cgroup2.devices.deny = c 1:3 rwm
lxc.cgroup2.devices.allow = a
最 後 の 行 は 、 デ バ イ ス プ ロ グ ラ ム の タ イ プ を 変 更 せ ず に 、 LXC が デ バ イ ス リ ス ト を リ セ ッ ト し て し ま い ま す 。
次 の よ う に 指 定 し た 場 合 、
lxc.cgroup2.devices.allow
= a
lxc.cgroup2.devices.deny = c *:* m
lxc.cgroup2.devices.deny = b *:* m
lxc.cgroup2.devices.deny = c 1:3 rwm
lxc.cgroup2.devices.deny = a
前
の 例 と 違 っ て
最 後 の 行 に よ
っ て 、 LXC は デ バ
イ ス リ ス ト を
リ セ ッ ト し 、
許 可 リ ス ト (
allowlist) か ら 拒 否
リ ス ト ( denylist)
に プ ロ グ ラ ム
を 変 更 し て し
ま い ま す 。
lxc.cgroup.[control name].[controller file]
レ ガ シ ー cgroup 階 層 (cgroup v1) に 設 定 す る 値 を 指 定 し ま す 。 コ ン ト ロ ー ラ ー 名 は control group そ の ま ま の 名 前 で す 。 許 さ れ る 名 前 や 値 の 書 式 は LXC が 指 定 す る こ と は な く 、 コ ン テ ナ が 実 行 さ れ た 時 に 実 行 さ れ て い る Linux カ ー ネ ル の 機 能 に 依 存 し ま す 。 例 え ば lxc.cgroup.cpuset.cpus の よ う に な り ま す 。
lxc.cgroup2.[controller name].[controller file]
単 一 の cgroup 階 層 (cgroup v2) に 設 定 す る 値 を 指 定 し ま す 。 許 さ れ る 名 前 や 値 の 書 式 は LXC が 指 定 す る こ と は な く 、 コ ン テ ナ が 実 行 さ れ た 時 に 実 行 さ れ て い る Linux カ ー ネ ル の 機 能 に 依 存 し ま す 。 例 え ば lxc.cgroup2.memory.high の よ う に な り ま す 。
lxc.cgroup.dir
コ ン テ ナ の cgroup を 作 成 す る パ ス や デ ィ レ ク ト リ を 指 定 し ま す 。 例 え ば 、 "c1" と い う 名 前 の コ ン テ ナ で lxc.cgroup.dir = my-cgroup/first の よ う に 設 定 す る と 、 "my-cgroup" の サ ブ cgroup の よ う に コ ン テ ナ の cgroup を 作 成 し ま す 。 例 え ば 、 ユ ー ザ の カ レ ン ト の cgroup で あ る "my-user" が cgroup v1 階 層 に あ る cpuset コ ン ト ロ ー ラ の root cgroup 内 に 存 在 す る 場 合 、 こ の 設 定 は "/sys/fs/cgroup/cpuset/my-user/my-cgroup/first/c1" と い う cgroup を こ の コ ン テ ナ 向 け に 作 成 し ま す 。 存 在 し な い cgroup は LXC が 作 成 し ま す が 、 ユ ー ザ が カ レ ン ト の cgroup に 書 き 込 み 権 を 持 っ て い る こ と が 前 提 と な り ま す 。
lxc.cgroup.dir.container
こ れ は lxc.cgroup.dir と 同 様 の 設 定 で す が 、 か な ら ず lxc.cgroup.dir.monitor と 同 時 に 使 わ な け れ ば な り ま せ ん 。 そ し て 、 設 定 は コ ン テ ナ の cgroup パ ス に の み 影 響 を 与 え ま す 。 こ の オ プ シ ョ ン は lxc.cgroup.dir と 同 時 に 設 定 で き ま せ ん 。 コ ン テ ナ が ア タ ッ チ さ れ る 最 終 的 な パ ス は lxc.cgroup.dir.container.inner オ プ シ ョ ン に よ り さ ら に 変 更 さ れ る 可 能 性 が あ り ま す 。
lxc.cgroup.dir.monitor
こ の オ プ シ ョ ン は 、 モ ニ タ プ ロ セ ス に 対 し て lxc.cgroup.dir.container と 同 様 の 働 き を し ま す 。
lxc.cgroup.dir.monitor.pivot
コ ン テ ナ 終 了 時 に 、 モ ニ タ ー プ ロ セ ス の PID が こ こ で 指 定 し た cgroup に ア タ ッ チ さ れ ま す 。 コ ン テ ナ 終 了 時 に 、 他 の cgroup パ ス が 確 実 に 適 切 に 削 除 さ れ る よ う に 、 こ こ に 設 定 す る パ ス は 他 で 設 定 し た cgroup デ ィ レ ク ト リ の サ ブ パ ス に す べ き で は あ り ま せ ん 。
lxc.cgroup.dir.container.inner
cgroup 名 前 空 間 が 作 ら れ る 追 加 の サ ブ デ ィ レ ク ト リ を 指 定 し ま す 。 こ の オ プ シ ョ ン を 使 う と 、 cgroup の 制 限 は lxc.cgroup.dir.container で 指 定 し た 外 部 パ ス に 適 用 さ れ ま す 。 lxc.cgroup.dir.container は コ ン テ ナ 内 部 か ら ア ク セ ス で き な い た め 、 特 権 コ ン テ ナ に 対 す る 制 限 を 上 書 き で き な い 方 法 で よ り よ い 方 法 で 強 制 で き ま す 。 こ の オ プ シ ョ ン は lxc.cgroup.dir.container と lxc.cgroup.dir.monitor と 同 時 に 指 定 し た と き の み 機 能 し 、 そ れ 以 外 の 場 合 は 効 果 が あ り ま せ ん 。
lxc.cgroup.relative
LXC に root cgroup へ の エ ス ケ ー プ を 行 わ な い よ う に 指 示 す る に は 、 こ の 値 を 1 に 設 定 し て く だ さ い 。 こ れ に よ り 、 ユ ー ザ は cgroup2 と systemd が 強 制 す る 制 限 を 遵 守 す る の が 容 易 に な り ま す 。 具 体 的 に は 、 こ れ に よ り LXC コ ン テ ナ を systemd の サ ー ビ ス と し て 実 行 で き ま す 。
ケ ー パ ビ リ テ ィ
コ
ン テ ナ が root 権 限
で 実 行 さ れ て
い て も 、 コ ン
テ ナ 内 で は ケ
ー パ ビ リ テ ィ
(capabilities) を 削 除 す る
事 は 可 能 で す
。
lxc.cap.drop
コ ン テ ナ 内 で 削 除 す る ケ ー パ ビ リ テ ィ (capability) を 指 定 し ま す 。 一 行 で ス ペ ー ス 区 切 り で 複 数 の ケ ー パ ビ リ テ ィ を 指 定 す る こ と も 可 能 で す 。 指 定 は 、 "CAP_" と い う プ レ フ ィ ッ ク ス な し で 、 小 文 字 で ケ ー パ ビ リ テ ィ を 指 定 し ま す 。 例 え ば 、 CAP_SYS_MODULE と い う ケ ー パ ビ リ テ ィ は sys_module と 指 定 す る 必 要 が あ り ま す 。 詳 し く は 以 下 を 参 照 し て く だ さ い 。 capabilities (7) こ の 設 定 を 、 値 を 指 定 し な い 状 態 で 使 っ た 場 合 、 そ れ 以 前 に 指 定 さ れ た 削 除 対 象 の ケ ー パ ビ リ テ ィ の 指 定 を す べ て ク リ ア し ま す (lxc.cap.drop に 何 も 指 定 し な い 状 態 に な り ま す )。
lxc.cap.keep
コ ン テ ナ 内 で 維 持 す る ケ ー パ ビ リ テ ィ を 指 定 し ま す 。 指 定 し た 以 外 の 全 て の ケ ー パ ビ リ テ ィ は ド ロ ッ プ さ れ ま す 。 特 別 な 値 "none" が 指 定 さ れ て い る 時 点 で 、 lxc は こ の 時 点 で 保 持 す る こ と に な っ て い る 全 て の ケ ー パ ビ リ テ ィ を ク リ ア し ま す 。 "none" を 単 独 で 使 用 す る と す べ て の ケ ー パ ビ リ テ ィ を 削 除 で き ま す 。
名 前 空 間
名
前 空 間 は clone し た
り (
lxc.namespace.clone
)、 keep し
た り (
lxc.namespace.keep
)、 share
し た り
(
lxc.namespace.share.[namespace identifier]
) で
き ま す 。
lxc.namespace.clone
コ ン テ ナ 作 成 時 に 作 成 す る 名 前 空 間 を 指 定 し ま す 。 作 成 す る 名 前 空 間 は ス ペ ー ス 区 切 り の リ ス ト で 指 定 し ま す 。 指 定 す る 名 前 空 間 名 は 、 /proc/PID/ns デ ィ レ ク ト リ 内 に 存 在 す る 標 準 の 名 前 空 間 指 示 子 で な け れ ば な り ま せ ん 。 lxc.namespace.clone を 明 示 的 に 設 定 し て い な い 場 合 は 、 カ ー ネ ル が サ ポ ー ト す る す べ て の 名 前 空 間 と 現 在 の 設 定 が 使 わ れ ま す 。
新 し い マ ウ ン ト 、 ネ ッ ト 、 IPC 名 前 空 間 を 作 る 場 合 は lxc.namespace.clone=mount net ipc と 指 定 し ま す 。
lxc.namespace.keep
コ ン テ ナ が 、 作 成 元 の プ ロ セ ス か ら 継 承 す る (新 し い 名 前 空 間 を 作 ら ず に 元 の プ ロ セ ス の 名 前 空 間 の ま ま 実 行 す る ) 名 前 空 間 を 指 定 し ま す 。 継 承 す る 名 前 空 間 は ス ペ ー ス 区 切 り の リ ス ト で 指 定 し ま す 。 指 定 す る 名 前 空 間 名 は 、 /proc/PID/ns デ ィ レ ク ト リ 内 に 存 在 す る 標 準 の 名 前 空 間 指 示 子 で な け れ ば な り ま せ ん 。 lxc.namespace.keep は ブ ラ ッ ク リ ス ト を 指 定 す る オ プ シ ョ ン で す 。 つ ま り 、 コ ン テ ナ に 特 定 の 名 前 空 間 を 使 い 続 け る こ と を 強 制 し た い 場 合 に 便 利 で す 。
ネ ッ ト ワ ー ク 、 ユ ー ザ 、 IPC 名 前 空 間 を 元 の プ ロ セ ス の 名 前 空 間 の ま ま で 実 行 し た い 場 合 は lxc.namespace.keep=user net ipc と 指 定 し ま す 。
PID 名 前 空 間 を 共 有 す る と 、 ほ と ん ど の init で 動 作 し な い 可 能 性 が あ る こ と に 注 意 し て く だ さ い 。
コ ン テ ナ が 新 し い ユ ー ザ 名 前 空 間 を リ ク エ ス ト し 、 そ の コ ン テ ナ が ネ ッ ト ワ ー ク 名 前 空 間 は 継 承 し た い 場 合 は 、 ユ ー ザ 名 前 空 間 も 同 様 に 継 承 す る 必 要 が あ る こ と に 注 意 し て く だ さ い 。
lxc.namespace.share.[namespace identifier]
他 の コ ン テ ナ や プ ロ セ ス か ら 継 承 す る 名 前 空 間 を 指 定 し ま す 。 [namespace identifier] に は 、 /proc/PID/ns デ ィ レ ク ト リ 内 に 現 れ る 名 前 空 間 の ひ と つ が 入 り ま す 。
他 の プ ロ セ ス か ら 名 前 空 間 を 継 承 す る に は 、 lxc.namespace.share.[namespace identifier] の 値 を プ ロ セ ス の PID に 設 定 し ま す 。 例 え ば lxc.namespace.share.net=42 の よ う に な り ま す 。
他 の コ ン テ ナ か ら 名 前 空 間 を 継 承 す る に は 、 lxc.namespace.share.[namespace identifier] の 値 を コ ン テ ナ 名 に 設 定 し ま す 。 例 え ば lxc.namespace.share.pid=c3 の よ う に な り ま す 。
標 準 の liblxc の パ ス と は 異 な る コ ン テ ナ パ ス に 存 在 す る 他 の コ ン テ ナ か ら 名 前 空 間 を 継 承 す る に は 、 lxc.namespace.share.[namespace identifier] を そ の コ ン テ ナ の フ ル パ ス で 指 定 し ま す 。 例 え ば lxc.namespace.share.user=/opt/c3 の よ う に な り ま す 。
名 前 空 間 を 継 承 す る た め に は 、 呼 び 出 し 元 が 継 承 元 の プ ロ セ ス ま た は コ ン テ ナ に 対 し て 十 分 な 権 限 を 持 っ て い る 必 要 が あ り ま す 。
シ ス テ ム コ ン テ ナ 間 で の PID 名 前 空 間 の 共 有 は 、 ほ と ん ど の init シ ス テ ム で は う ま く 動 作 し な い 可 能 性 が あ る こ と に 注 意 が 必 要 で す 。
ふ た つ の プ ロ セ ス が 異 な る ユ ー ザ 名 前 空 間 に 存 在 し 、 そ の う ち の ひ と つ が 他 の ネ ッ ト ワ ー ク 名 前 空 間 を 継 承 し た い 場 合 、 通 常 は ユ ー ザ 名 前 空 間 も 同 様 に 継 承 す る 必 要 が あ る こ と に 注 意 が 必 要 で す 。
LSM で 慎 重 に 設 定 を 追 加 し な い で 、 タ ス ク で ユ ー ザ + PID 名 前 空 間 を 共 有 す る と 、 そ の タ ス ク は liblxc を 呼 び 出 し た タ ス ク の 権 限 に 昇 格 で き る こ と に 注 意 が 必 要 で す 。
lxc.time.offset.boot
ブ ー ト タ イ ム (boottime)ク ロ ッ ク の 正 ま た は 負 の オ フ セ ッ ト 値 を 指 定 し ま す 。 フ ォ ー マ ッ ト は 、 時 (h)、 分 (m)、 秒 (s)、 ミ リ 秒 (ms)、 マ イ ク ロ 秒 (us)、 ナ ノ 秒 (ns)を 指 定 で き ま す 。
lxc.time.offset.monotonic
monotonicク ロ ッ ク の 正 ま た は 負 の オ フ セ ッ ト 値 を 指 定 し ま す 。 フ ォ ー マ ッ ト は 、 時 (h)、 分 (m)、 秒 (s)、 ミ リ 秒 (ms)、 マ イ ク ロ 秒 (us)、 ナ ノ 秒 (ns)を 指 定 で き ま す 。
リ ソ ー ス 制 限
コ
ン テ ナ に 対 す
る ソ フ ト も し
く は ハ ー ド リ
ミ ッ ト を 変 更
で き ま す 。 非
特 権 コ ン テ ナ
で は 、 制 限 を
下 げ る こ と し
か で き ま せ ん
。 明 示 的 に 指
定 さ れ て い な
い リ ソ ー ス は
継 承 さ れ ま す
。
lxc.prlimit.[limit name]
設 定 し た い リ ソ ー ス と 制 限 値 を 指 定 し ま す 。 制 限 値 は コ ロ ン で 区 切 ら れ た 2 つ の 値 で 指 定 し ま す 。 値 は 数 値 も し く は ’unlimited’ で 指 定 し ま す 。 ソ フ ト も ハ ー ド も 同 じ 値 を 指 定 す る 場 合 は 単 一 の 値 を 指 定 で き ま す 。 指 定 で き る 名 前 は 、 "RLIMIT_" 接 頭 辞 が な く 小 文 字 で 書 か れ た 、 "RLIMIT_" リ ソ ー ス 名 で す 。 例 え ば 、 RLIMIT_NOFILE は "nofile" と 指 定 し ま す 。 詳 し く は setrlimit (2) を 参 照 し て く だ さ い 。 値 を 指 定 せ ず に 使 用 し た 場 合 、 lxc は こ の 指 定 以 前 に 設 定 さ れ た リ ソ ー ス 制 限 を ク リ ア し ま す 。 明 示 的 に 制 限 が 設 定 さ れ て い な い リ ソ ー ス に つ い て は 、 コ ン テ ナ を 起 動 し た プ ロ セ ス か ら 継 承 し ま す 。
SYSCTL
コ
ン テ ナ 用 の カ
ー ネ ル パ ラ メ
ー タ を 設 定 し
ま す 。
lxc.sysctl.[kernel parameters name]
設 定 し た い カ ー ネ ル パ ラ メ ー タ を 指 定 し ま す 。 指 定 で き る パ ラ メ ー タ は /proc/sys 以 下 に 存 在 す る も の で す 。 す べ て の sysctl パ ラ メ ー タ が 仮 想 化 ( 名 前 空 間 化 ) さ れ て い る わ け で は な い こ と に 注 意 し て く だ さ い 。 仮 想 化 さ れ て い な い sysctl を 設 定 す る と 、 シ ス テ ム ワ イ ド で 設 定 が 変 更 さ れ て し ま い ま す 。 sysctl (8). 値 を 指 定 し な い で こ の 設 定 を 指 定 し た 場 合 は 、 こ の 設 定 よ り 前 に 設 定 さ れ た パ ラ メ ー タ を ク リ ア し ま す 。
APPARMOR プ ロ フ ァ イ ル
lxc が
apparmor サ ポ ー ト で
コ ン パ イ ル さ
れ 、 イ ン ス ト
ー ル さ れ て い
る 場 合 で 、 ホ
ス ト で apparmor が 有
効 な 場 合 、 コ
ン テ ナ が 従 っ
て 動 く べ き apparmor
プ ロ フ ァ イ ル
は 、 コ ン テ ナ
の 設 定 で 指 定
す る こ と が 可
能 で す 。 デ フ
ォ ル ト は 、 ホ
ス ト の カ ー ネ
ル で cgroup 名 前 空 間
が 使 え る 場 合
は
lxc-container-default-cgns
で す
。 使 え な い 場
合 は
lxc-container-default
で
す 。
lxc.apparmor.profile
コ ン テ ナ が 従 う べ き apparmor プ ロ フ ァ イ ル を 指 定 し ま す 。 コ ン テ ナ が apparmor に よ る 制 限 を 受 け な い よ う に 設 定 す る に は 、 以 下 の よ う に 設 定 し ま す 。
lxc.apparmor.profile = unconfined
も し apparmor プ ロ フ ァ イ ル が 変 更 さ れ な い ま ま で な く て は な ら な い 場 合 (ネ ス ト し た コ ン テ ナ で あ る 場 合 や 、 す で に confined さ れ て い る 場 合 ) は 以 下 の よ う に 設 定 し ま す 。
lxc.apparmor.profile = unchanged
も し LXC に AppArmor プ ロ フ ァ イ ル を 生 成 す る よ う に 指 示 す る に は 次 の よ う に 設 定 し ま す 。
lxc.apparmor.profile = generated
lxc.apparmor.allow_incomplete
apparmor プ ロ フ ァ イ ル は パ ス 名 ベ ー ス で す の で 、 多 数 の フ ァ イ ル の 制 限 を 行 う 際 、 執 念 深 い 攻 撃 者 に 対 し て 効 果 的 で あ る た め に は マ ウ ン ト の 制 限 が 必 要 で す 。 し か し 、 こ れ ら の マ ウ ン ト の 制 限 は upstream の カ ー ネ ル で は ま だ 実 装 さ れ て い ま せ ん 。 マ ウ ン ト の 制 限 な し で も 、 apparmor プ ロ フ ァ イ ル に よ っ て 予 想 外 の ダ メ ー ジ に 対 す る 保 護 が 可 能 で す 。
こ の フ ラ グ が 0 の 場 合 (デ フ ォ ル ト )、 カ ー ネ ル が apparmor の マ ウ ン ト 機 能 を サ ポ ー ト し て い な い 場 合 に コ ン テ ナ が 起 動 し ま せ ん 。 こ れ は カ ー ネ ル を 更 新 し た 後 に 機 能 が 退 行 し た こ と が 検 出 で き る よ う に す る た め で す 。 不 完 全 な apparmor の 保 護 の 下 で コ ン テ ナ を 起 動 す る た め に は 、 こ の フ ラ グ を 1 に 設 定 し て く だ さ い 。
lxc.apparmor.allow_nesting
1 に 設 定 す る と 次 の よ う な 変 更 が 行 わ れ ま す 。 generated な AppArmor プ ロ フ ァ イ ル が 使 わ れ る 場 合 、 ネ ス ト し た コ ン テ ナ を 使 う の に 必 要 な 変 更 が 含 ま れ ま す 。 通 常 の マ ウ ン ト ポ イ ン ト に 加 え て 、 lxcfs の オ ー バ ー レ イ な し で 、 /dev/.lxc/proc と /dev/.lxc/sys が procfs と sysfs の マ ウ ン ト ポ イ ン ト に 含 ま れ ま す 。 generated な AppArmor プ ロ フ ァ イ ル が 使 わ れ て い る 場 合 は 、 直 接 読 み 書 き は で き ま せ ん
lxc.apparmor.raw
プ ロ フ ァ イ ル に 加 え る 、 生 の AppArmor プ ロ フ ァ イ ル 行 の リ ス ト で す 。 generated な プ ロ フ ァ イ ル を 使 っ て い る と き の み 有 効 で す 。
SELINUX コ ン テ キ ス ト
lxc が
SELinux サ ポ ー ト で
コ ン パ イ ル さ
れ 、 イ ン ス ト
ー ル さ れ て い
る 場 合 で 、 ホ
ス ト で SELinux が 有
効 な 場 合 、 コ
ン テ ナ が 従 っ
て 動 く べ き SELinux
コ ン テ キ ス ト
は 、 コ ン テ ナ
の 設 定 で 指 定
す る こ と が 可
能 で す 。 デ フ
ォ ル ト は
unconfined_t
で あ り 、 こ れ
は lxc が コ ン テ キ
ス ト を 変 え な
い と い う 意 味
に な り ま す 。
ポ リ シ ー の 例
と 追 加 の 情 報
は /usr/share/lxc/selinux/lxc.te フ ァ
イ ル を 参 照 し
て く だ さ い 。
lxc.selinux.context
コ ン テ ナ が 従 う べ き SELinux コ ン テ キ ス ト を 指 定 す る か 、 unconfined_t を 指 定 し ま す 。 例 え ば 以 下 の よ う に 設 定 し ま す 。
lxc.selinux.context = system_u:system_r:lxc_t:s0:c22
lxc.selinux.context.keyring
コ ン テ ナ の キ ー リ ン グ を 作 成 す る SELinux コ ン テ キ ス ト を 指 定 し ま す 。 デ フ ォ ル ト で は lxc.selinux.context と 同 じ に な り ま す 。 lxc.selinux.context が 設 定 さ れ て い な い 場 合 は 、 LXC の コ ン テ キ ス ト で 実 行 さ れ ま す 。
lxc.selinux.context.keyring = system_u:system_r:lxc_t:s0:c22
カ ー ネ ル キ ー リ ン グ
Linux キ
ー リ ン グ 機 能
は 、 さ ま ざ ま
な カ ー ネ ル コ
ン ポ ー ネ ン ト
が 、 セ キ ュ リ
テ ィ ー デ ー タ
、 認 証 キ ー 、
暗 号 化 キ ー 、
そ の 他 の デ ー
タ を カ ー ネ ル
に 保 持 ま た は
キ ャ ッ シ ュ す
る た め の 機 能
で す 。 デ フ ォ
ル ト で は 、 LXC は
開 始 し た ア プ
リ ケ ー シ ョ ン
の た め に 、 新
し い セ ッ シ ョ
ン キ ー リ ン グ
を 作 成 し ま す
。
lxc.keyring.session
LXC に よ る 新 し い セ ッ シ ョ ン キ ー リ ン グ の 作 成 を 無 効 に で き ま す 。 そ の 場 合 、 開 始 し た ア プ リ ケ ー シ ョ ン は 、 そ の 時 点 の セ ッ シ ョ ン キ ー リ ン グ を 継 承 し ま す 。 デ フ ォ ル ト は 1 で 、 1 の 場 合 は LXC は 新 し い キ ー リ ン グ を 作 成 し ま す 。
lxc.keyring.session = 0
SECCOMP の 設 定
コ ン テ ナ は 、 起 動 時 に seccomp プ ロ フ ァ イ ル を ロ ー ド す る こ と で 、 利 用 可 能 な シ ス テ ム コ ー ル を 減 ら し て 起 動 す る こ と が 可 能 で す 。 seccomp の 設 定 フ ァ イ ル は 、 1 行 目 が バ ー ジ ョ ン 番 号 、 2 行 目 が ポ リ シ ー の タ イ プ で 始 ま る 必 要 が あ り 、 そ の 後 に 設 定 を 書 き ま す 。
現 時 点 で は 、 バ ー ジ ョ ン 番 号 は 1 と 2 を サ ポ ー ト し て い ま す 。 バ ー ジ ョ ン 1 で は 、 ポ リ シ ー は シ ン プ ル な ホ ワ イ ト リ ス ト で す の で 、 2 行 目 は "allowlist" で な け れ ば な り ま せ ん 。 そ し て 残 り の 行 に は 1 行 に 1 つ ず つ 、 シ ス テ ム コ ー ル 番 号 を 書 き ま す 。 各 行 の シ ス テ ム コ ー ル 番 号 が ホ ワ イ ト リ ス ト 化 さ れ 、 リ ス ト に な い 番 号 は 、 そ の コ ン テ ナ で は ブ ラ ッ ク リ ス ト に 入 り ま す 。
バ ー ジ ョ ン 2 で は 、 ポ リ シ ー は ブ ラ ッ ク リ ス ト も し く は ホ ワ イ ト リ ス ト で 表 さ れ 、 ル ー ル ご と の ア ク シ ョ ン と 、 ポ リ シ ー ご と の デ フ ォ ル ト の ア ク シ ョ ン を 設 定 で き ま す 。 そ し て 、 ア ー キ テ ク チ ャ ご と の 設 定 と 、 テ キ ス ト で 書 か れ た シ ス テ ム コ ー ル 名 で の 設 定 が 可 能 で す 。
以 下 に ブ ラ ッ ク リ ス ト の ポ リ シ ー の 例 を 示 し ま す 。 こ れ は mknod 以 外 の 全 て の シ ス テ ム コ ー ル が 許 可 さ れ 、 mknod が 呼 ば れ る と 、 何 も せ ず に 単 に 0(成 功 ) を 返 し ま す 。
2
denylist
mknod errno 0
ioctl notify
ア ク シ ョ ン と し て "errno" を 指 定 す る と 、 LXC は seccomp フ ィ ル タ を 登 録 し ま す 。 こ れ に よ り 、 指 定 し た errno を 呼 び 出 し 元 に 返 し ま す 。 errno の 値 は "errno" と い う 単 語 の 後 に 指 定 し ま す 。
ア
ク シ ョ ン と し
て "notify" を 指 定
す る と 、 LXC は seccomp
リ ス ナ ー を 登
録 し 、 カ ー ネ
ル か ら リ ス ナ
ー の フ ァ イ ル
デ ィ ス ク リ プ
タ を 取 得 し ま
す 。 "notify" と し
て 指 定 し て い
る シ ス テ ム コ
ー ル が 作 成 さ
れ る と 、 カ ー
ネ ル は poll イ ベ ン
ト を 生 成 し 、
フ ァ イ ル デ ィ
ス ク リ プ タ を
通 し て メ ッ セ
ー ジ を 送 信 し
ま す 。 呼 び 出
し 元 は こ の メ
ッ セ ー ジ を 読
み 、 引 数 を 含
め て シ ス テ ム
コ ー ル を 調 査
で き ま す 。 呼
び 出 し 元 は こ
の 情 報 に 基 づ
き 、 ど の ア ク
シ ョ ン を 取 る
べ き か を カ ー
ネ ル に 知 ら せ
る メ ッ セ ー ジ
を 送 り 返 す こ
と が 期 待 さ れ
ま す 。 こ の メ
ッ セ ー ジ が 送
ら れ る ま で 、
カ ー ネ ル は 呼
び 出 し 元 の プ
ロ セ ス を ブ ロ
ッ ク し ま す 。
読 み 書 き す る
メ ッ セ ー ジ の
フ ォ ー マ ッ ト
は seccomp 自 身 に 記
述 さ れ て い ま
す 。
lxc.seccomp.profile
コ ン テ ナ が ス タ ー ト す る 前 に ロ ー ド す る seccomp の 設 定 を 含 む フ ァ イ ル を 指 定 し ま す 。
lxc.seccomp.allow_nesting
こ の オ プ シ ョ ン を 1 に 設 定 す る と 、 す で に seccomp プ ロ フ ァ イ ル が ロ ー ド さ れ て い る 、 い な い に 関 わ ら ず 、 seccomp フ ィ ル タ が 重 ね 合 わ せ ら れ ま す 。 こ れ に よ り 、 ネ ス ト さ れ た コ ン テ ナ が 自 身 の seccomp プ ロ フ ァ イ ル を ロ ー ド で き ま す 。 デ フ ォ ル ト 値 は 0 で す 。
lxc.seccomp.notify.proxy
LXC が 接 続 し 、 seccomp イ ベ ン ト を 転 送 す る UNIX ソ ケ ッ ト を 指 定 し ま す 。 パ ス は unix:/path/to/socket も し く は unix:@socket の 形 式 で な け れ ば な り ま せ ん 。 前 者 は パ ス 指 定 の UNIX ド メ イ ン ソ ケ ッ ト を 指 定 し 、 後 者 は 抽 象 (abstract) UNIX ド メ イ ン ソ ケ ッ ト の 指 定 で す 。
lxc.seccomp.notify.cookie
プ ロ キ シ ー さ れ た seccomp 通 知 リ ク エ ス ト と 一 緒 に 送 る 追 加 文 字 列 。
PR_SET_NO_NEW_PRIVS
PR_SET_NO_NEW_PRIVS
を 付 与 す る と
、 対 象 の execve() は
、 execve() の 呼 び 出
し な し で は 実
行 で き な か っ
た こ と に 対 す
る 特 権 を 許 可
し な く な り ま
す (例 え ば 、
set-user-ID、 set-group-ID 許 可 ビ
ッ ト や 、 フ ァ
イ ル ケ ー パ ビ
リ テ ィ が 動 作
し な く な り ま
す )。 一 度 設 定
さ れ る と 、 こ
の ビ ッ ト は 解
除 で き ま せ ん
。 こ の ビ ッ ト
の 設 定 は fork() や clone()
で 生 成 さ れ る
子 プ ロ セ ス に
も 継 承 さ れ 、
execve() の 前 後 で 保
持 さ れ ま す 。
PR_SET_NO_NEW_PRIVS は 、 コ ン
テ ナ に 適 用 し
よ う と す る AppArmor
プ ロ フ ァ イ ル
も し く は SELinux コ
ン テ キ ス ト へ
の 変 更 が な さ
れ た あ と に 適
用 さ れ ま す 。
lxc.no_new_privs
コ ン テ ナ に 対 し て PR_SET_NO_NEW_PRIVS ビ ッ ト を 設 定 す る か ど う か を 指 定 し ま す 。 1 に 設 定 す る と 有 効 に な り ま す 。
UID の マ ッ ピ ン グ
コ
ン テ ナ は 、 ユ
ー ザ と グ ル ー
プ の id の マ ッ ピ
ン グ を 持 っ た
専 用 の ユ ー ザ
名 前 空 間 で 起
動 す る こ と が
可 能 で す 。 た
と え ば 、 コ ン
テ ナ 内 の ユ ー
ザ id 0 を 、 ホ ス ト
の ユ ー ザ id 200000 に
マ ッ ピ ン グ す
る こ と が 可 能
で す 。 コ ン テ
ナ の root ユ ー ザ は
コ ン テ ナ 内 で
は 特 権 を 持 ち
ま す が 、 ホ ス
ト で は 特 権 を
持 ち ま せ ん 。
通 常 は 、 シ ス
テ ム コ ン テ ナ
は id の 範 囲 を 要
求 し 、 そ れ を
マ ッ ピ ン グ し
ま す 。 例 え ば
、 コ ン テ ナ 内
の ユ ー ザ と グ
ル ー プ の id 0 か ら
20,000 を 200,000 か ら 220,000 に
マ ッ ピ ン グ し
ま す 。
lxc.idmap
4 つ の 値 を 記 述 す る 必 要 が あ り ま す 。 最 初 の 文 字 は ’u’ か ’g’ の ど ち ら か で 、 ユ ー ザ か グ ル ー プ の ID の ど ち ら を マ ッ ピ ン グ す る か を 指 定 し ま す 。 次 は コ ン テ ナ の ユ ー ザ 名 前 空 間 内 に 現 れ る 最 初 の ユ ー ザ ID で す 。 そ の 次 は 、 そ の ユ ー ザ ID の ホ ス ト 上 で の 値 で す 。 最 後 は 、 ID の マ ッ ピ ン グ を い く つ 連 続 し て 行 う か の 数 を 指 定 し ま す 。
コ ン テ ナ の フ ッ ク
コ ン テ ナ の フ ッ ク は 、 コ ン テ ナ の 存 続 期 間 の 色 々 な 場 面 で 実 行 す る こ と の で き る プ ロ グ ラ ム や ス ク リ プ ト で す 。
コ ン テ ナ フ ッ ク が 実 行 さ れ る と き 、 追 加 の 情 報 が 渡 さ れ ま す 。 追 加 の 引 数 が コ マ ン ド ラ イ ン 引 数 で 渡 さ れ る か 、 環 境 変 数 経 由 で 渡 さ れ る か を 判 断 す る の に 、 lxc.hook.version が 使 え ま す 。 引 数 は :
|
• |
コ ン テ ナ 名 |
||
|
• |
セ ク シ ョ ン (常 に ’lxc’) |
||
|
• |
フ ッ ク の タ イ プ (’clone’ や ’pre-mount’ な ど ) |
||
|
• |
追 加 の 引 数 。 clone フ ッ ク の 場 合 、 lxc-clone に 渡 さ れ る 追 加 の 引 数 は 、 フ ッ ク へ の 引 数 と し て 追 加 さ れ ま す 。 stop フ ッ ク の 場 合 は 、 コ ン テ ナ の 名 前 空 間 の そ れ ぞ れ に 対 す る フ ァ イ ル デ ィ ス ク リ プ タ へ の パ ス が 、 名 前 空 間 名 と と も に 渡 さ れ ま す 。 |
次 の 環 境 変 数 が セ ッ ト さ れ ま す 。
|
• |
LXC_CGNS_AWARE: コ ン テ ナ で cgroup namespace が 使 え る か ど う か |
||
|
• |
LXC_CONFIG_FILE: コ ン テ ナ の 設 定 フ ァ イ ル の パ ス |
||
|
• |
LXC_HOOK_TYPE: フ ッ ク の タ イ プ (例 え ば ’clone’、 ’mount’、 ’pre-mount’)。 こ の 環 境 変 数 が 存 在 す る か ど う か は lxc.hook.version の 値 次 第 で す 。 こ の 値 が 1 な ら 、 LXC_HOOK_TYPE が 設 定 さ れ て い ま す 。 |
||
|
• |
LXC_HOOK_SECTION: セ ク シ ョ ン タ イ プ (例 え ば ’lxc’、 ’net’)。 こ の 環 境 変 数 が 存 在 す る か ど う か は lxc.hook.version の 値 次 第 で す 。 こ の 値 が 1 な ら 、 LXC_HOOK_TYPE が 設 定 さ れ て い ま す 。 |
||
|
• |
LXC_HOOK_VERSION: フ ッ ク の バ ー ジ ョ ン 。 こ の 値 は 、 コ ン テ ナ の lxc.hook.version の 値 と 同 じ で す 。 も し 、 こ の 値 が 0 に 設 定 さ れ て い る な ら 、 古 い ス タ イ ル の フ ッ ク が 使 わ れ ま す 。 も し 1 に 設 定 さ れ て い る な ら 、 新 し い ス タ イ ル の フ ッ ク が 使 わ れ ま す 。 |
||
|
• |
LXC_LOG_LEVEL: コ ン テ ナ の ロ グ レ ベ ル |
||
|
• |
LXC_NAME: コ ン テ ナ 名 |
||
|
• |
LXC_[NAMESPACE IDENTIFIER]_NS: コ ン テ ナ の 名 前 空 間 が 参 照 す る /proc/PID/fd/ 以 下 の フ ァ イ ル デ ィ ス ク リ プ タ の パ ス 。 そ れ ぞ れ の 名 前 空 間 ご と に 別 々 の 環 境 変 数 に な り ま す 。 こ れ ら の 環 境 変 数 は lxc.hook.version が 1 に 設 定 さ れ て る 場 合 の み 設 定 さ れ ま す 。 |
||
|
• |
LXC_ROOTFS_MOUNT: マ ウ ン ト さ れ た root フ ァ イ ル シ ス テ ム へ の パ ス |
||
|
• |
LXC_ROOTFS_PATH: コ ン テ ナ の lxc.rootfs.path エ ン ト リ 。 こ れ は マ ウ ン ト さ れ た rootfs が 存 在 す る 場 所 に は な ら な い で し ょ う 。 そ れ に は LXC_ROOTFS_MOUNT を 使 用 し て く だ さ い 。 |
||
|
• |
LXC_SRC_NAME: clone フ ッ ク の 場 合 、 元 の コ ン テ ナ の 名 前 |
ス
ク リ プ ト か ら
の 標 準 出 力 は debug
レ ベ ル で ロ ギ
ン グ さ れ ま す
。 標 準 エ ラ ー
出 力 は ロ ギ ン
グ さ れ ま せ ん
。 し か し 、 フ
ッ ク の 標 準 エ
ラ ー 出 力 を 標
準 出 力 に リ ダ
イ レ ク ト す る
こ と に よ り 保
存 す る こ と は
可 能 で す 。
lxc.hook.version
環 境 変 数 経 由 の 新 し い ス タ イ ル で 引 数 を 渡 す に は 1 に 設 定 し ま す 。 そ う で な く 、 引 数 と し て 渡 す に は 0 に 設 定 し ま す 。 こ の 設 定 は 、 古 い 方 法 で ス ク リ プ ト に 引 数 と し て 渡 さ れ て い る す べ て の フ ッ ク 引 数 に 影 響 し ま す 。 特 に 、 コ ン テ ナ 名 の セ ク シ ョ ン (例 : ’lxc’, ’net’) と フ ッ ク タ イ プ (例 : ’clone’, ’mount’, ’pre-mount’) 引 数 に 影 響 し ま す 。 新 し い ス タ イ ル の フ ッ ク が 使 わ れ る 場 合 、 引 数 は 環 境 変 数 と し て 利 用 で き ま す 。 コ ン テ ナ 名 は LXC_NAME に 設 定 さ れ ま す (こ れ は こ の 設 定 項 目 に 設 定 さ れ て い る 値 と は 関 係 な く 設 定 さ れ ま す )。 セ ク シ ョ ン は LXC_HOOK_SECTION に 設 定 さ れ ま す 。 そ し て フ ッ ク タ イ プ は LXC_HOOK_TYPE に 設 定 さ れ ま す 。 こ の 設 定 は 、 コ ン テ ナ の 名 前 空 間 を 参 照 す る フ ァ イ ル デ ィ ス ク リ プ タ の パ ス を ど の よ う に 渡 す か に も 影 響 し ま す 。 1 に 設 定 し た 場 合 、 名 前 空 間 ご と に 別 の 環 境 変 数 LXC_[NAMESPACE IDENTIFIER]_NS に 設 定 さ れ ま す 。 0 に 設 定 す る と 、 パ ス は stop フ ッ ク の 引 数 と し て 渡 さ れ ま す 。
lxc.hook.pre-start
コ ン テ ナ の tty、 コ ン ソ ー ル の 作 成 、 マ ウ ン ト が 実 行 さ れ る 前 に 、 ホ ス ト の 名 前 空 間 内 で 実 行 す る フ ッ ク 。
lxc.hook.pre-mount
コ ン テ ナ の フ ァ イ ル シ ス テ ム の 名 前 空 間 で 実 行 さ れ ま す が 、 rootfs が 設 定 さ れ る 前 に 実 行 す る フ ッ ク 。 こ れ に よ り rootfs の 操 作 が 可 能 に な り ま す 。 例 え ば 、 暗 号 化 さ れ た フ ァ イ ル シ ス テ ム の マ ウ ン ト な ど で す 。 こ の フ ッ ク 内 で な さ れ る マ ウ ン ト は ホ ス ト に は 影 響 し ま せ ん (mounts propagation を 除 い て )。 な の で 、 そ れ ら は コ ン テ ナ が シ ャ ッ ト ダ ウ ン す る 時 に 自 動 的 に ク リ ー ン ア ッ プ さ れ ま す 。
lxc.hook.mount
マ ウ ン ト が 完 了 し た 後 で す が 、 pivot_root の 前 に コ ン テ ナ の 名 前 空 間 で 実 行 さ れ る フ ッ ク 。
lxc.hook.autodev
lxc.autodev == 1 が 設 定 さ れ て い る 場 合 で 、 マ ウ ン ト が 完 了 し 、 マ ウ ン ト 時 の フ ッ ク も 実 行 さ れ た 後 で す が 、 pivot_root の 前 に コ ン テ ナ の 名 前 空 間 で 実 行 す る フ ッ ク 。 こ の フ ッ ク の 目 的 は 、 systemd ベ ー ス の コ ン テ ナ 向 け の autodev オ プ シ ョ ン が 設 定 さ れ て い る 時 に 、 コ ン テ ナ の /dev デ ィ レ ク ト リ を 設 定 す る の を 支 援 す る こ と で す 。 コ ン テ ナ の /dev デ ィ レ ク ト リ は 、 こ の フ ッ ク が 実 行 さ れ る 時 有 効 な ${ LXC_ROOTFS_MOUNT } 環 境 変 数 か ら の 相 対 パ ス と な り ま す 。
lxc.hook.start-host
コ ン テ ナ の セ ッ ト ア ッ プ が 済 ん だ あ と 、 コ ン テ ナ の init を 実 行 す る 直 前 に 、 ホ ス ト の 名 前 空 間 で 実 行 す る た め の フ ッ ク で す 。
lxc.hook.start
コ ン テ ナ の init が 実 行 さ れ る 直 前 に コ ン テ ナ の 名 前 空 間 で 実 行 さ れ る フ ッ ク 。 コ ン テ ナ 内 で 利 用 可 能 な プ ロ グ ラ ム で あ る 必 要 が あ り ま す 。
lxc.hook.stop
コ ン テ ナ の シ ャ ッ ト ダ ウ ン 後 、 コ ン テ ナ の 名 前 空 間 へ の 参 照 と と も に 、 ホ ス ト の 名 前 空 間 で 実 行 さ れ る フ ッ ク で す 。 そ れ ぞ れ の 名 前 空 間 に 対 応 す る 追 加 の 引 数 が フ ッ ク に 渡 さ れ ま す 。 そ の 引 数 に は コ ロ ン で 区 切 ら れ た 名 前 空 間 の タ イ プ 名 と フ ァ イ ル 名 が 含 ま れ て お り 、 フ ァ イ ル 名 は 名 前 空 間 に 対 す る フ ァ イ ル デ ィ ス ク リ プ タ を 取 得 す る の に 使 え ま す 。 タ イ プ 名 は /proc/PID/ns デ ィ レ ク ト リ 内 の フ ァ イ ル 名 で す 。 例 え ば 、 マ ウ ン ト 名 前 空 間 に 対 応 す る 引 数 は 通 常 は mnt:/proc/PID/fd/12 の よ う に な り ま す 。
lxc.hook.post-stop
コ ン テ ナ が シ ャ ッ ト ダ ウ ン さ れ た 後 に ホ ス ト の 名 前 空 間 で 実 行 す る フ ッ ク 。
lxc.hook.clone
コ ン テ ナ が 新 し い コ ン テ ナ に ク ロ ー ン さ れ る 際 に 実 行 さ れ る フ ッ ク 。 詳 し く は lxc-clone (1) を 参 照 し て く だ さ い 。
lxc.hook.destroy
コ ン テ ナ を 破 壊 す る 際 に 実 行 さ れ る フ ッ ク で す 。
コ ン テ ナ の フ ッ ク で 使 え る 環 境 変 数
起
動 時 の フ ッ ク
に 設 定 情 報 を
提 供 し 、 フ ッ
ク の 機 能 を 助
け る た め の 環
境 変 数 が い く
つ か 利 用 可 能
で す 。 全 て の
変 数 が 全 て の
コ ン テ キ ス ト
で 利 用 可 能 な
わ け で は あ り
ま せ ん 。 具 体
的 に は 、 全 て
の パ ス は ホ ス
ト シ ス テ ム 上
の パ ス で あ り
、 そ の た め 、
lxc.hook.start
フ ッ ク の
時 点 で は 使 用
で き ま せ ん 。
LXC_NAME
LXC コ ン テ ナ の 名 前 。 共 通 の ロ グ 環 境 内 で の ロ グ メ ッ セ ー ジ に 使 う と き に 便 利 で す 。 [ -n ]
LXC_CONFIG_FILE
コ ン テ ナ の 設 定 フ ァ イ ル の ホ ス ト 上 で の パ ス 。 こ れ は 、 他 の 方 法 で は 得 ら れ な い 追 加 の 設 定 情 報 を 見 つ け る た め に 、 コ ン テ ナ に 、 元 の 、 ト ッ プ レ ベ ル の 設 定 フ ァ イ ル の 位 置 を 与 え る も の で す 。 [ -f ]
LXC_CONSOLE
設 定 さ れ て い る 場 合 の コ ン テ ナ の コ ン ソ ー ル 出 力 の パ ス 。 [ -c ] [ lxc.console.path ]
LXC_CONSOLE_LOGPATH
設 定 さ れ て い る 場 合 の コ ン テ ナ の コ ン ソ ー ル ロ グ 出 力 の パ ス 。 [ -L ]
LXC_ROOTFS_MOUNT
初 期 に コ ン テ ナ が マ ウ ン ト さ れ る 場 所 。 こ れ は 、 コ ン テ ナ イ ン ス タ ン ス が 起 動 す る た め の コ ン テ ナ の rootfs へ の ホ ス ト 上 の パ ス で あ り 、 イ ン ス タ ン ス の た め の 移 行 が 行 わ れ る 場 所 で す 。 [ lxc.rootfs.mount ]
LXC_ROOTFS_PATH
rootfs.mount へ マ ウ ン ト さ れ る コ ン テ ナ の ル ー ト へ の ホ ス ト 上 の パ ス で す 。 [ lxc.rootfs.path ]
LXC_SRC_NAME
clone フ ッ ク の 場 合 の み 使 わ れ ま す 。 ク ロ ー ン 元 の コ ン テ ナ 名 が 設 定 さ れ ま す 。
LXC_TARGET
stop フ ッ ク の 場 合 の み 使 わ れ ま す 。 コ ン テ ナ の シ ャ ッ ト ダ ウ ン の 場 合 は "stop"、 リ ブ ー ト の 場 合 は "reboot" が 設 定 さ れ ま す 。
LXC_CGNS_AWARE
こ の 変 数 が 設 定 さ れ て い な い 場 合 、 お 使 い の バ ー ジ ョ ン の LXC は cgroup 名 前 空 間 を 扱 え ま せ ん 。 設 定 さ れ て い る 場 合 、 こ の 値 は 1 に 設 定 さ れ て い ま す 。 そ し て 、 cgroup 名 前 空 間 を 扱 え ま す 。 こ の 変 数 は カ ー ネ ル で cgroup 名 前 空 間 が 有 効 で あ る こ と は 保 証 し ま せ ん 。 こ の 変 数 は lxcfs の マ ウ ン ト フ ッ ク が 使 い ま す 。
ロ ギ ン グ
ロ ギ ン グ は コ ン テ ナ ご と に 設 定 す る こ と が 可 能 で す 。 デ フ ォ ル ト で は 、 lxc パ ッ ケ ー ジ の コ ン パ イ ル 条 件 に 依 存 し 、 コ ン テ ナ の ス タ ー ト ア ッ プ は ERROR レ ベ ル で の み ロ ギ ン グ さ れ 、 コ ン テ ナ の パ ス 以 下 か 、 /var/log/lxc 以 下 の ど ち ら か に コ ン テ ナ 名 (の 後 に ’.log’ が 付 与 さ れ る ) を も と に し た 名 前 で ロ ギ ン グ さ れ ま す 。
デ
フ ォ ル ト の ロ
グ レ ベ ル と ロ
グ フ ァ イ ル は
両 方 と も 、 コ
ン テ ナ の 設 定
フ ァ イ ル 内 で
指 定 さ れ 、 デ
フ ォ ル ト の 値
を 上 書 き し ま
す 。 同 様 に 、
設 定 フ ァ イ ル
の エ ン ト リ は
lxc-start
の コ マ ン
ド ラ イ ン オ プ
シ ョ ン で 上 書
き す る こ と も
可 能 で す 。
lxc.log.level
ロ グ を 取 得 す る レ ベ ル 。 ロ グ レ ベ ル は 0..8 の 範 囲 の 整 数 で す 。 数 字 が 小 さ い ほ ど 冗 長 な デ バ ッ グ を 意 味 し ま す 。 具 体 的 に は 、 0 = trace, 1 = debug, 2 = info, 3 = notice, 4 = warn, 5 = error, 6 = critical, 7 = alert, and 8 = fatal で す 。 指 定 さ れ な い 場 合 、 レ ベ ル の デ フ ォ ル ト は 5 (error) で 、 そ れ 以 上 の エ ラ ー が ロ ギ ン グ さ れ ま す 。
(フ ッ ク ス ク リ プ ト や ネ ッ ト ワ ー ク イ ン タ ー フ ェ ー ス の 起 動 、 停 止 時 の ス ク リ プ ト の よ う な ) ス ク リ プ ト が 呼 ば れ た 時 、 ス ク リ プ ト の 標 準 出 力 は level 1 の debug で ロ ギ ン グ さ れ ま す 。
lxc.log.file
ロ グ 情 報 を 書 き 込 む フ ァ イ ル 。
lxc.log.syslog
ロ グ 情 報 を syslog に 送 り ま す 。 ロ グ レ ベ ル と し て lxc.log.level の 値 を 使 用 し ま す 。 指 定 す る 値 は 使 用 す る syslog の facility で す 。 有 効 な 値 は daemon, local0, local1, local2, local3, local4, local5, local5, local6, local7 の い ず れ か で す 。
自 動 起 動
自
動 起 動 オ プ シ
ョ ン で は 、 自
動 起 動 さ せ る
コ ン テ ナ と 順
番 の 設 定 が 可
能 で す 。 こ の
オ プ シ ョ ン は LXC
ツ ー ル が 直 接
使 用 す る か 、
デ ィ ス ト リ ビ
ュ ー シ ョ ン が
提 供 す る 外 部
ツ ー ル が 使 用
す る か も し れ
ま せ ん 。
lxc.start.auto
コ ン テ ナ を 自 動 起 動 さ せ る か ど う か を 設 定 し ま す 。 有 効 な 値 は 0(オ フ ) か 1(オ ン ) で す 。
lxc.start.delay
コ ン テ ナ を 起 動 さ せ た 後 、 次 の コ ン テ ナ を 起 動 さ せ る ま で に ど れ く ら い (秒 ) 待 つ か を 設 定 し ま す 。
lxc.start.order
自 動 起 動 さ せ る コ ン テ ナ が 多 数 あ る 場 合 の コ ン テ ナ の 起 動 順 を 決 め る の に 使 う 整 数 を 指 定 し ま す 。 小 さ い 値 ほ ど 早 く 起 動 し ま す 。
lxc.monitor.unshare
こ の 値 が 0 で な い 場 合 、 コ ン テ ナ が 初 期 化 さ れ る 前 (pre-start フ ッ ク が 実 行 さ れ る 前 ) に マ ウ ン ト 名 前 空 間 が ホ ス ト か ら unshare さ れ ま す 。 こ の 機 能 を 使 う 場 合 、 ス タ ー ト 時 に CAP_SYS_ADMIN ケ ー パ ビ リ テ ィ が 必 要 で す 。 デ フ ォ ル ト 値 は 0 で す 。
lxc.monitor.signal.pdeath
lxc の モ ニ タ プ ロ セ ス が 終 了 し た 際 に 、 コ ン テ ナ の init プ ロ セ ス に 送 出 す る シ グ ナ ル を 指 定 し ま す 。 デ フ ォ ル ト で は 、 lxc の モ ニ タ プ ロ セ ス が 終 了 し た 場 合 に は 、 す べ て の コ ン テ ナ 内 の プ ロ セ ス が 停 止 す る よ う に SIGKILL が 設 定 さ れ て い ま す 。 lxc の モ ニ タ プ ロ セ ス が 終 了 し て も 、 コ ン テ ナ が す べ て 確 実 に 動 作 し つ づ け る よ う に す る に は 、 こ の 値 を 0 に 設 定 し ま す 。
lxc.group
コ ン テ ナ を 追 加 し た い コ ン テ ナ グ ル ー プ 名 を 指 定 し ま す 。 複 数 の 値 を 設 定 で き 、 複 数 回 指 定 す る こ と も で き ま す 。 設 定 さ れ た グ ル ー プ は 、 関 連 す る 一 連 の コ ン テ ナ を 起 動 さ せ る た め に 使 わ れ ま す 。
自 動 起 動 と シ ス テ ム ブ ー ト
コ ン テ ナ は い く つ で も グ ル ー プ に 属 す る こ と が で き 、 全 く 属 さ な い こ と も 可 能 で す 。 特 別 な グ ル ー プ が 2 つ 存 在 し ま す 。 1 つ は NULL グ ル ー プ で す 。 こ れ は ど の グ ル ー プ に も 属 さ な い コ ン テ ナ で す 。 も う 1 つ は "onboot" グ ル ー プ で す 。
LXC サ ー ビ ス が 有 効 に な っ た 状 態 で シ ス テ ム が ブ ー ト す る と 、 最 初 に "onboot" グ ル ー プ の メ ン バ ー で あ る lxc.start.auto == 1 が 設 定 さ れ た コ ン テ ナ を 起 動 し よ う と し ま す 。 起 動 は lxc.start.order の 順 に 起 動 し ま す 。 lxc.start.delay が 指 定 さ れ て い る 場 合 、 現 在 対 象 と な っ て い る コ ン テ ナ に 初 期 化 の 時 間 を 与 え 、 ホ ス ト シ ス テ ム の 負 荷 を 低 減 す る た め に 、 次 の コ ン テ ナ を 開 始 さ せ る ま で に 遅 延 時 間 を 与 え ま す 。 "onboot" グ ル ー プ の メ ン バ ー が 開 始 し た 後 、 LXC シ ス テ ム は lxc.start.auto == 1 が 設 定 さ れ た 、 ど の グ ル ー プ の メ ン バ ー で も な い (NULL グ ル ー プ の ) コ ン テ ナ の ブ ー ト を onboot グ ル ー プ の コ ン テ ナ と 同 様 に 開 始 し ま す 。
コ ン テ ナ の 環 境 変 数
コ ン テ ナ に 環 境 変 数 を 渡 し た い 場 合 (環 境 変 数 は コ ン テ ナ の init と そ の 子 孫 全 て で 利 用 可 能 で す )、 lxc.environment パ ラ メ ー タ が そ の 用 途 に 使 え ま す 。 機 微 (セ ン シ テ ィ ブ ) な 情 報 を 渡 さ な い よ う に 注 意 が 必 要 で す 。 そ の よ う な 情 報 を 持 た な い コ ン テ ナ 内 の プ ロ セ ス で こ れ ら の 環 境 変 数 が 利 用 可 能 に な っ て し ま い ま す 。 環 境 変 数 は 常 に /proc/PID/environ 経 由 で 利 用 可 能 に な り ま す 。
こ
の 設 定 項 目 は
、 設 定 し た い
環 境 変 数 ご と
に 1 度 ず つ 、 何
度 で も 指 定 で
き ま す 。
lxc.environment
コ ン テ ナ に 渡 し た い 環 境 変 数 を 指 定 し ま す 。 例 :
lxc.environment
= APP_ENV=production
lxc.environment = SYSLOG_SERVER=192.0.2.42
例
以 下 に 紹 介 す る い く つ か の 例 に 加 え て 、 他 の 設 定 例 が /usr/share/doc/lxc/examples に あ り ま す 。
ネ ッ ト ワ ー ク
こ の 設 定 は 、 片 方 を ブ リ ッ ジ で あ る br0 と 接 続 さ れ る veth ペ ア デ バ イ ス を 使 う コ ン テ ナ を 設 定 し ま す (ブ リ ッ ジ は 管 理 者 に よ り あ ら か じ め シ ス テ ム 上 に 設 定 済 み で あ る 必 要 が あ り ま す )。 仮 想 ネ ッ ト ワ ー ク デ バ イ ス は 、 コ ン テ ナ 内 で は eth0 と リ ネ ー ム さ れ ま す 。
lxc.uts.name =
myhostname
lxc.net.0.type = veth
lxc.net.0.flags = up
lxc.net.0.link = br0
lxc.net.0.name = eth0
lxc.net.0.hwaddr = 4a:49:43:49:79:bf
lxc.net.0.ipv4.address = 1.2.3.5/24 1.2.3.255
lxc.net.0.ipv6.address = 2003:db8:1:0:214:1234:fe0b:3597
UID/GID の マ ッ ピ ン グ
こ の 設 定 は 、 コ ン テ ナ 内 の ユ ー ザ と グ ル ー プ 両 方 の id 0-9999 の 範 囲 を 、 ホ ス ト 上 の 100000-109999 へ マ ッ ピ ン グ し ま す 。
lxc.idmap = u 0
100000 10000
lxc.idmap = g 0 100000 10000
CONTROL GROUP
こ の 設 定 は 、 ア プ リ ケ ー シ ョ ン の た め の control group を い く つ か 設 定 し ま す 。 cpuset.cpus は 定 義 さ れ た cpu の み 使 用 で き る よ う に 制 限 し ま す 。 cpus.share は 、 control group の (cpu) 優 先 度 を 指 定 し ま す 。 devices.allow は 、 特 定 の デ バ イ ス を 使 用 可 能 に し ま す 。
lxc.cgroup.cpuset.cpus
= 0,1
lxc.cgroup.cpu.shares = 1234
lxc.cgroup.devices.deny = a
lxc.cgroup.devices.allow = c 1:3 rw
lxc.cgroup.devices.allow = b 8:0 rw
複 雑 な 設 定
こ の 例 は 、 control group を 使 っ て 、 複 雑 な ネ ッ ト ワ ー ク ス タ ッ ク を 作 成 し 、 新 し い ホ ス ト 名 を 指 定 し 、 い く つ か の 場 所 を マ ウ ン ト し 、 ル ー ト フ ァ イ ル シ ス テ ム を 変 更 す る よ う な 複 雑 な 設 定 を 示 し ま す 。
lxc.uts.name =
complex
lxc.net.0.type = veth
lxc.net.0.flags = up
lxc.net.0.link = br0
lxc.net.0.hwaddr = 4a:49:43:49:79:bf
lxc.net.0.ipv4.address = 10.2.3.5/24 10.2.3.255
lxc.net.0.ipv6.address = 2003:db8:1:0:214:1234:fe0b:3597
lxc.net.0.ipv6.address = 2003:db8:1:0:214:5432:feab:3588
lxc.net.1.type = macvlan
lxc.net.1.flags = up
lxc.net.1.link = eth0
lxc.net.1.hwaddr = 4a:49:43:49:79:bd
lxc.net.1.ipv4.address = 10.2.3.4/24
lxc.net.1.ipv4.address = 192.168.10.125/24
lxc.net.1.ipv6.address = 2003:db8:1:0:214:1234:fe0b:3596
lxc.net.2.type = phys
lxc.net.2.flags = up
lxc.net.2.link = random0
lxc.net.2.hwaddr = 4a:49:43:49:79:ff
lxc.net.2.ipv4.address = 10.2.3.6/24
lxc.net.2.ipv6.address = 2003:db8:1:0:214:1234:fe0b:3297
lxc.cgroup.cpuset.cpus = 0,1
lxc.cgroup.cpu.shares = 1234
lxc.cgroup.devices.deny = a
lxc.cgroup.devices.allow = c 1:3 rw
lxc.cgroup.devices.allow = b 8:0 rw
lxc.mount.fstab = /etc/fstab.complex
lxc.mount.entry = /lib /root/myrootfs/lib none ro,bind 0 0
lxc.rootfs.path = dir:/mnt/rootfs.complex
lxc.rootfs.options = idmap=container
lxc.cap.drop = sys_module mknod setuid net_raw
lxc.cap.drop = mac_override
SEE ALSO
chroot (1), pivot_root (8), fstab (5) capabilities (7)
SEE ALSO
lxc (7), lxc-create (1), lxc-copy (1), lxc-destroy (1), lxc-start (1), lxc-stop (1), lxc-execute (1), lxc-console (1), lxc-monitor (1), lxc-wait (1), lxc-cgroup (1), lxc-ls (1), lxc-info (1), lxc-freeze (1), lxc-unfreeze (1), lxc-attach (1), lxc.conf (5)