Я изучаю набор инструментов Kubernetes, и теперь у меня есть выделенный кластер из трех узлов.
Следующие шаги - перенос проектов нашей компании в кластер.
Как мне сохранить данные базы данных между несколькими узлами? Даже для репликации (MongoDB ReplicaSet eq) требуется постоянное хранилище для каждого модуля.
Хорошо, после некоторых исследований я нашел эту статью весьма полезной:
https://portworx. com/ha-mongodb-kubernetes/
Они используют portworx в качестве sds, но gluster тоже должен работать.
Таким образом, моим предполагаемым решением будет запуск баз данных для каждого проекта в отдельном pod/контейнере. В нашем 3-узловом кластере я буду реплицировать том базы данных, но запускать только один экземпляр базы данных за раз. Таким образом, обход отказа и запуск контейнера db на другом узле вообще не должны быть проблемой.
Когда мы добавим больше узлов в кластер или приложению понадобится больше экземпляров баз данных для лучшего масштабирования, я предоставлю реплицированный том для каждого db экземпляра и подключу базы данных с помощью ReplicaSet.
.გირჩევთ გამოიყენოთ პერსონალური ოპერატორი, რომ გაუმკლავდეთ სახელმწიფო აპლიკაციებს, როგორიცაა მონაცემთა ბაზები კუბერნეტებზე. უამრავი საშუალებაა, რომლითაც შეგიძლიათ თავი გაისროლოთ ფეხში, როდესაც თქვენ იყენებთ სახელმწიფო აპლიკაციებს.
გადახედეთ kubedb.com- ს, მათ აქვთ ოპერატორები ElasticSearch- სა და MongoDB- სთვის. საბაჟო ოპერატორები პროგრამულად ზრუნავენ ტირაჟირებაზე, პოდიუმების უკმარისობის მართვაზე (მაგ. ახალი master– ის პოპულარიზაციაზე), მასშტაბირებაზე და ა.შ.
Mongo -> https://kubedb.com/docs/0.8.0-beta.0/guides/ mongodb / მიმოხილვა /
ელასტიური ძიება -> https://kubedb.com/docs/0.8.0-beta.0/guides/elasticsearch/overview/
თქვენ, რა თქმა უნდა, განათავსეთ სცენის ვერსია და შეამოწმეთ იგი თქვენი დატვირთვის საწინააღმდეგოდ, სანამ განიხილავთ წარმოებისკენ სწრაფვას.