Оркестравные нативные рабочие нагрузки с kro и kubernetes

В первой части этой серии я представил фон Orchestrator ресурса Kube (KRO). В этом рассрочке мы определим определение графа ресурсов для WordPress и развертываем несколько экземпляров, создав их в качестве приложений RORE.

Чтобы понять и оценить силу KRO, представьте себе управляемую хостинговую компанию, специализирующуюся на развертывании и управлении сайтами WordPress для разнообразных клиентов — каждая из которых имеет уникальный брендинг, пользовательские области и конкретные требования к производительности. Эта компания нуждается в последовательном определении развертывания WordPress, изменяя только несколько параметров на одного клиента. KRO идеально подходит для этого варианта использования.

Используя RGD в качестве централизованного плана для развертываний WordPress, компания может гарантировать, что каждый сайт придерживается последовательной и оптимизированной конфигурации, позволяя индивидуальным настройкам. Это разделение означает настройку ядра — охватывающая компоненты, такие как конфигурации базы данных, постоянные правила хранения и проникновения — поддерживается в одном надежном, многократному определению, упрощению обновлений и исправлений безопасности на всех сайтах.

В то же время индивидуальные экземпляры приложения могут быть адаптированы с конкретными настройками клиента, такими как уникальные учетные данные и пользовательские домены, что позволяет быстрая борьба с настройкой и снижение риска ручных ошибок. Этот подход не только оптимирует операции, но также повышает масштабируемость и надежность, что облегчает поставщику хостинга эффективно управлять растущим портфелем сайтов WordPress.

Этот урок будет определять рабочую нагрузку WordPress как RGD, которая инкапсулирует все необходимые ресурсы Kubernetes, такие как секреты, объемы, развертывание, услуги и вход. Затем мы определим два экземпляра, представляющие разных клиентов или арендаторов этой хостинговой компании.

Для полноты, у этого урока есть все шаги от начала до конца, чтобы исследовать KRO.

Шаг 1 — Установите и настройте Minikube

curl -lo sudo установить minikube-darwin-arm64/usr/local/bin/minikube 12 curl -lo sudo установить minikube-darwin-arm64/usr/local/bin/minikube

Давайте запустим Minikube и настроем хранение и вход. Мы будем использовать местный путь ранчо в качестве поставщика хранения.

Minikube Start Addons Addons включите вход 12 Minikube startminikube дополнения включить вход

Kubectl Apply -f

Наконец, установите Helm.

Brew Install Helm 1 Brew Install Helm

Шаг 2 — Установите KRO на Minikube

Во -первых, принесите последнюю версию Cro -выпуска, а затем установите ее в качестве диаграммы Helm в свое собственное пространство имен:

Экспорт kro_version = $ (curl -Sl \ | \ jq -r ‘.tag_name | ltrimstr («v»)’) helm install kro oci: //ghcr.io/kro-run/kro/kro \ —namespace kro \ -create-namespace \ -version = $ {kro_version} 123457789999999989. eptort $ vomverse $ $ vomversion = kro_version} 123457789789789797897897979779797979797977967797977967979797979797777777677 гг. -сл \ |.

Это создаст CRD в нашем кластере Kubernetes.

Шаг 3 — развернуть приложение WordPress с помощью kro

Создайте файл YAML, содержащий ресурс -графический рефинирование. Этот файл объединяет все объекты Kubernetes, необходимые для развертывания WordPress, включая компоненты MySQL, PersistentVolumeclaims, развертывание, услуги и, необязательно, ресурс Ingress:

В приведенном выше WordPress RGD определение структурировано в две основные части: схема и шаблоны ресурсов.

Схема определяет параметры ключей для вашего развертывания WordPress, таких как имя приложения, пароль MySQL (кодированный Base64), класс хранения и включен ли вход. Операторы могут настроить эти значения, не редактируя несколько объектов Kubernetes.

Затем шаблоны ресурсов используют эти значения схемы для динамического генерации всех необходимых ресурсов Kubernetes, включая секреты для хранения учетных данных MySQL, PersistentVolumeclaims как для данных MySQL, так и для WordPress, развертывания и сервисов для запуска MySQL и WordPress, и, опционально, для внешнего доступа.

Этот унифицированный подход упрощает процесс развертывания, агрегируя несколько взаимозависимых компонентов в единую логическую единицу. Это также обеспечивает согласованность и правильное секвенирование во время создания ресурсов. В результате управление сложным приложением, таким как WordPress, становится более эффективным, предсказуемым и менее подверженным ошибкам, поскольку любые изменения в параметрах конфигурации автоматически распространяются по всем соответствующим ресурсам.

Приведенный выше шаг приводит к новому RGD, называемому WP-APP.

Шаг 4 — развернуть два экземпляра приложения

Создайте еще один файл YAML (например, WordPress-Apps.yaml), который экстремирует ваш ресурс-графдирование. Здесь два приложения WordPress определены с помощью пользовательских имен, пароли MySQL, настройки хранения и включены вход:

Отделение RGD от индивидуальных экземпляров приложений предлагает значительные преимущества, особенно для управляемой хостинговой компании, развертывающей сайты WordPress для нескольких клиентов с пользовательскими доменами.

Индивидуальные экземпляры приложения, основанные на RGD, допускают настройки для клиента, такие как уникальные учетные данные MySQL, конфигурации хранения и настройки пользовательских доменов, без необходимости изменения базового плана. Это разделение упрощает техническое обслуживание, ускоряет процесс адаптации для новых клиентов и сводит к минимуму риск ошибок, поскольку конфигурация ядра определяется один раз, а затем параметризуется на экземпляр.

Обратите внимание, как мы изменили только необходимые параметры. Если вы хотите расширить это, измените имя хоста Ingress в качестве параметра.

После развертывания приложений они должны стать активными и синхронизировать.

Эти приложения переведены в различные ресурсы Kubernetes контроллером KRO.

Мы можем получить доступ к сайтам WordPress после добавления записей Host DNS и изменить заголовок через расширение, например, заголовок MOD для Chrome. Не забудьте запустить туннель Minikube, прежде чем получить доступ к сайтам.

Я надеюсь, что это руководство дало вам полный обзор KRO и рабочего процесса, участвующего в его использовании.

Trending Stories youtube.com/thenewstack Tech движется быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Janakiram MSV является основным аналитиком в Janakiram & Associates и адъюнкт -преподавателем Международного института информационных технологий. Он также является квалифицированным Google Cloud Developer, сертифицированным архитектором решений Amazon, сертифицированным разработчиком Amazon, … Подробнее от Janakiram MSV

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *