Files
netology-devops-gw-infra/readme.md
2023-03-22 11:04:12 +07:00

3.6 KiB
Raw Blame History

Дипломная работа

Репозиторий содержит конфигурацию terraform для поднятия инфраструктуры для выполнения дипломной работы.

Использование

Необходимо последовательно выполнить все шаги, описанные ниже. Каждый ansible-playbook описывает один шаг.

Инициализация конфигурации terraform

Запуск:

ansible-playbook --ask-vault-pass -i ansible/terraform_init terraform_init.yml

После этого возможно использование команд terraform из директории terraform.

NOTES:

  • время жизни токена ограничено, поэтому при истечении данного времени необходимо заново запустить данный playbook.

Деплой инфраструктуры

Из директории terraform:

terraform plan
terraform apply

Инициализация конфигурации kubespray

Запуск:

ansible-playbook -i ansible/kubespray_init kubespray_init.yml

Запуск kubespray: установка кластера kubernetes

Запуск:

ansible-playbook -i ansible/kubespray/inventory.ini vendor/kubespray/cluster.yml

Инициализация конфигурации kubectl

Запуск:

ansible-playbook -i ansible/kubectl_init kubectl_init.yml

Деплой сервисов

  • kube-prometheus-stack

    helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
    helm install monitoring prometheus-community/kube-prometheus-stack -f k8s/helm/kube-prometheus-stack/values.yml
    
  • приложение

    helm install simple-app k8s/helm/simple-app
    

    или, если чарт уже задеплоен

    helm upgrade simple-app k8s/helm/simple-app
    
  • atlantis

    helm upgrade --set "atlantis.config.github.user=<access_token>" --set "atlantis.config.github.token=<token_secret>" --set "atlantis.config.github.secret=<webhook_secret>" atlantis k8s/helm/atlantis
    

    где <access_token>, <token_secret> - это данные персонального access-токена, созданного на github, а <webhook_secret> - строка, которая должна совпадать в конфигурации webhook и atlantis.