Пример создания общей директории для двух контейнеров в одном поде.
Replicas Посмотрим name и namespace Ingress'а: Отредактируем наш Ingress: И находим строку: Зададим 2 реплики: Можно сохранять изменения и смотреть количество Ingress Pod'ов. nodeSelector Укажем явно, на каким нодах нужно запускать Ingress. Посмотрим текущие label: Зададим label: Снова отредактируем Ingress: Нас интересует Deployment, а именно блок "spec" -> "containers". Добавим в него наш блок …
Продолжить читать "Kubernetes — Ingress Nginx: replicas и nodeSelector"
Все действия проводились на Ubuntu 18.04 Для начала нужно установить VirtualBox или WMvare. В данном примере будет использоваться VirtualBox. Добавим репозиторий и ключи: Обновим список репозиторием и установим VirtualBox: Добавим своего пользователя в группу VirtualBox'a:
Перейдем на страницу бинарных версий и найдем 2-ую версию: https://github.com/helm/helm/releases/latest Скачаем: Разархивируем и скопируем два бинарника в "/bin/" Создадим сервис аккаунт для tiller'а: И предоставим ему права для кластера : Инициализируем helm, указав созданный сервис аккаунт:
За основу возьмем официальный Docker образ fluntd Установим необходимые gem'ы для GELF протокола и Kubernetes'а, а так же укажем, что fluentd будет запускаться от пользователя root, иначе будет получать ошибку доступа. Dockerfile:
Сервисы в Kubernetes: Elasticsearch — elasticsearch MongoDB — mongodb-main Namespace: staging URL для входа в Web UI: graylog.domain.com Генерация "PASSWORD_SECRET" и хеш пароля "ROOT_PASSWORD_SHA2" PASSWORD_SECRET: Если пакет "pwgen" отсутствует в системе, то его необходимо установить. ROOT_PASSWORD_SHA2: Вводим пароль и получаем его хеш:
Пример манифестов для запуска двух контейнеров доступных с мира при помощи Ingress'a Deployment:
При поднятии Kubernetes на "голом железе" (Bare metal), а не на облачных решениях, где существуют LoadBalancer'ы, необходимо "открывать" Ingress "в мир" другими способами. В данной статье будет рассмотрен вариант с NodePort. Будем считать, что сам Kubernetes уже установлен. Данная команда необходимо не зависимо от среды развертывания: Далее предлагают установить Ingress и сам добавить NodePort:
Пример запуска Pod Создадим файл nginx.yaml со следующим содержимым: Для запуска выполним:
Для начала необходимо установить Docker. Для корректной работы Kubernetes необходимо отключить SWAP Так же проверить удалить его с fstab Добавим репозиторий Kubernetes и установим Ubuntu: CentOS 7: