кластер Куба, Rook-Ceph и Openstack.
Спустя время обнаружили, что при удалении\добавлении нод с ceph-mons автоматически пересоздаются деплойменты этих мониторов, а вместе с ними и сервисы. В конечном итоге это может привести (привело на деве) к полной замене адресов мониторов. Ceph впорядке, но вот в libvirt\qemu у запущенных виртуалок старые адреса, которые можно обновить только рестартом виртуалок (чего хотелось бы избежать).
Может есть какой-то способ сказать Rook'у использовать статический пул для Сервисов ceph mons?
Good day.
Did someone experience same problems?
We have: K8s cluster, Rook-Ceph cluster, Openstack.
During maintenance tests we found out that if\when deleteing\re-joining kube nodes that have ceph-mons bound to them, Rook re-creates those deployments including Services for them. This results in a new set of Ceph Mon IPs which is perfectly fine for Ceph cluster, but most of running Openstack VMs have old Cpeh monitor IPs which can only be updated by restarting those VMs.
We would really like to avoid these restarts. Is there a way to tell Rook-Ceph to use a static pool of IPs for monitor Services?
Так надо к мониторам по dns-имени обращаться
мысль здравая, но при переджоине storge-controller ноды в кластер, Rook считает её новой и выписывает ей деплоймент с новой буквой в имени. Например, были 3 монитора - a, b, c. После переждоина 3-х нод мониторы будут зваться d, e, f
и с цаком в носу :)
Пока что мы тестируем workaround со сменой IP на старые через monmaptool ceph mon getmap -o /tmp/map.1 monmaptool --print /tmp/map.1 monmaptool --rm g /tmp/map.1 monmaptool --addv g [v2:100.10.10.2:3000,v1:100.10.10.2:6789] /tmp/map.1 monmaptool --print /tmp/map.1 ceph-mon -i {mon-id} --inject-monmap {tmp}/{filename} Но хотелось бы понимать есть ли способ зафиксировать адреса мониторов на будущее.
Создать руками сервис, который будет на все мониторы указывать
А сервисов поверх деплоймента нет? Если нет - можно сделать ручками с селекторами (посмотреть у деплойментов) У сервиса можно через kube-vip например закрепить статический плавающий между нодами адрес или прямо node port смотреть. Профит.
есть, они пересоздаются вместе с дейплойментами rook-ceph-mon-e rook-ceph-mon-f rook-ceph-mon-g видимо, для новых инсталляций так и будем делать. А с текущими будем развлекаться как можем
Обсуждают сегодня