Azure で LXC Linux コンテナをホストする

Azure で LXC Linux コンテナをホストする

データ センターの Linux ホストで実行されている LXC Linux コンテナーが多数あります。クラウド移行戦略の一環として、これらのコンテナーを Azure に移行する可能性を調査するように依頼されましたが、Azure でのこのようなシナリオのサポートに関する情報を見つけるのに苦労しています。

私の質問は次のとおりです:

  1. Azure の Linux VM 上で LXC Linux コンテナーをホストすることはできますか?
  2. LXC コンテナは Kubernetes (例: Azue Kubernetes Service) でオーケストレーションできますか?
  3. 他に選択肢はありますか?

答え1

古い質問と問題はおそらく解決されていますが、これが私の設定でこの問題を解決する方法です。

私はUbuntu 18.04サーバーをベースにしたホストを運営しています。デジタルオーシャン主にこの設定を使用します: https://blog.simos.info/trying-out-lxd-containers-on-ubuntu-on-digitalocean/

セキュリティのニーズに応じて、VPN ソリューションを設定する必要があるかもしれませんが、ファイアウォールがあり、ポート 22 などの他の必要なポートとともにポート 8443 を開く必要があります。

これは少し古いですが、LXC/LXDに関する有益な情報が満載です。 https://stgraber.org/2016/04/12/lxd-2-0-リモートホストとコンテナの移行-612/

DigitalOceanHost をリモート ホストとして追加します。

OnPremHost#lxc config set core.https_address [::]:8443
OnPremHost#lxc config set core.trust_password something-secure

DigitalOceanHost#lxc config set core.https_address [::]:8443
DigitalOceanHost#lxc config set core.trust_password something-secure

OnPremHost#lxc remote add DigitalOceanHost "DigitalOcean IP"
Generating a client certificate. This may take a minute...
Certificate fingerprint: ca5484446dfgsdg4dfgs6gs4g6d465s4g6sgcg659h8gy8hg4ahdjhjkj6
ok (y/n)? y
Admin password for DigitalOceanHost:
Client certificate stored at server:  DigitalOceanHost

OnPremHost#lxc snapshot localContainer remoteContainer
OnPremHost#lxc copy localContainer/remoteContainer DigitalOceanHost:DigitalOceanContainer

次に、オンプレミスのホストからコンテナを次のように管理します。

OnPremHost#lxc list DigitalOceanHost:
+----------+---------+---------------------+------+------------+-----------+
|   NAME   |  STATE  |        IPV4         | IPV6 |    TYPE    | SNAPSHOTS |
+----------+---------+---------------------+------+------------+-----------+
| container| RUNNING | 10.10.10.10 (eth0)  |      | PERSISTENT | 1         |
+----------+---------+---------------------+------+------------+-----------+

OnPremHost#lxc exec lxchost3:container bash
container#

見るhttps://gist.github.com/berndbausch/a6835150c7a26c88048763c0bd739be6その他の lxc コマンドについては、こちらを参照してください。

この方法では、ローカル ストレージに保存されたバックアップとしてスナップショットを使用してコンテナーを簡単に管理し、ほとんどのタスクをスクリプト化できます。

答え2

ベアメタルは提供されません。つまり、LXC/LXD のようにパフォーマンスに対する仮想税を廃止します。実際、C5 または M5 AWS Nitro ホストで実行していない場合、LXD が提供されていなければ、クラウド プロバイダーに関係なく、仮想税を支払うことになります。

関連情報