Preview

Труды Института системного программирования РАН

Расширенный поиск

Подход автоматического управления объектным хранилищем с помощью Operator SDK и Custom Resource Definition

https://doi.org/10.15514/ISPRAS-2022-34(2)-10

Аннотация

Данная работа посвящена исследованию средств автоматизации управления приложениями с сохранением состояния в среде Kubernetes, в частности объектными системами хранения данных. Произведён обзор существующих инструментов управления, способных решить поставленные задачи, на основе которого дана сравнительная характеристика рассмотренных средств и выбран инструмент, удовлетворяющий введённым критериям. По результатам сравнительного анализа представлен подход автоматического управления объектным хранилищем с помощью Operator SDK и Custom Resource Definition. Предложена архитектура системы управления контейнеризированной версией СХД на платформе Kubernetes и интеграции оператора с пользовательской системой мониторинга. Описанный подход реализован в программном средстве - операторе ресурса объектной системы хранения данных. В работе описаны детали реализации программного обеспечения, структура дескриптора пользовательского ресурса хранилища и методы тестирования конечной системы. В результате была получена система управления объектной СХД на платформе Kubernetes, что позволило сократить как трудозатраты по содержанию и обслуживанию системы, так и её стоимость за счёт уменьшения зависимости от аппаратного обеспечения.

Об авторах

Кирилл Максимович СТОНОЖЕНКО
Санкт-Петербургский политехнический университет Петра Великого
Россия

Студент магистратуры Высшей школы программной инженерии



Игорь Валерьевич НИКИФОРОВ
https://icst.spbstu.ru/person/nikiforov_igor_valerevich/
Санкт-Петербургский политехнический университет Петра Великого
Россия

Доцент Высшей школы программной инженерии, кандидат технических наук



Сергей Михайлович УСТИНОВ
https://icst.spbstu.ru/person/ustinov_sergey_mihaylovich/
Санкт-Петербургский политехнический университет Петра Великого
Россия

Профессор Высшей школы программной инженерии, доктор технических наук



Список литературы

1. J. Gantz, D. Reinsel. The Digital Universe in 2020: Big Data, Bigger Digital Shadow s, and Biggest Growth in the Far East. IDC IVIEW. Available: https://www.cs.princeton.edu/courses/archive/spring13/cos598C/idc-the-digital-universe-in-2020.pdf, accessed March 24, 2022.

2. International Data Corporation (IDC). Changing the way the world thinks about the impact of technology on business and society. Available: https://www.idc.com/, accessed Mar. 24, 2022.

3. V.Yu. Shevtsov, E.S. Abramov. The Analysis of Modern Data Storage Systems. NBI technologies, vol. 13, no. 1, 2019, pp. 25-30 (in Russian) / В.Ю. Шевцов, Е.С. Абрамов. Анализ современных систем хранения данных. НБИ Технологии, том 13, no. 1, 2019 г., стр. 25-30.

4. R. Dua, A.R. Raja, D. Kakadia. Virtualization vs containerization to support PaaS. In Proc. of the 2014 IEEE International Conference on Cloud Engineering (IC2E'14), 2014, pp. 610-614.

5. S.M. Nanyan, T.N. Nichushkina. Virtual Docker containers: purpose and application features. Engineering Bulletin, 2015, no. 2, pp. 554-560 (in Russian) / С.М. Нанян, Т. Н. Ничушкина. Инженерный вестник, no. 2, 2015 г., стр. 554-560.

6. J. Turnbull. The Docker Book, 2014, 338 p. [E-book] Available: https://dockerbook.com/, accessed March 24, 2022.

7. D. Silakov. Docker project. Manage virtual environments. System administrator, no. 3, 2015, pp. 10-14 (in Russian) / Д. Силаков. Проект Docker. Управляем виртуальными окружениями. Системный администратор, no. 3, 2015 г., стр. 10-14.

8. D. Silakov. Tools to manage multiple Docker containers. System administrator, no. 5, 2015, pp. 11-15 (in Russian) / Д. Силаков. Инструменты управления множеством контейнеров Docker. Системный администратор, no. 3, 2015 г., стр. 11-15.

9. T. Uphill, J. Arundel et al. DevOps: Puppet, Docker, and Kubernetes. Packt Publishing, 2017, 924 p.

10. Z.A. Orlov. Study of scaling tools for container virtualization systems. Alleya nauki, no. 9(2), 2017, pp. 867-871 (in Russian) / З.А. Орлов. Исследование средств масштабирования систем контейнерной виртуализации. Аллея науки, no. 9(2), 2017 г., стр. 867-871.

11. M. Luksha. Kubernetes in action. Manning, 2018, 624 p.

12. S. Yaremchuk. Get to know Kubernetes. Sistemnyj administrator, no. 1-2, 2017, pp. 41-45 (in Russian) / С. Яремчук. Знакомимся с Kubernetes. Системный администратор, no. 1-2, 2017 г., стр. 41-45.

13. J. Shah, D. Dubaria. Building modern clouds: Using docker, kubernetes google cloud platform. In Proc. of the 2019 IEEE 9th Annual Computing and Communication Workshop and Conference, 2019, pp. 184-189.

14. D. Safronov, K. M. Stonozhenko, I. V. Nikiforov. Automatic load balancing between streaming data processing and cluster internal tasks using Kubernetes. In Proc. of the Conference on Modern Technologies in Programming Theory and Practice, 2020, pp. 165-167 (in Russian) / Д. Сафронов, К.М. Стоноженко, И.В. Никифоров. Автоматическая балансировка нагрузки между потоковой обработкой данных и внутренними задачами кластера с использованием Kubernetes. Сборник материалов конференции «Современные технологии в теории и практике программирования», 2020 г., стр. 165-167.

15. Kubernetes Deployment vs. StatefulSets. Available: https://www.baeldung.com/ops/kubernetes-deployment-vs-statefulsets, accessed March 25, 2022.

16. Operator pattern. Available: https://kubernetes.io/docs/concepts/extend-kubernetes/operator/, accessed March 25, 2022.

17. P.S.P. Shenoy, S.S. Vishnu et al. Enhancement of observability using Kubernetes operator. Indonesian Journal of Electrical Engineering and Computer Science, vol. 25, no. 1, 2022, pp. 496-503.

18. D. Silakov. JUJU project. Deploy complex applications with one click. System administrator, 2015, no. 10, pp. 4-8 (in Russian) / Д. Силаков. Проект Juju. Развертываем сложные приложения одним кликом. Системный администратор, no. 10, 2015 г., стр. 4-8.

19. Juju SDK Documentation. Available: https://juju.is/docs/sdk, accessed Mar. 25, 2022.

20. Introduction to Metacontroller. Available: https://metacontroller.github.io/metacontroller/intro.html, accessed March 25, 2022.

21. B. Shrishail, S. Ashish et al. A QOS-aware secure personal cloud storage with ubiquitous access and smart home extension. In Proc. of the 2015 International Conference on Computer, Communication and Control (IC4), 2015, 5 p.

22. C. Wu, V. Sreekanti, J.M. Hellerstein. Eliminating Boundaries in Cloud Storage with Anna. arXiv:1809.00089, 2018, 14 p.

23. Dell EMC ECS: powering a data-driven future. Available: https://www.dell.com/en-us/dt/learn/data-storage/ecs.htm, accessed March 25, 2022.

24. A.S. Shemyakinskaya, I.V. Nikiforov. Hard drives monitoring automation approach for Kubernetes container orchestration system. Trudy ISP RAN/Proc. ISP RAS, vol. 32, issue 2, 2020. pp. 99-106. DOI: 10.15514/ISPRAS–2020–32(2)–8.

25. Extend the Kubernetes API with CustomResourceDefinitions. Available: https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/, accessed March 29, 2022.

26. S. Yaremchuk. Deploy monitoring Prometheus + Grafana. System administrator, no. 5, 2017, pp. 36-44 (in Russian) / С. Яремчук. Ставим мониторинг Prometheus + Grafana. Системный администратор, no. 5, 2017 г., стр. 36-44.


Рецензия

Для цитирования:


СТОНОЖЕНКО К.М., НИКИФОРОВ И.В., УСТИНОВ С.М. Подход автоматического управления объектным хранилищем с помощью Operator SDK и Custom Resource Definition. Труды Института системного программирования РАН. 2022;34(2):123-134. https://doi.org/10.15514/ISPRAS-2022-34(2)-10

For citation:


STONOZHENKO K.M., NIKIFOROV I.V., USTINOV S.M. Automated Object Storage Management Approach with Operator SDK and Custom Resource Definition. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2022;34(2):123-134. https://doi.org/10.15514/ISPRAS-2022-34(2)-10



Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)