{"id":183583,"date":"2023-08-17T16:51:43","date_gmt":"2023-08-17T15:51:43","guid":{"rendered":"https:\/\/liora.io\/de\/?p=183583"},"modified":"2026-02-06T06:21:37","modified_gmt":"2026-02-06T05:21:37","slug":"vereinfachte-bereitstellung-mit-gcp-cloud-deploy","status":"publish","type":"post","link":"https:\/\/liora.io\/de\/vereinfachte-bereitstellung-mit-gcp-cloud-deploy","title":{"rendered":"Vereinfachte Bereitstellung mit GCP Cloud Deploy"},"content":{"rendered":"<p><strong>Continuous Integration and Delivery (CI\/CD) wird immer wichtiger, da es dem Ziel der Agilit\u00e4t bei der Anwendungsentwicklung entspricht. Das CI\/CD-Prinzip hat sich jedoch im Laufe der Zeit als effektiv erwiesen, was zum Teil auf die Tools zur\u00fcckzuf\u00fchren ist, die die kontinuierliche Bereitstellung erm\u00f6glichen. Eines dieser Werkzeuge ist GCP Cloud Deploy. Hier erf\u00e4hrst du, wie es funktioniert.<\/strong><\/p>\n<h3>Was ist GCP Cloud Deploy?<\/h3>\n<strong>GCP Cloud Deploy<\/strong> ist einer der vielen Dienste der <a href=\"https:\/\/liora.io\/de\/die-services-der-google-cloud-platform-gcp\">Google Cloud Platform.<\/a> Das Ziel ist es dann, einen neuen Code automatisch in der Produktion einzusetzen. So werden alle Aufgaben, die mit dem Ver\u00f6ffentlichungszyklus einer Anwendung oder Software in der Produktionsumgebung verbunden sind, nach festgelegten Sequenzen automatisiert. Und das ohne menschliches Eingreifen. Dieser Service passt voll und ganz in die <a href=\"https:\/\/liora.io\/de\/devops-ingenieur-der-neue-most-sexy-job-2023\">DevOps-Bewegung,<\/a> die eine kontinuierliche Integration und Bereitstellung (CI\/CD) beinhaltet.\n\n?Gut zu wissen: Mit Cloud Deploy lassen sich Einsatzpipelines f\u00fcr GKE, Anthos und Cloud Run erstellen.\n<h3>Wie stelle ich eine Anwendung mit Cloud Deploy bereit?<\/h3>\nSobald ein <a href=\"https:\/\/liora.io\/de\/devops-engineer-aufgaben-und-kompetenzen\">DevOps \u00c4nderungen an einer Anwendung vornimmt,<\/a> muss er den neuen Code in die Cloud Source Repositories \u00fcbertragen. Damit diese \u00c4nderungen in der endg\u00fcltigen Version der Anwendung ber\u00fccksichtigt werden, muss er zun\u00e4chst eine erste Version dieser Aktualisierung erstellen. An dieser Stelle kommt <strong>Google Cloud Deploy<\/strong> ins Spiel, das seinen Lebenszyklus \u00fcber eine Verbreitungspipeline verwalten wird.\n\n?Auch interessant:\n<table dir=\"ltr\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\n<colgroup>\n<col width=\"726\"><\/colgroup>\n<tbody>\n<tr>\n<td data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;Alooma: Wie funktioniert dieses GCP Tool?&quot;}\" data-sheets-hyperlink=\"https:\/\/liora.io\/de\/alooma-funktionsweise-und-vorteile-dieses-in-gcp-integrierten-tools-2\"><a href=\"https:\/\/liora.io\/de\/alooma-funktionsweise-und-vorteile-dieses-in-gcp-integrierten-tools-2\" target=\"_blank\" rel=\"noopener\">Alooma: Wie funktioniert dieses GCP Tool?<\/a><\/td>\n<\/tr>\n<tr>\n<td data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;GCP Create Custom Role&quot;}\" data-sheets-hyperlink=\"https:\/\/liora.io\/de\/gcp-create-custom-role-passe-deine-zugaenge-an\"><a href=\"https:\/\/liora.io\/de\/gcp-create-custom-role-passe-deine-zugaenge-an\" target=\"_blank\" rel=\"noopener\">GCP Create Custom Role<\/a><\/td>\n<\/tr>\n<tr>\n<td data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;Der Cloud Adoption Framework&quot;}\" data-sheets-hyperlink=\"https:\/\/liora.io\/de\/die-cloud-adoption-framework-gcp-caf\"><a href=\"https:\/\/liora.io\/de\/die-cloud-adoption-framework-gcp-caf\" target=\"_blank\" rel=\"noopener\">Der Cloud Adoption Framework<\/a><\/td>\n<\/tr>\n<tr>\n<td data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;Entdecke den GCP Cloud Rechenservice&quot;}\" data-sheets-hyperlink=\"https:\/\/liora.io\/de\/entdecke-den-rechenservice-gcp-cloud-functions\"><a href=\"https:\/\/liora.io\/de\/entdecke-den-rechenservice-gcp-cloud-functions\" target=\"_blank\" rel=\"noopener\">Entdecke den GCP Cloud Rechenservice<\/a><\/td>\n<\/tr>\n<tr>\n<td data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;GCP Firestore was ist das&quot;}\" data-sheets-hyperlink=\"https:\/\/liora.io\/de\/gcp-firestore-was-ist-das\"><a href=\"https:\/\/liora.io\/de\/gcp-firestore-was-ist-das\" target=\"_blank\" rel=\"noopener\">GCP Firestore was ist das<\/a><\/td>\n<\/tr>\n<tr>\n<td data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;Der Google Cloud Catalog&quot;}\" data-sheets-hyperlink=\"https:\/\/liora.io\/de\/google-cloud-data-catalog-wie-man-seine-daten-besser-verwaltet\"><a href=\"https:\/\/liora.io\/de\/google-cloud-data-catalog-wie-man-seine-daten-besser-verwaltet\" target=\"_blank\" rel=\"noopener\">Der Google Cloud Catalog<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Die Definition der Lieferpipeline und der Ziele<\/h3>\nDie Broadcast-Pipeline enth\u00e4lt mehrere Elemente, die f\u00fcr die Bereitstellung einer Anwendung unerl\u00e4sslich sind. Dazu geh\u00f6ren:\n<ul>\n \t<li><strong>Der Name und die Beschreibung:<\/strong> Dies ist notwendig, um auf die Pipeline zu verweisen.<\/li>\n \t<li><strong>Die Promotionsreihenfolge:<\/strong> Hier wird die Reihenfolge festgelegt, in der alle Deployment-Aktionen ausgef\u00fchrt werden.<\/li>\n \t<li><strong>Ziele:<\/strong> Dies sind die Umgebungen, in denen die Anwendung eingesetzt werden soll.<\/li>\n \t<li>Zum Beispiel <strong>Entwicklung (Dev), Qualit\u00e4tskontrolle (QA)<\/strong> und Produktion (Prod). Diese Ziele sind mit einem Anthos-, GKE- oder Cloud Run-Cluster verbunden.<\/li>\n<\/ul>\nGut zu wissen: Mehrere Pipelines k\u00f6nnen das gleiche Ziel verwenden. Dasselbe Ziel kann aber in jeder Pipeline nur einmal eingebunden werden. Au\u00dferdem kann eine Pipeline mehrere Versionen erstellen und mehrere Ziele verwenden.\n\nDie Definition der <strong>Broadcast-Pipeline<\/strong> erfolgt in der YAML-Konfigurationsdatei. Sie legt dann alle Elemente der Pipeline fest. Au\u00dferdem wird eine Konfiguration f\u00fcr Scaffold ben\u00f6tigt. Diese Datei erm\u00f6glicht es dem <strong>GCP Cloud Deploy-Dienst,<\/strong> Rendering- und Deployment-Operationen durchzuf\u00fchren.\n\nZu diesem Zeitpunkt arbeitest du noch nicht mit Google Cloud Deploy, sondern mit Cloud Build. Du solltest sie daher beim Cloud Deploy-Dienst registrieren, um die Verteilung an die Zielumgebungen in der vorgegebenen Reihenfolge zu verwalten.\n<figure>\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"900\" height=\"500\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/8\/2023\/08\/gcp_cloud_deploy1.png\" alt=\"\" loading=\"lazy\" srcset=\"https:\/\/liora.io\/app\/uploads\/sites\/8\/2023\/08\/gcp_cloud_deploy1.png 900w, https:\/\/liora.io\/app\/uploads\/sites\/8\/2023\/08\/gcp_cloud_deploy1-300x167.png 300w, https:\/\/liora.io\/app\/uploads\/sites\/8\/2023\/08\/gcp_cloud_deploy1-768x427.png 768w\" sizes=\"(max-width: 900px) 100vw, 900px\"><figcaption><\/figcaption><\/figure>\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\"><div class=\"wp-block-button \"><a class=\"wp-block-button__link wp-element-button \" href=\"https:\/\/liora.io\/de\/weiterbildung-zum-devops\">Lerne GCP Cloud Deploy<\/a><\/div><\/div>\n\n<h4>Der Release Call<\/h4>\nIm ersten Schritt geht es darum, eine Version der an der Anwendung oder Software vorgenommenen \u00c4nderungen zu erstellen. Dazu musst du Cloud Deploy \u00fcber die <strong>GCP-Konsole<\/strong> oder die <a href=\"https:\/\/liora.io\/de\/power-bi-rest-api-was-ist-das-und-wie-kann-man-sie-nutzen\">API aufrufen<\/a> und ihm die Compiler-Artefakte sowie die Referenzen auf bestimmte Container-Images \u00fcbermitteln.\n\nVon da an speichert<strong> GCP Cloud Deploy<\/strong> eine Pipeline-Instanz im Rahmen der Version. Dann ruft es die Konfigurationsdateien YALM und Skaffold auf, die im Cloud-Speicher abgelegt sind. Dies erm\u00f6glicht es ihm dann, eine Release-Ressource zu erstellen. Dies ist eine Manifestdatei f\u00fcr jede Umgebung.\n<h4>Der Aufruf zum Rollout<\/h4>\nNach diesem Aufruf an das Release wird automatisch eine Rollout-Ressource erstellt. Diese initiiert die Lieferpipeline. Die Rollout-Ressource besteht aus mehreren Elementen:\n<ul>\n \t<li><strong>Phasen:<\/strong> Dies ist eine Unternachricht des Deployments. Es gibt also mehrere Phasen innerhalb der Lieferpipeline.<\/li>\n \t<li><strong>Aufgaben:<\/strong> Dies sind die spezifischen Operationen, um die Bereitstellung der Anwendung zu gew\u00e4hrleisten. Innerhalb einer Phase gibt es eine oder mehrere Aufgaben.<\/li>\n \t<li><strong>Aufgabenausf\u00fchrungen:<\/strong> Dies sind die Instanzen der Aufgaben. Zum Beispiel: eine versuchte Bereitstellung, eine Bereitstellung, eine Validierung, eine versuchte Validierung usw. Die Aufgaben werden in der Regel von einer Person ausgef\u00fchrt.<\/li>\n<\/ul>\nAll diese Elemente wurden zuvor in der <strong>Promotionssequenz<\/strong> festgelegt.\n\nDas<strong> Ziel des Rollouts<\/strong> ist es, die Version mit der ersten Zielumgebung zu verkn\u00fcpfen. Dabei wird die modifizierte Anwendung auf dieses erste Ziel ausgerollt.\n\nUm diese verschiedenen Operationen durchzuf\u00fchren, kann jedes CI-Tool verwendet werden, das Docker-Images erzeugen kann.\n<h4>Promotion der Anwendung<\/h4>\nDer Einsatz der Anwendung in den anderen Zielumgebungen setzt einen Promotionsaufruf voraus. Das hei\u00dft, die Durchf\u00fchrung aller zuvor definierten Sequenzen.\n\nBei jeder neuen Promotion wird die Anwendung auf der <strong>n\u00e4chsten Umgebung eingesetzt.<\/strong> Dies gilt bis zur letzten Zielumgebung (prod). Mit anderen Worten: Die endg\u00fcltige Anwendung geht in Produktion.\n<h4>Andere Aufgaben, die von GCP Cloud Deploy ausgef\u00fchrt werden<\/h4>\n\u00dcber den Prozess von Release, Rollout und Promotion hinaus umfasst der Lebenszyklus der Lieferpipeline mehrere zus\u00e4tzliche Aufgaben. Dazu geh\u00f6ren:\n<ul>\n \t<li><strong>Genehmigungen:<\/strong> Um eine Pipeline in ein neues Ziel zu bef\u00f6rdern, kann es sein, dass du bestimmte Genehmigungen ben\u00f6tigst. Dies geschieht in der Regel \u00fcber die IAM-Plattform (Identify and Access Management).<\/li>\n \t<li><strong>Benachrichtigungen:<\/strong> Um die Arbeit der DevOps zu erleichtern, sendet Cloud Deploy mehrere Benachrichtigungen an die DevOps, wenn bestimmte Ereignisse eintreten, z. B. Rendering, Deployment, Genehmigungen (erforderlich, genehmigt oder abgelehnt). Um diese Benachrichtigungen zu versenden, wird der Pub\/Sub-Dienst verwendet.<\/li>\n \t<li><strong>Rollbacks:<\/strong> Die Idee ist es, einen Einsatz der neuesten Version zu veranlassen.<\/li>\n<\/ul>\nDies ist eine vereinfachte Erkl\u00e4rung der Bereitstellung von Anwendungen in<strong> GCP Cloud Deploy.<\/strong> Wenn du tiefer in die Beherrschung dieses Tools einsteigen m\u00f6chtest, ist es unerl\u00e4sslich, sich weiterzubilden. Daf\u00fcr gibt es Liora. Durch unsere DevOps-Schulung lernst du alles, was du \u00fcber den <a href=\"https:\/\/liora.io\/de\/azure-devops-vs-github-actions-welches-ist-das-bessere-ci-cd-tool\">CI\/CD-Prozess<\/a> und die Verwendung dieser Werkzeuge wissen musst.\n<h3>Was wir uns merken sollten:<\/h3>\n<ul>\n \t<li style=\"font-weight: 400;\" aria-level=\"1\"><strong>GCP Deploy<\/strong> verwaltet den Deployment-Prozess vollst\u00e4ndig und f\u00f6rdert so die kontinuierliche Integration und Lieferung.<\/li>\n \t<li style=\"font-weight: 400;\" aria-level=\"1\">Um dieses Tool zu nutzen, m\u00fcssen<strong> DevOps<\/strong> zun\u00e4chst die Bereitstellungspipeline definieren, indem sie ihren Namen, ihre Beschreibung, die Promotionssequenz und die Zielumgebungen angeben.<\/li>\n \t<li style=\"font-weight: 400;\" aria-level=\"1\">Von da an kann der <strong>Bereitstellungsprozess<\/strong> in drei Phasen eingeleitet werden: Release, Rollout und Promotion.<\/li>\n<\/ul>\n<figure>\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"900\" height=\"500\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/8\/2023\/08\/gcp_cloud_deploy2.png\" alt=\"\" loading=\"lazy\" srcset=\"https:\/\/liora.io\/app\/uploads\/sites\/8\/2023\/08\/gcp_cloud_deploy2.png 900w, https:\/\/liora.io\/app\/uploads\/sites\/8\/2023\/08\/gcp_cloud_deploy2-300x167.png 300w, https:\/\/liora.io\/app\/uploads\/sites\/8\/2023\/08\/gcp_cloud_deploy2-768x427.png 768w\" sizes=\"(max-width: 900px) 100vw, 900px\">\n\n<figcaption><\/figcaption><\/figure>\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\"><div class=\"wp-block-button \"><a class=\"wp-block-button__link wp-element-button \" href=\"https:\/\/liora.io\/de\/unsere-aus-und-weiterbildungen\">Entdecke unsere Kurse<\/a><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Continuous Integration and Delivery (CI\/CD) wird immer wichtiger, da es dem Ziel der Agilit\u00e4t bei der Anwendungsentwicklung entspricht. Das CI\/CD-Prinzip hat sich jedoch im Laufe der Zeit als effektiv erwiesen, was zum Teil auf die Tools zur\u00fcckzuf\u00fchren ist, die die kontinuierliche Bereitstellung erm\u00f6glichen. Eines dieser Werkzeuge ist GCP Cloud Deploy. Hier erf\u00e4hrst du, wie es [&hellip;]<\/p>\n","protected":false},"author":78,"featured_media":183595,"comment_status":"open","ping_status":"open","sticky":false,"template":"elementor_theme","format":"standard","meta":{"_acf_changed":false,"editor_notices":[],"footnotes":""},"categories":[2476],"class_list":["post-183583","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cloud-dev"],"acf":[],"_links":{"self":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/183583","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/users\/78"}],"replies":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/comments?post=183583"}],"version-history":[{"count":1,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/183583\/revisions"}],"predecessor-version":[{"id":217235,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/183583\/revisions\/217235"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/media\/183595"}],"wp:attachment":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/media?parent=183583"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/categories?post=183583"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}