ネットワークを作成し設定するには#

マネージドネットワークを作成し設定するには、 lxc network コマンドとそのサブコマンドを使用します。 どのコマンドでも --help を追加すると使用方法と利用可能なフラグについてより詳細な情報を表示できます。

ネットワークタイプ#

以下のネットワークタイプが利用できます。

ネットワークを作成する#

ネットワークを作成するには以下のコマンドを実行します。

lxc network create <name> --type=<network_type> [configuration_options...]

利用可能なネットワークタイプ一覧と設定オプションへのリンクは ネットワークタイプ を参照してください。

--type 引数を指定しない場合、デフォルトのタイプ bridge が使用されます。

クラスタ内にネットワークを作成する#

LXD クラスタを実行していてネットワークを作成したい場合、各クラスタメンバーに別々にネットワークを作成する必要があります。 この理由はネットワーク設定は、例えば親ネットワークインタフェースの名前のように、クラスタメンバー間で異なるかもしれないからです。

このため、まず --target=<cluster_member> フラグとメンバー用の適切な設定を指定して保留中のネットワークを作成する必要があります。 全てのメンバーで同じネットワーク名を使うようにしてください。 次に実際にセットアップするために --target フラグなしでネットワークを作成してください。

例えば、以下の一連のコマンドで 3 つのクラスタメンバー上に UPLINK という名前の物理ネットワークをセットアップします。

user@host:~$ lxc network create UPLINK --type=physical parent=br0 --target=vm01
Network UPLINK pending on member vm01
user@host:~$ lxc network create UPLINK --type=physical parent=br0 --target=vm02
Network UPLINK pending on member vm02
user@host:~$ lxc network create UPLINK --type=physical parent=br0 --target=vm03
Network UPLINK pending on member vm03
user@host:~$ lxc network create UPLINK --type=physical
Network UPLINK created

クラスタのネットワークを設定するにはも参照してください。

インスタンスにネットワークをアタッチする#

マネージドネットワークを作成後、それをインスタンスにNICデバイスとしてアタッチできます。

そのためには、以下のコマンドを使います。

lxc network attach <network_name> <instance_name> [<device_name>] [<interface_name>]

デバイス名とインタフェース名は省略可能ですが、少なくともデバイス名は指定することをお勧めします。 指定しない場合、LXDはネットワーク名をデバイス名として使用しますが、紛らわしく問題を起こすかもしれません。 例えば、LXDイメージはeth0インタフェースにIP自動設定を行いますが、インタフェースの名前が違うと機能しません。

例えば、my-networkというネットワークをmy-instanceというインタンスにeth0デバイスとしてアタッチするには、以下のコマンドを入力します。

lxc network attach my-network my-instance eth0

NICデバイスを追加する#

lxc network attachコマンドはインスタンスにNICデバイスを追加するショートカットです。 別の方法として、通常通りネットワーク設定でNICデバイスを追加できます。

lxc config device add <instance_name> <device_name> nic network=<network_name>

この方法を使う場合、必要に応じてネットワークのデフォルト設定をオーバーライドするように追加の設定をコマンドに追加できます。 全ての利用可能なデバイスオプションについてはNICデバイスを参照してください。

ネットワークを設定する#

既存のネットワークを設定するには、 lxc network setlxc network unset コマンド (単一の設定項目を設定する場合) または lxc network edit コマンド (設定全体を編集する場合) のどちらかを使います。 特定のクラスタメンバーの設定を変更するには、 --target フラグを追加してください。

例えば、以下のコマンドは物理ネットワークの DNS サーバーを設定します。

lxc network set UPLINK dns.nameservers=8.8.8.8

利用可能な設定オプションはネットワークタイプによって異なります。 各ネットワークタイプの設定オプションへのリンクは ネットワークタイプ を参照してください。

高度なネットワーク機能を設定するためには別のコマンドがあります。 以下のドキュメントを参照してください。