CI, CD и DEVOPS взят над миром разработки программного обеспечения штормом. Большинство компаний сегодня понимают, что практика непрерывной интеграции (CI) и непрерывной доставки (CD) даст огромные преимущества, такие как увеличение доходов бизнеса и более быстрое время на рынке. Спрос на эти навыки неуклонно растет за последние несколько лет.
Сегодня есть множество инструментов, доступных в ландшафте CI/CD/DEVOPS. Реализация непрерывной интеграции, непрерывная доставка и постоянное развертывание с этими инструментами и каркасами могут помочь нам чрезвычайно в модернизации нашего жизненного цикла разработки программного обеспечения. Он рано ловит нас в нас, улучшает время на рынок, снижает задержку и увеличивает качество наших программных продуктов. Это, в свою очередь, снижает общую стоимость разработки программного обеспечения в стартапах и предпринимательстве.
Спрос на профессионалов, имеющих опыт работы с CI/CD/DEVOPS, неуклонно растет за последние несколько лет. Заработная плата для этих навыков прошла через крышу и привязана только к увеличению спроса на эти навыки. Профессионалы с набором навыков CI/CD/DEVOPS могут потребовать в размере 150 тыс. Долл. США в качестве их ежегодной компенсации в соответствии с последними экспрессоми США и зарплаты.
Создайте непрерывную интеграционное трубопровод с использованием репозиториев облачных источников, облачные построения, построить триггеры и реестр контейнера.
‣ Создайте простую веб-приложение Python Flask
‣ Определить докеров
‣ Управление изображениями докера с регистром сборки и контейнера облака
‣ Автоматизация сборки с триггерами
‣ Проверьте изменения в сборке
Развернуть приложения к приложению Google Cloud Services, двигатель Kubernetes и Cloud Run.
• Развертывание в приложении двигателя
• Развертывание к двигателю Kubernetes
• Развертывание до облачного запуска
Развертывание в приложении двигателя
Приложение Engine — это полностью автоматизированная платформа развертывания. Он поддерживает много языков, включая Python, Java, JavaScript и Go. Чтобы использовать его, мы создаем файл конфигурации и развертывание приложений с парой простых команд. Мы создаем файл с именем App.yaml и развернут его в App Engine.
gcloud app create --region=us-central
gcloud app deploy --version=one --quiet
gcloud app deploy --version=two --no-promote --quiet
Развертывание к двигателю Kubernetes
Двигатель Kubernetes позволяет создать кластер машин и развернуть любое количество приложений к нему. Kubernetes Расчетные детали управляющих машин и позволяют автоматизировать развертывание ваших приложений с помощью простых команд CLI. Чтобы развернуть приложение в Kubernetes, сначала нужно создать кластер. Затем вам нужно добавить файл конфигурации для каждого приложения, который вы будете развернуть в кластере.
Добавить файл с именем kubernetes-config.yaml
• https://kubernetes.io/docs/conepts/worksloads/controllers/deployment/
• https://kubernetes.io/docs/tasks/access-Application-cluster/create-external-load-lancer/
Чтобы использовать двигатель Kubernetes, вам нужно создать образа докера.
gcloud builds submit --tag gcr.io/$DEVSHELL_PROJECT_ID/devops-image:v0.2 .
Введите следующие команды Kubernetes для развертывания вашего приложения:
kubectl apply -f kubernetes-config.yaml
В файле конфигурации были указаны три реплика приложения. Введите следующую команду, чтобы увидеть, были ли созданы ли три экземпляра:
kubectl get pods
Балансировщик нагрузки также был добавлен в файл конфигурации. Введите следующую команду, чтобы увидеть, было ли это создано:
kubectl get services
Развертывание до облачного запуска
Облако проводится упрощает и автоматизирует развертывание в Кубебени. Когда вы используете Cloud Run, вам не нужен файл конфигурации. Вы просто выбираете кластер для вашего приложения. С Cloud Run, вы можете использовать кластер, управляемый Google, или вы можете использовать свои собственные кластер Kubernetes. Чтобы использовать облачный запуск, ваше приложение должно быть развернуто с помощью образа докера, и оно должно быть нестандартным.
Чтобы использовать облачный запуск, вам нужно построить изображение докера.
gcloud builds submit --tag gcr.io/$DEVSHELL_PROJECT_ID/cloud-run-image:v0.1 .
Когда сборка завершается в меню навигации GCP, нажмите Cloud Run.
Облачный прогон не включен по умолчанию. Нажмите Начните Использовать облачный запуск, чтобы включить API.
Нажмите Создать сервис.
Примите значения по умолчанию в разделе развертывания платформы.
Нажмите на ссылку «Выбрать» в текстовом поле URL-адреса-контейнера. В результирующем диалоговом окне разверните изображение Cloud-Run-Image и выберите указанный образ. Затем нажмите «Продолжить».
Наконец, нажмите Создать. Когда появится зеленый чек, нажмите на URL, который автоматически генерируется для приложения.
Проверьте мой GitHub для более подробной информации:
IAMVIGNESHC/GCP-DEVOPSPIPELINECONTINESONSONTEGRATION-развертывание
Создайте непрерывную интеграционное трубопровод с использованием репозиториев облачных источников, облачные построения, построить триггеры и реестр контейнера. Развернуть приложения к приложению Google Cloud Services, двигатель Kubernetes и Cloud Run.
Создайте непрерывную интеграционное трубопровод с использованием репозиториев облачных источников, облачные построения, построить триггеры и реестр контейнера.
‣ Создайте простую веб-приложение Python Flask
‣ Определить докеров
‣ Управление изображениями докера с регистром сборки и контейнера облака
‣ Автоматизация сборки с триггерами
‣ Проверьте изменения в сборке
Развернуть приложения к приложению Google Cloud Services, двигатель Kubernetes и Cloud Run.
• Развертывание в приложении двигателя
• Развертывание к двигателю Kubernetes
• Развертывание до облачного запуска
Развертывание в приложении двигателя
Приложение Engine — это полностью автоматизированная платформа развертывания. Он поддерживает много языков, включая Python, Java, JavaScript и Go. Чтобы использовать его, мы создаем файл конфигурации и развертывание приложений с парой простых команд. Мы создаем файл с именем App.yaml и развернут его в App Engine.
GCloud App Create-Central
Gcloud приложение развертывает …
main.py :
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route("/")
def main():
model = {"title": "Hello DevOps Fans."}
return render_template('index.html', model=model)
if __name__ == "__main__":
app.run(host='0.0.0.0', port=8080, debug=True, threaded=True)
Оригинал: «https://dev.to/iamvigneshc/gcp-devops-pipeline-continuous-integration-deployment-591d»