在 Azure 中托管 LXC Linux 容器

在 Azure 中托管 LXC Linux 容器

我们有许多 LXC Linux 容器在数据中心的 Linux 主机上运行。我被要求探索将这些容器移动到 Azure 作为云迁移策略的一部分的可行性,但我很难找到有关 Azure 中此类场景支持的任何信息。

所以我的问题是:

  1. 我可以在 Azure 中的 Linux VM 上托管 LXC Linux 容器吗?
  2. LXC 容器可以与 Kubernetes 编排(例如使用 Azue Kubernetes 服务)吗?
  3. 这里还有其他选择吗?

答案1

老问题可能已经解决,但这就是我的设置解决这个问题的方式。

我运行基于 Ubuntu 18.04 服务器的主机数字海洋主要使用这个设置: https://blog.simos.info/trying-out-lxd-containers-on-ubuntu-on-digitalocean/

根据您的安全需求,您可能想要设置 VPN 解决方案,但有防火墙,您需要打开端口 8443 以及其他所需端口(例如 22)。

这有点旧了,但是有很多关于 LXC/LXD 的好信息 https://stgraber.org/2016/04/12/lxd-2-0-remote-hosts-and-container-migration-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 那样降低性能上的 Virt-Tax。事实上,如果您没有在 C5 或 M5 AWS Nitro 主机上运行,​​并且未提供 LXD,则无论云提供商如何,您都需要支付虚拟税。

相关内容