Openstack over k8s: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 49: Строка 49:
 
Check that these CIDRs are not in use on the development node before proceeding, or adjust as required.
 
Check that these CIDRs are not in use on the development node before proceeding, or adjust as required.
 
</PRE>
 
</PRE>
Кстати, похоже что тут ошибка в маске в документации - реально используется маска <B>/12</B>
+
Кстати, похоже что тут ошибка в маске в документации - реально используется маска <B>/12</B><BR>
  +
Немного отредактированный для удобства чтения вывод ps
 
<PRE>
 
<PRE>
root 5717 4.0 1.7 448168 292172 ? Ssl 19:27 0:51 | \_ kube-apiserver --feature-gates=MountPropagation=true,PodShareProcessNamespace=true --service-node-port-range=1024-65535 --advertise-address=172.17.0.1 --service-cluster-ip-range=10.96.0.0/12
+
root 5717 4.0 1.7 448168 292172 ? Ssl 19:27 0:51 | \_ kube-apiserver --feature-gates=MountPropagation=true,PodShareProcessNamespace=true
  +
--service-node-port-range=1024-65535
  +
--advertise-address=172.17.0.1
  +
--service-cluster-ip-range=10.96.0.0/12
 
</PRE>
 
</PRE>
   

Версия 16:24, 3 февраля 2019

Комплексное задание на знание K8s/Helm/OpenStack на 8 рабочих часов (1 день)

* Install openstack(ceph as storage) on top of K8s(All-in-one-installation) using openstack-helm project 
* change Keystone token expiration time afterwards to 24 hours 
* deploy 3 VMs connected to each other using heat

TL; DR

  • Мне понадобилось примерно 13 рабочих часов что бы закончить задние

Хорошее:

  • Задание можно сделать за 8 часов (и даже быстрее)

Плохое

  • Практически невозможно сделать на ноутбуке без Linux.
  • Примерно половину времени потрачено на попытку "взлететь" напрямую на Mac OS и использовать в качестве кластера K8s уже имевшийся minikube

Это был явный фейл - как минимум чарты ceph не совместимы с миникубом никак (https://github.com/ceph/ceph-helm/issues/73), до остальных я не дошел.
Деплоить без скриптовой обвязки явно заняло бы больше чем 1 день (на самом деле если не срезать углы пользуясь скриптами то минимум неделя)

  • Когда я понял что задеплоить на миникуб за отведеннгое время не успеваю то решил настроить ВМку с убунтой и дальше работать с ней

Второй явный фейл (но не мой =) ) - то тчо задание требует минимум 8 гигов свободной памяти, а на самом деле даже на ВМке с 16-ю гигами и 8 ядрами все шевелилось очень медленно. (Человек с ноутом с 8 гигами не сделает это задание из-за недостатка памяти)
Как следствие - регулярные падения скриптов из-за таймаутов,
Отмечу так же что с не слишеом быстрым интернетом я наступил на проблему, что Pull образов был медленным и скрипты не дожидались и падали по таймауту. Хорошей идеей было бы скачать образы заранее, но об этом я подумал уже в середине процесса и тратить время на анализ какие образы нужны, не стал,

Решение

Возможно какие-то моменты я забыл сохранить так как вывода на консоль было достаточно много.

Создание ВМки с Убунтой

https://docs.openstack.org/openstack-helm/latest/install/developer/requirements-and-host-config.html

System Requirements¶
The recommended minimum system requirements for a full deployment are:

16GB of RAM
8 Cores
48GB HDD

VM-1.png


На этом этапе изначально я совершил 2 ошибки

  • Создал слишком маленькую (мало CPU Cores) машину
  • Не проверил пересечения сетей
 Warning
By default the Calico CNI will use 192.168.0.0/16 and Kubernetes services will use 10.96.0.0/16 as the CIDR for services. 
Check that these CIDRs are not in use on the development node before proceeding, or adjust as required.

Кстати, похоже что тут ошибка в маске в документации - реально используется маска /12
Немного отредактированный для удобства чтения вывод ps

root      5717  4.0  1.7 448168 292172 ?       Ssl  19:27   0:51      |   \_ kube-apiserver --feature-gates=MountPropagation=true,PodShareProcessNamespace=true 
                                                                                                                    --service-node-port-range=1024-65535 
                                                                                                                    --advertise-address=172.17.0.1 
                                                                                                                    --service-cluster-ip-range=10.96.0.0/12

Подготовка

Если следовать инструкции и не пробовать ничего менять то никаких проблем на 18-й убунте не возникло.

Установка OpenStack