По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
В этой статье вы узнаете о различных инструментах управления Kubernetes, которые можно использовать для управления кластерами Kubernetes.
В формирующейся облачной инфраструктуре Kubernetes повсюду, без сомнения, он стал стандартом для оркестрации контейнеров. Но обеспечение согласованной и безопасной работы нескольких кластеров Kubernetes, представляет собой новый набор проблем. Поэтому возникает потребность в инструментах управления Kubernetes.
Давайте рассмотрим некоторые популярные решения для эффективного управления Kubernetes.
Что такое DevOps, что нужно знать и сколько получают DevOps - специалисты?
1. K9s
k9s - панель мониторинга ресурсов на основе терминалов. Он имеет только интерфейс командной строки. Все что делали через веб-интерфейс панели мониторинга Kubernetes, вы можете сделать с помощью этой утилиты панели мониторинга терминала k9s.
Он постоянно следит за кластером Kubernetes и предлагает команды для работы с определенными ресурсами кластера.
Ниже приведены K9s функции:
Отслеживание состояния кластера в реальном времени
Настройка вида с помощью обложек K9s
Легкий переход между ресурсами Kubernetes
Параметры развертывания для проверки проблем с ресурсами кластера
Предоставляет расширенные подключаемые модули для создания собственных команд
2. Rancher
Rancher - платформа управления контейнерами с открытым исходным кодом, которая позволяет любому предприятию легко перенять Kubernetes. Вы можете развертывать и управлять облачными кластерами Kubernetes, работающими в GKE (GCP), EKS (AWS), AKS (Azure), или просто развертывать Kubernetes на виртуальных или физических машинах на ваш выбор.
Rancher упрощает все повседневные обязанности администратора, включая:
Мониторинг работоспособности кластеров
Настройка оповещений и уведомлений
Включение централизованного ведения журнала
Определение и применение глобальных политик безопасности
Установление аутентификации и применение наших политик обратной связи
Управление инфраструктурой и ее масштабирование
По мере ускорения внедрения Kubernetes в вашей компании, Кancher поощряет быстрое внедрение предоставления пользователям доступа непосредственно к Kubernetes API и CLI. Новый интеллектуальный интерфейс Rancher упрощает управление приложениями; команды могут легко развертывать рабочие нагрузки и управлять ими, определять объекты типа Секрет и управлять частными репозиториями, настраивать требования постоянных томов, настраивать балансировку нагрузки и обнаружение служб, управлять конвейерами CI.
3. Dashboard + Kubectl + Kubeadm
Панель управления Kubernetes представляет собой веб-интерфейс для развертывания контейнерных приложений. Он ищет и устраняет неисправности приложений и управляет кластером вместе с ресурсами.
С помощью панели мониторинга можно получить обзор приложений, запущенных в кластере, а также создать или изменить отдельные ресурсы Kubernetes, такие как задания развертывания, наборы реплик и многое другое.
Можно масштабировать развертывание или инициировать скользящее обновление, или даже перезапустить модуль или развернуть новые приложения с помощью мастера развертывания на панели мониторинга.
Kubectl - это средство командной строки для взаимодействия со службой API и отправки команд на главный узел. Его скрытые команды для вызовов API на сервер cluster API Kubernetes.
Kubeadm - это инструмент со встроенными командами для запуска минимального кластера Kubernetes. Он используется для начальной загрузки кластера, а не для подготовки компьютеров. С помощью kubeadm можно выполнить некоторые основные команды для загрузки кластера, создания маркера для присоединения к кластеру, возврата изменений, внесенных в кластер Kubernetes, и т.д.
4. Helm
Helm - менеджер пакетов для Kubernetes. Она позволяет разработчикам и операторам упаковывать, настраивать и развертывать приложения и службы в кластере Kubernetes. Он дает операторам больший контроль над кластерами Kubernetes, которые включают:
Упрощение, стандартизацию и многократное использование развертывания приложений
Простое описание сложных приложений с помощью диаграмм helm
Повышение производительности разработчиков
Снижение сложности развертывания
Повышает эксплуатационную готовность
Ускорение внедрения облачных приложений
Упрощает откат к предыдущей версии
Helm использует диаграммы, содержащие все определения ресурсов, для запуска приложений или служб в кластере Kubernetes. Здесь можно найти несколько helm диаграмм.
5. KubeSpray
KubeSpray - это диспетчер жизненного цикла кластера, который помогает развернуть готовый к эксплуатации кластер Kubernetes. Для автоматизации выделения ресурсов кластеров Kubernetes используется ansible-playbook.
Вот некоторые функции, которые включает в себя KubeSpray:
Основан на Ansible
Высокая доступность
Кроссплатформенность
Уровень производства
Возможность интеграции как с популярными поставщиками облачных инфраструктур, так и с железом
Различные опции конфигурации
Много платформенный CI/CD
Безопасность по умолчанию
По умолчанию Kubespray позволяет удаленно подключаться к кластеру Kubernetes через IP-адрес kube-master и порт 6443. Kubespray лучше всего подходит, если вам нужна гибкость в развертывании; он предоставляет множество пользовательских опций конфигурации.
Также, если вы знакомы с Ansible, то использование Kubespray вам покажется очень простым.
6. Kontena Lens
Kontena Lens - умная приборная панель для Kubernetes.
Это единственная система управления, которая вам понадобится, чтобы взять под контроль ваш Kubernetes. Он бесплатно доступен для операционных систем Mac OS, Windows и Linux. После запуска приложения Lens в интерфейсе появится список всех связанных кластеров.
Это самая мощная IDE для людей, которые действительно должны иметь дело с Kubernetes ежедневно. Вы можете обеспечить правильную настройку и настройку кластеров, а также более простую и быструю работу с кластерами и радикальное повышение производительности и скорости бизнеса.
Функции IDE Kontena Lens:
Возможность управления несколькими кластерами одновременно
Визуализация состояния кластера в реальном времени
Предоставляет встроенный терминал
Очень простая установка, поскольку это автономное приложение
Потрясающие возможности пользовательского интерфейса и пользователя
Поддерживается Kubernetes RBAC.
Протестировано для обработки почти 25K модулей в кластере
Kubernetes - это сложный инструмент, и Lens IDE помогает даже новичкам легко начать работу с Kubernetes. Это один из лучших инструментов для управления и визуализации кластеров Kubernetes.
7. WKSctl
WKSctl обозначает управление системой Weave Kubernetes. Является частью Wave Kubernetes Platform.
WKSctl - это инструмент, использующий GitOps для управления конфигурацией Kubernetes. GitOps - это не что иное, как набор практик, которые используют запросы git для управления приложениями и инфраструктурой традиционным способом.
С помощью WKSctl можно управлять кластерами Kubernetes через Git commits. Можно обновить кластер, добавлять или удалять узлы из кластера.
Этот инструмент можно запускать в 2 режимах: автономном и режиме GitOps. В автономном режиме создается статический кластер. В режиме GitOps он настраивает кластер в соответствии с данными cluster.yml и machines.yml, имеющимися в git.
Функции WKSctl:
Быстрый запуск кластера с git
Откат в случае сбоя развертывания
Регистрация изменения для рассмотрения и аудита
Для создания кластера требуются только IP-адрес и ключи ssh
Непрерывная проверка и корректировка состояние кластера
Заключение
Это был краткий обзор популярных инструментов управления Kubernetes кластерами. Выберите любой из вышеупомянутых инструментов и опробуйте его на своем кластере Kubernetes!
По запросам наших читателей мы начинаем цикл статей про управление и настройку IP-АТС FusionPBX. Данная АТС может быть использована как обычная АТС, распределенная АТС или сервер-коллцентра, сервер голосовой почты и так далее. Базируется данная АТС на проекте FreeSWITCH. По сути, FusionPBX является очень кастомизируемым и гибким веб-интерфейсом - в точности, как и FreePBX для Asterisk.
FusionPBX может быть установлена на множестве операционных систем, включая:
Debian
FreeBSD
CentOS
Вообще, данная платформа оптимизирована для работы на Debian 8, но, для нас более привычным является CentOS - на него и будем ставить.
Процесс установки
В первую очередь, нам понадобится «чистый» CentOS 7 Minimal или Netinstall - у нас есть подробная статья про его первоначальную установку.
Вероятно, если вы используете Minimal версию, то вам также придется установить wget - используйте команду yum install wget
Далее процесс установки крайне прост - нужно просто выполнить пару команд.
Первая - скачиваем установочный скрипт:
wget -O - https://raw.githubusercontent.com/fusionpbx/fusionpbx-install.sh/master/centos/pre-install.sh | sh
Затем, переходим в директорию и запускаем скрипт:
cd /usr/src/fusionpbx-install.sh/centos && ./install.sh
Далее ждем завершения процесса установки. Данный скрипт установит FusionPBX, FreeSWITCH, IPTables, Fail2ban, NGINX, PHP FPM и PostgreSQL. Процесс длится около 10 минут на типичной тестовой виртуалке - 768 Мб оперативной памяти, 1 ядро с частотой 3 ГГц - ничего особенного. Опять же, скорость установки сильно зависит от вашего интернет соединения.
После завершения процесса установки вам будет указан адрес вашего сервера, логин и сгенерированный сложный пароль.
Однако, при моей попытке зайти на данный адрес через веб-браузер я увидел ошибку 403 - Forbidden от nginx. Как оказалось, данная проблема решается с помощью следующих команд - некая ошибка выдачи прав:
chown -R root:root /usr/share/nginx/html/*
chmod -R 0755 /usr/share/nginx/html/*
service nginx restart
Далее наконец-то заходим в веб-интерфейс и вводим логин и пароль, который был нам предоставлен установочным скриптом из предыдущего шага:
Далее, мы получаем доступ к самому веб-интерфейсу - постоянным пользователям FreePBX данный GUI будет выглядеть очень непривычно.
Заключение
На этом данная статья подходит к своему логичному завершению - в дальнейших статьях мы покажем как настраивать транки, экстеншены, IVR и многое другое - пишите в комментариях свои пожелания, что вы бы хотели видеть в первую очередь.
Перед тем как говорить о технологии 802.1ad (QinQ) нужно вспомнить о технологии 802.1q. Если коротко, то это технология тегирования трафика, то есть деление его на 2 уровне модели OSI (так как на L3 сеть мы делим уже по маске)
Чем же отличается трафик обычный от тегированного спросите вы? Практически ничем, кроме добавления добавление тега в заголовок фрейма.
Размер такого тега всего 4 байта (32 бита) и он состоит:
TPID (Tag Protocol Identifier): на него уходит половина размера тега и это значение равно 0x8100 для 802.1q (VLAN) , а для 802.1ad(QinQ) заголовок выглядит так: 0x88a8.
TCI (Tag Control Information): на это поле уходит оставшийся половина 16 бит тега.
В него входит:
PCP(Priority) - 3-битное поле, которое относится к классу обслуживания IEEE 802.1p и сопоставляется с уровнем приоритета кадра. (3 бита)
Drop eligible indicator (DEI) (ранее CFI - Canonical Format Indicator) - Может использоваться отдельно или вместе с PCP для обозначения фреймов, которые могут быть отброшены при наличии перегрузки. (1 бит )
VID (VLAN Identifier) - VLAN ID . размером он в 12 бит ,а это значит что в него можно заложить 2^12 = 4096 VLAN . Но на самом деле меньше ,так как 0 и 4095( 0x000 и 0xFFF) зарезервированы , в итоге 4094 получается. (12 бит)
Зачем же понадобилась технология двойного тегирования QinQ? Вот тут возникает как раз ограничение поля VID на количество VLAN (4094) и тут на помощь приходит стандарт 802.1ad, который позволяет уже увеличить количество VLAN. (4094*4094 = 16760836 - больше пока никому не потребовалось.)
Ниже укажу dump трафика вначале обычного 802.1q:
А потом 802.1ad наш QinQ о котором как раз и шла речь:
Как видно из вывода, тип трафика указывается в самом фрейме. (см картинки выше), а далее идёт тег и в случае QinQ ещё один тег.
Практика
А теперь давайте немного попрактикуемся.
Клиенты VPC1 и VPC2 будут находиться в одной подсети, это было сделано для удобства.
VPC1 : 172.16.20.1/24
VPC2 : 172.16.20.2/24
Теперь первый Mikrotik, который будет отвечать за access и trunk порты
/interface bridge
add name=bridge vlan-filtering=yes
/interface bridge port
add bridge=bridge interface=ether1 pvid=100
add bridge=bridge interface=ether2
/interface bridge vlan
add bridge=bridge tagged=ether2 vlan-ids=100
Mikrotik4 конфигурируется точно по такой же логике
/interface bridge
add name=bridge vlan-filtering=yes
/interface bridge port
add bridge=bridge interface=ether1 pvid=100
add bridge=bridge interface=ether2
/interface bridge vlan
add bridge=bridge tagged=ether2 vlan-ids=100
Теперь самое интересное: Mikrotik2
/interface bridge
add ether-type=0x88a8 name=bridge vlan-filtering=yes
/interface bridge port
add bridge=bridge interface=ether1 pvid=200 tag-stacking=yes
add bridge=bridge interface=ether2
/interface bridge vlan
add bridge=bridge tagged=ether1 vlan-ids=100
add bridge=bridge tagged=ether2 vlan-ids=200
Mikrotik3
/interface bridge
add ether-type=0x88a8 name=bridge vlan-filtering=yes
/interface bridge port
add bridge=bridge interface=ether1
add bridge=bridge interface=ether2 pvid=200 tag-stacking=yes
/interface bridge vlan
add bridge=bridge tagged=ether2 vlan-ids=100
add bridge=bridge tagged=ether1 vlan-ids=200
Я указал только простую настройку для понимания настройки его на оборудовании Mikrotik. Не стал копать глубоко и указывать что и зачем каждый заголовок значит, так как моей задачей было указать основную настройку оборудования и по какой логике работает Q-in-Q, и с этой задачей я справился. Удачи!