Авторские статьи

Клиент LXD для Windows и MacOS.


LXD использует LXC как низкоуровневый инструмент, но оба в имени несут LinuX. Поэтому неудивительно что сам LXD и его API сильно завязаны и работают только в Linux системах. Но коммуникации между клиентом и демоном используют REST API, так что нет проблем в том, чтобы клиент работал и в других операционных системах. Другими словами вы можете поднять несколько Linux систем с LXD на борту, а с MS Windows или MacOS удалённо управлять вашими контейнерами.

Настройка демона LXD

К демону нужно подключиться по сети, поэтому нужно чтобы он слушал сеть и обладал паролем, который используется удалёнными клиентами при добавлении себя в хранилище доверенных сертификатов LXD (certificate trust store). Когда клиент добавляет LXD хост, то ему будет предложено ввести пароль и если он введён корректно, то LXD сохранит сертификат клиента и будет ему доверять впредь, не требуя в последствии пароля (это можно изменить или отключить клиента).

lxc config set core.https_address "[::]:8443"
lxc config set core.trust_password "my-password"

Клиент LXD для MS Windows

Уже созданные бинарники
Проект LXD в рамках работы сборочных серверов собирает готовые бинарники при каждом коммите и можете забирать архив клиента lxc.exe и, распаковав его, использовать.

Компиляция из исходников
Можете собрать сами из исходников, но вначале понадобится Git.

git config --global http.https://gopkg.in.followRedirects true
go get -v -x github.com/lxc/lxd/lxc

Используя bash в Windows
Через слой Windows Subsystem for Linux (WSL) можно получить Ubuntu внутри MS Windows 10 ради bash. А в образе Ubuntu 16.04 LXD клиент есть по умолчанию.

client LXD Windows via Ubuntu bash

Родной бинарник lxc.exe обладает рядом ограничений из-за управляющих символов в терминале MS Windows и ломает некоторые вещи, такие как клавиши управления курсором и прятание пароля с экрана при вводе его с клавиатуры. Клиент LXD через Ubuntu в MS Windows лишён этих недостатков.

client LXD Windows via Ubuntu bash

Клиент LXD для MacOS

Подобно инструкциям для MS Windows нужно взять установщик языка Go и Git.

В Терминале
export GOPATH=~/go
go get -v -x github.com/lxc/lxd/lxc
sudo ln -s ~/go/bin/lxc /usr/local/bin/

client LXD MacOS

Итог

Клиент LXD есть для основных операционных систем и их архитектур, что позволяет вам легко взаимодействовать с существующими LXD серверами. Благодаря строгим правилам обратной совместимости, версия клиента не имеет решающего значения. "Старые" клиенты могут поговорить с "новыми" серверами, а "новые" клиенты со "старыми" серверами. Очевидно, что возможны ситуации когда некоторые функции могут быть недоступны, но в целом - основные операции по управлению контейнером будут работать нормально. Хотя никто не мешает вам периодически обновлять клиента вслед за обновлением линукс серверов с LXD.

Цикл статей про LXD.

Дата последней правки: 2023-12-27 13:18:44

RSS vasilisc.com   


Разделы

Главная
Новости
Ворох бумаг
Видео Linux
Игры в Linux
Безопасность
Статьи об Astra Linux
Статьи о FreeBSD
Статьи об Ubuntu
Статьи о Snappy
Статьи об Ubuntu Phone
Статьи о Kubuntu
Статьи о Xubuntu
Статьи о Lubuntu
Статьи об Open Source
Карта сайта