![Установка MicroK8S на Ubuntu 22.10](https://rvso.com/image/1072568/%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0%20MicroK8S%20%D0%BD%D0%B0%20Ubuntu%2022.10.png)
Цель: Использование Ubuntu, установленного в WSL2, в качестве среды разработки для приложений Cloud Native.
Требуется установка: MicroK8S, для которого требуется systemd, snap
Рекомендации:
- https://ubuntu.com/blog/ubuntu-wsl-enable-systemd
- https://devblogs.microsoft.com/commandline/systemd-support-is-now-available-in-wsl/
Версия WSL:
WSL version: 0.70.4.0
Kernel version: 5.15.68.1
WSLg version: 1.0.45
MSRDC version: 1.2.3575
Direct3D version: 1.606.4
DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows version: 10.0.22000.1098
Полученные результаты(после применения ссылок):
~# ps -ef
root 1 0 0 16:22 ? 00:00:02 /sbin/init # I think this should be systemd
~# sudo snap install microk8s --classic
Interacting with snapd is not yet supported on Windows Subsystem for Linux. This command has been left available for documentation purposes only.
Что не так/чего не хватает?
Заранее спасибо.
Али
** **: Я уже пробовал 20.04 и 22.04, добавив wsl.conf с [boot] systemd=true
решение1
Как отмечено вВСЛ 299. Snap не будет работать с Ubuntu 22.10, вам нужно будет подождать выхода snapd 2.57.5+22.10. Вы можете подождать или перейти на Ubuntu 22.04 LTS.
решение2
Я попытался установить многоузловой кластер на одном хосте. ШАГ-1 lxd init : все по умолчанию, кроме "Имя нового пула хранения" ШАГ-2 node-1: lxc lxc launch ubuntu:20.04 k8sn1 node-2: lxc lxc launch ubuntu:20.04 k8sw1 node-3: lxc lxc launch ubuntu:20.04 k8sw2 ШАГ-3: lxc exec k8sn1 bash run script fromhttps://github.com/pablorq/ubuntu-wsl2-systemd-script(после изменения enter-systemd-namespace script -a -> -m -p) ШАГ-4: Перезапустите и повторите ШАГ-5: ps -ef: systemd enabled , snapd , lxd ok! ШАГ-6: sudo snap install microk8s --classic С этого момента все выглядит странно:
microk8s status --> microk8s не запущен. Используйте microk8s inspect для более глубокой проверки. microk8s kubectl cluster-info --> Kubernetes control plane запущен наhttps://127.0.0.1:16443 microk8s kubectl get all --all-namespaces --> kube-system pod/calico-node-tdclz 1/1 Работает 0 98 с kube-system pod/calico-kube-controllers-f4c5ffbdc-xfxfc 1/1 Работает 0 98 с
ИМЯ ПРОСТРАНСТВА ИМЕН ТИП CLUSTER-IP ВНЕШНИЙ-IP ПОРТ(Ы) ВОЗРАСТ default service/kubernetes ClusterIP 10.152.183.1 443/TCP 105s
ИМЯ ПРОСТРАНСТВА ИМЕН ТРЕБУЕМОЕ ТЕКУЩЕЕ ГОТОВО АКТУАЛЬНО ДОСТУПНО СЕЛЕКТОР УЗЛОВ ВОЗРАСТ kube-system daemonset.apps/calico-node 1 1 1 1 1 kubernetes.io/os=linux 104 с
ИМЯ ПРОСТРАНСТВА ИМЕН ГОТОВО ОБНОВЛЕНО ДОСТУПНО ВОЗРАСТ kube-system deployment.apps/calico-kube-controllers 1/1 1 1 104s
ИМЯ ПРОСТРАНСТВА ИМЕН ТРЕБУЕМЫЙ ТЕКУЩИЙ ВОЗРАСТ ГОТОВНОСТИ kube-system replicaset.apps/calico-kube-controllers-54c85446d4 0 0 0 100 с kube-system replicaset.apps/calico-kube-controllers-f4c5ffbdc 1 1 1 98 с
Я думаю, что пришло время отказаться от использования wsl в качестве среды разработки для Kubernetes.
Примечания: host и lxc имеют одинаковую версию Ubuntu, 20.04
список хранилищ lxc --> ИМЯ | ДРАЙВЕР | ИСТОЧНИК | ОПИСАНИЕ | ИСПОЛЬЗУЕТСЯ | СОСТОЯНИЕ | +---------+--------+--------------------------------------------+-----------+---------+---------+ | iot-lab | btrfs | /var/snap/lxd/common/lxd/disks/iot-lab.img | | 3 | СОЗДАН
список сетей lxc -->
eth0 | физический | НЕТ | | | | 0 | | +--------+---------+---------+--------------+---------------------------+------------+----------+ | lxdbr0 | мост | ДА | 10.25.76.1/24 | fd42:e2dc:d3f6:4774::1/64 | | 2 | СОЗДАН | +--------+----------+-------------+--------------+---------------------------+-----------+----------+---------