В этой статье я покажу вам, как настроить кластер Kubernetes в облаке AWS с помощью Ansible.

Давайте начнем

Шаг 1. Настройте AWS CLI2 SDK

Шаг 2. Задайте некоторые переменные среды

Замените AWS_ACCESS_KEY_ID и AWS_SECRET_ACCESS_KEY своими учетными данными AWS.

Шаг 3. Создайте файл конфигурации Ansible

Это доступный конфигурационный файл «ansible.cfg».

Обновите private_key_file с помощью AWS KeyPair

Шаг 4. Обновите переменные в файле launch_ec2_instances.yml

Обновите пару ключей, образ (используйте AMI ID Amazon Linux 2), vpc_subnet_id, security_group_id (SG должен разрешать все порты), регион и output_dir

Шаг 5. Запустите файл playbook launch_ec2_instances.yml.

Этот сценарий предоставит 4 экземпляра EC2 в облаке AWS. 3 экземпляра EC2 для рабочих узлов и 1 экземпляр EC2 для главного узла.

$ vim launch_ec2_instances.yml

Теперь проверьте, запущены ли экземпляры в облаке AWS.

Шаг 6: Загрузите роли для настройки главного узла и рабочего узла.

$ ansible-galaxy установить mtabishk.ansible_kubernetes_master_role -p roles /

$ ansible-galaxy установить mtabishk.ansible_kubernetes_worker_role -p roles /

Для того, чтобы перечислить роли:

Список $ ansible-galaxy

Шаг 7. Создайте сценарий использования этих ролей.

$ vim use_k8s_cluster_roles.yml

Запустите playbook:

$ ansible-playbook use_k8s_cluster_roles.yml

Вуаля !! Ваш кластер Kubernetes будет настроен в облаке AWS и готов к использованию.

Давайте протестируем кластер Kubernetes, запустив развертывание.

Как вы можете ясно видеть, развертывание запущено и работает отлично.

Видео демонстрация:

GitHub: https://github.com/mtabishk/ansible-kubernetes-cluster-aws

Ansible Galaxy: https://galaxy.ansible.com/mtabishk

Это все для этой статьи. Надеюсь, Вы кое-что узнали здесь.

Спасибо всем за чтение. Я скоро вернусь с новыми статьями, спасибо!

Мухаммад Табиш Хандай

LinkedIn: https://www.linkedin.com/in/mtabishk/

Больше контента на plainenglish.io