Видео
Статьи
43 прочтения · 8 месяцев назад
Базовый мониторинг. Prometheus и node_exporter
Мониторинг. Мониторинг очень важен в работе DevOps инженера. Ведь всегда необходимо отслеживать состояние серверов, их загрузку. Это позволит вовремя исправлять ошибки и оптимизировать настройки и ресурсы сервера. Сегодня поговорим про Prometheus и конечно же node_exporter. Prometheus Начнём с установки самого Prometheus. Т. к. у меня на работе все контуры закрытые, то и установка будет производится не через пакетный менеджер, а через скаченные пакеты. Идем в репозиторий Prometheus на GitHub и скачиваем оттуда пакет...
41 прочтение · 8 месяцев назад
Установка Python3.10.10 + OpenSSL 1.1.1 в RHEL 7
Понадобилось мне недавно установить Python3 определенной версии на сервера с ОС RHEL 7. И вот вроде задача простая, но были несколько условий, а именно: И еще были требования к минимальным номерам версий, Python должен быть не ниже 3.10.10 и исходя из этого появлялась еще необходимость обновить OpenSSL до версии 1.1.1. После прочтения нескольких статей родилась эта короткая инструкция. Заходим на сервер, копируем архивы с Python и OpenSSL в папку /tmp и погнали. Начнём с установки OpenSSL версии 1...
162 прочтения · 1 год назад
Установка K8s совместно с Rancher
Сегодня мы рассмотрим наполнение локального Docker Registry, установку кластера Kubernetes и установку Rancher для K8s. Установка Kubernetes будет производится с помощью утилиты Rancher Kubernetes Engine (RKE). Погнали! Данная инструкция написана для такой схемы: Состав компонентов: Сервер установки обновлений (далее СУО) – 1 шт., Мастер нода – 3 шт., Воркер нода – 3 шт. Начнём настройку хостов, тут все просто. На все хосты установим Docker и отключим swap: apt install docker docker.io # или yum install docker docker...
21 прочтение · 1 год назад
Настройка сервера с Docker Registry
Начинаем небольшую серию статей по настройке локального Docker Registry, загрузки в него образов и их использование при установке кластера Kubernetes с помощью утилиты RKE. Итак приступим… Для настройки Docker Registry подключаемся к серверу на котором он будет расположен и выполняем следующие команды: sudo apt install docker docker.io sudo usermod -aG docker <Имя_Вашего_пользователя> Теперь создаем конфигурационный файл для Docker: sudo nano /etc/docker/daemon...
152 прочтения · 1 год назад
Как скопировать SSH-ключи на несколько серверов
Скрипт из этой заметки позволит вам раскидать SSH-ключ по списку серверов, чтобы не вводить ssh-copy-id для каждого сервера вручную. А как создать SSH-ключ вы можете узнать в заметке Как клонировать Git репозиторий через SSH, пункт «Приступаем к созданию SSH ключей». Создадим список всех серверов в файле: $ nano server.list 192.168.0.100 192.168.0.101. .. Установим sshpass чтобы постоянно руками не вводить пароль: # apt-get install sshpass Маленький скрипт, который будет раскидывать ключи: $ nano script...
3 прочтения · 1 год назад
Сохранение и загрузка нескольких Docker образов
Исходный код представленный в этой заметке доступен в моем репозитории GitHub. Код скрипта для сохранения (save-images.sh): #!/bin/bash list="images.txt" images="images.tar.gz" usage() { echo "USAGE: $0 [--image-list images.txt] [--images images.tar.gz]" echo " [-l|--image-list path] text file with list of images; one image per line." echo " [-i|--images path] tar.gz generated by docker save." echo " [-h|--help] Usage message" } POSITIONAL=() while [[ $# -gt 0 ]]; do key="$1" case...
1,1K прочтений · 1 год назад
Как клонировать Git репозиторий через SSH
Сегодня предлагаю ознакомиться с такой темой как доступ к репозиториям через SSH. Да эта тема простая, но все же считаю необходимым осветить ее в рамках блога. В данной заметке используются глобальные настройки Git, но никто не запрещает вам использовать индивидуальные настройки для каждого репозитория. Инструкция по работе с Git будет позже, в виде отдельной статьи. Почему SSH, а не HTTPS? У SSH доступа есть несколько преимуществ, а именно: · SSH не использует аутентификацию по паролю · SSH проще...
40 прочтений · 1 год назад
Kubernetes, создание и управление Helm Charts - K8s. Часть 6
Сегодня вашему вниманию представляю заключительную часть материала про основы Kubernetes (K8s), а именно про Helm Charts. Что такое Helm и зачем он нам Если вы уже успели поработать с Kubernetes, то вы уже представляете себе, насколько много приходится писать YAML файлов. Так вот, Helm позволит вам сильно упростить это! Helm позволяет создавать единые шаблоны для приложений. Вспомним как мы делали в предыдущих уроках Под каждое приложение мы создавали отдельные YAML файлы, в которых были жестко указаны имэйджи, порты и т...
57 прочтений · 1 год назад
Создание и управление Kubernetes INGRESS Controllers - K8s. Часть 5
Сегодня предлагаю поговорить про такой компонент Kubernetes как Ingress Controller. Ingress Controller используется для доступа к вашим приложениям внутри Kubernetes кластера. Существует большое количество различных контроллеров, вот некоторые из них: · https://github.com/kubernetes/ingress-nginx · https://github.com/jcmoraisjr/haproxy-ingress · https://github.com/projectcontour/contour · https://github.com/traefik/traefik · https://github...
22 прочтения · 1 год назад
Создание и управление Kubernetes Services - K8s. Часть 4
Сегодня мы с вами разберем тему Kubernetes Services. Приступаем. Виды K8s Services Вид сервиса задается при его создании. Существуют следующие виды services: Немного практики Первое что надо создать в кластере это deployment (про деплоймент есть отдельная заметка): kubectl create deployment DEPLOYMENT_NAME --image IMAGE_NAME Затем делаем scale: kubectl scale deployment DEPLOYMENT_NAME --replicas NUM_OF_REPLICAS И вот теперь мы создадим сервис, чтобы иметь доступ к нашим подам: kubectl expose deployment...
9 прочтений · 1 год назад
Kubernetes, создание и управление Deployments — K8s. Часть 3
Сегодня предлагаю разобрать следующий по списку объект Kubernetes, а именно Deployment. Создание и управление Deployments Команда для создания deployment выглядит так: kubectl create deployment DEPLOYMENT_NAME --image IMAGE_NAME Чтобы посмотреть список созданных deployment: kubectl get deployments Как и у Pods, у deployments есть команда для отображения подробной информации: kubectl describe deployments DEPLOYMENT_NAME Для скейлинга деплоймента можно использовать такую команду: kubectl scale deployment...
23 прочтения · 2 года назад
Главные объекты Kubernetes и работа с Pod — K8s. Часть 2
Главные объекты K8s И сегодня мы поговорим про Pod. Создание и управление Pods kubectl run POD_NAME —image=IMAGE_NAME —port=PORT Эта команда создаст pod с именем POD_NAME из Docker image с именем IMAGE_NAME и откроет на этом поде порт с номеров PORT. Но есть и второй вариант создания пода: kubectl apply -f FILE_NAME.yaml Данная команда создаст файл на основании yaml файла. С минимально необходимым yaml файлом вы можете ознакомиться в моем GitHub`е. Для вывода списка созданных подов можно использовать...