Azure에서 LXC Linux 컨테이너 호스팅

Azure에서 LXC Linux 컨테이너 호스팅

우리는 데이터 센터의 Linux 호스트에서 실행되는 다수의 LXC Linux 컨테이너를 보유하고 있습니다. 클라우드 마이그레이션 전략의 일환으로 이러한 컨테이너를 Azure로 이동하는 타당성을 조사해 달라는 요청을 받았지만 Azure에서 이러한 시나리오 지원에 대한 정보를 찾는 데 어려움을 겪고 있습니다.

그래서 내 질문은 다음과 같습니다

  1. Azure의 Linux VM에서 LXC Linux 컨테이너를 호스팅할 수 있나요?
  2. LXC 컨테이너를 Kubernetes(예: Azure 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-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가 제공되지 않으면 클라우드 공급자에 관계없이 가상세를 지불하게 됩니다.

관련 정보