Überblick über Resource Manager

Automatisieren Sie Deployment und Vorgänge für Oracle Cloud Infrastructure-Ressourcen mit Resource Manager. Mit unterstützten Infrastructure-as-Code-(IaC-)Tools können DevOps-Ingenieure ihre Infrastruktur überall entwickeln und bereitstellen.

Eine Terraform-Konfiguration kodifiziert Ihre Infrastruktur in deklarativen Konfigurationsdateien. Mit Resource Manager können Sie Infrastrukturkonfigurationen und Statusdateien über mehrere Teams und Plattformen hinweg teilen und verwalten. Diese Infrastrukturverwaltung kann nicht nur mit lokalen Terraform-Installationen und Oracle Terraform-Modulen durchgeführt werden. Weitere Informationen zum Terraform-Provider von Oracle Cloud Infrastructure finden Sie unter Terraform-Provider. Eine allgemeine Einführung in Terraform und das "infrastructure-as-code"-Modell finden Sie in der Terraform-Community.

Resource Manager ist mit Federal Information Processing Standard (FIPS) konform. Weitere Informationen zu OCI in US-Regierungsregionen finden Sie unter Oracle US Government Cloud und Oracle US Defense Cloud.

Tipp

Sehen Sie sich ein Einführungsvideo zum Service an.

Wichtige Konzepte

Im Folgenden finden Sie kurze Beschreibungen wichtiger Konzepte und der Hauptkomponenten von Resource Manager.

Konfiguration
Informationen zur Codierung Ihrer Infrastruktur. Verwenden Sie Ihre Konfiguration, um die Oracle Cloud Infrastructure-Ressourcen in einem bestimmten Stack anzugeben. Geben Sie beispielsweise Ressourcenmetadaten, Datenquellendefinitionen und Variablendeklarationen an. Jede Terraform-Konfigurationsdatei hat das HCL-(HashiCorp Configuration Language-)Format oder das JSON-Format. HCL-formatierte Dateien verwenden die Dateierweiterung .tf . JSON-formatierte Dateien verwenden die Dateierweiterung .tf.json.
Informationen zu Terraform-Konfigurationsquellen, die mit Resource Manager unterstützt werden, finden Sie unter Speicherort der Terraform-Konfigurationen.
Beispielkonfigurationen finden Sie unter Beispiele für Terraform-Oracle Cloud Infrastructure-Provider und Von Oracle bereitgestellte Vorlagen. Weitere Informationen finden Sie unter Terraform-Konfigurationen für Resource Manager und Konfigurationen verfassen. Weitere Informationen finden Sie auch in der Dokumentation zu Terraform Language.
Konfigurationsquellenprovider
Verbindungsinformationen zu einem Quellcode-Kontrollsystem, in dem Ihre Terraform-Konfigurationsdateien gespeichert sind. Verwenden Sie einen Konfigurationsquellenprovider, um einen Stack aus einer versionierten Terraform-Remotekonfigurationsdatei zu erstellen.
Ein Konfigurationsquellenprovider umfasst die folgenden Typen: 

Bei einem Konfigurationsquellenprovider kann es sich um einen der folgenden Typen handeln:

  • Bitbucket
  • GitHub
  • GitLab

Im Folgenden werden die unterstützten Produkte für jeden Typ von Konfigurationsquellenprovider aufgeführt.

Ein Konfigurationsquellenprovider kann die folgenden Lebenszyklusstatus aufweisen:
  • Aktiv: Der Konfigurationsquellenprovider ist zur Verwendung verfügbar.
Weitere Informationen finden Sie unter Konfigurationsquellenprovider verwalten und Stack erstellen.

Einen Ablauf zur Verwendung der CLI für das Cloud-Provisioning in einer CI/CD-Pipeline finden Sie unter IaC in der Cloud: Terraform und Resource Manager in Ihre CI/CD-Pipeline integrieren - Mit der OCI-CLI erstellen.

Abweichung
Differenz zwischen dem tatsächlichen, realen Zustand Ihrer Infrastruktur und der zuletzt ausgeführten Konfiguration des Stacks. Beispiel: Eine Abweichung tritt auf, wenn ein Teammitglied Ihren Ressourcen ein Produktionstag hinzufügt oder wenn eine Ressource ausfällt. Sie können Abstandserkennungsberichte ausführen, um zu bestimmen, ob bereitgestellte Ressourcen andere Status aufweisen als die Ressourcen, die in der zuletzt ausgeführten Konfiguration des Stacks definiert wurden. Sie können auch detaillierte Abweichungsstatus für jede Ressource anzeigen.
Job
Anweisungen zum Ausführen der in Ihrer Konfiguration definierten Aktionen. Es kann jeweils nur ein Job für einen bestimmten Stack ausgeführt werden. Außerdem kann es nur ein Set von Oracle Cloud Infrastructure-Ressourcen in einem bestimmten Stack geben. Um ein anderes Ressourcenset bereitzustellen, müssen Sie einen separaten Stack erstellen und eine andere Konfiguration verwenden.
In Jobs wird die Historie zum zugehörigen Stack gespeichert. Beispielsweise werden in "Planen"-Jobs generierte Ausführungspläne und in "Anwenden"-Jobs Konfigurationen (Snapshots) und Statusdateien gespeichert. Jobs befinden sich im selben Compartment wie der Stack, mit dem sie verknüpft sind. Jedem Job wird eine OCID  zugewiesen.
Informationen zu Resource Manager-Jobtypen finden Sie unter Job erstellen.
Ein Job kann die folgenden Lebenszyklusstatus aufweisen:
  • Angenommen (ACCEPTED): Der Job wurde zur Verarbeitung angenommen.
  • In Bearbeitung (IN_PROGRESS): Der Job wird ausgeführt (wird ausgeführt).
  • Nicht erfolgreich (FAILED): Die Jobausführung wurde nicht abgeschlossen.
  • Erfolgreich (SUCCEEDED): Der Job wurde erfolgreich abgeschlossen.
  • Wird abgebrochen (CANCELING): Der Job wird abgebrochen. Es wurde eine Benachrichtigung gesendet, aber die Ausführung des Jobs wurde noch nicht gestoppt.
  • Abgebrochen (CANCELED): Der Job wurde abgebrochen, und die Ausführung wurde gestoppt.
Standardwiederholungs-Policy: Ein Job kann aufgrund eines Downstreamserviceproblems nicht erfolgreich verlaufen. Beispiel: Ein Apply-Job zum Erstellen einer Compute-Instanz kann aufgrund eines temporären Konnektivitätsproblems im Compute-Service nicht erfolgreich verlaufen. Wenn ein Job aufgrund eines Downstreamserviceproblems nicht erfolgreich verläuft, wiederholt sich der Job gemäß der Standardwiederholungs-Policy des Go-SDK. Siehe Go SDK for Oracle Cloud Infrastructure.
Modul
Eine Gruppe zugehöriger Ressourcen. Verwenden Sie Module, um einfache und wiederverwendbare Abstraktionen zu erstellen, sodass Sie Ihre Infrastruktur in Bezug auf die Architektur beschreiben können. Weitere Informationen finden Sie unter Module erstellen.
Package
In der Regel eine ZIP-Datei in einer Terraform-Konfiguration, die in einem unterstützten Provider gespeichert ist, wie GitHub. Weitere Informationen finden Sie unter Schaltfläche "Deployment für Oracle Cloud verwenden".
Persönlicher Endpunkt
Netzwerkinformationen für die Verbindung mit einer nicht öffentlichen Ressource. Weitere Informationen finden Sie unter Private Endpunkte verwalten.
Ressourcen-Discovery
Ein Feature zum Erfassen von bereitgestellten Oracle Cloud Infrastructure-Ressourcen als Terraform-Konfigurations- und -Statusdateien. Weitere Informationen finden Sie unter Resource Discovery.
Stack
Die Sammlung von Oracle Cloud Infrastructure-Ressourcen, die einer bestimmten Terraform-Konfiguration entsprechen. Jeder Stack befindet sich in dem von Ihnen angegebenen Compartment in einer einzelnen Region. Ressourcen in einem bestimmten Stack können jedoch über mehrere Regionen hinweg bereitgestellt werden. Jedem Stack wird eine OCID  zugewiesen.
Die Schritte zum Erstellen von Stacks finden Sie unter Stacks erstellen. Informationen zu Terraform-Konfigurationsquellen, die mit Resource Manager unterstützt werden, finden Sie unter Speicherort der Terraform-Konfigurationen.
Ein Stack kann die folgenden Lebenszyklusstatus aufweisen:
  • Wird erstellt: Der Stack wird erstellt.
  • Aktiv: Der Stack ist zur Verwendung verfügbar.
  • Wird gelöscht: Der Stack wird gelöscht.
  • Gelöscht: Der Stack wurde gelöscht.
  • Nicht erfolgreich: Der Stack konnte nicht erstellt werden.
Status
Der Status Ihrer Ressourcenkonfiguration, gespeichert im JSON-Format in einer Statusdatei (.tfstate). Weitere Informationen finden Sie unter Statusverwaltung.
Vorlage
Eine vordefinierte Terraform-Konfiguration, die eine Gruppe von Ressourcen bereitstellt, die in einem gängigen Szenario verwendet werden. Die Vorlage kann von Oracle oder einer Person in Ihrem Mandanten als private Vorlage bereitgestellt werden. Informationen zum Erstellen von Stacks aus Vorlagen finden Sie unter Stacks aus einer Vorlage erstellen. Weitere Informationen finden Sie unter Von Oracle bereitgestellte Vorlagen.

Informationen zum Erstellen privater Vorlagen finden Sie unter Private Vorlagen verwalten.

Features

Vorlagen

Eine Vorlage ist eine Terraform-Konfiguration, mit der Sie die Infrastruktur verwalten können. Vorlagen können Kunden helfen, die neu bei Infrastructure-as-Code-Konfigurationen sind und die Konfigurationen von Produktionsworkflows aktualisieren. Verwenden Sie Vorlagen, um Resource Manager auszuprobieren und bewährte Best Practices auf Ihre Produktionsworkflowkonfiguration anzuwenden. Informationen zu von Oracle bereitgestellten Vorlagen finden Sie unter Von Oracle bereitgestellte Vorlagen.

Erstellen Sie Ihre eigenen privaten Vorlagen, die Sie für andere im Mandanten freigeben möchten.

Seite "Ressourcen erstellen" starten

Speichern Sie die Konfiguration von einer Ressourcenkonfigurationsseite in einem Stack. Verwenden Sie den Stack, um die Ressource über das Infrastructure-as-Code-Modell zu installieren, zu konfigurieren und zu verwalten. Weitere Informationen finden Sie unter Stack auf der Seite "Ressourcen erstellen" erstellen.

CI/CD mit Resource Manager

Speichern Sie Ihre Terraform-Konfigurationen remote mit integrierten Quellcodekontrollsystemen wie Bitbucket Cloud, Bitbucket Server, DevOps, GitHub und GitLab. Diese Integration unterstützt Sie bei der kontinuierlichen Integration und Bereitstellung (CI/CD).

Weitere Informationen finden Sie unter:

Einen Ablauf zur Verwendung der CLI für das Cloud-Provisioning in einer CI/CD-Pipeline finden Sie unter IaC in der Cloud: Terraform und Resource Manager in Ihre CI/CD-Pipeline integrieren - Mit der OCI-CLI erstellen.

Darüber hinaus können wir auch Terraform-Konfigurationen in Object Storage-Buckets speichern. Weitere Informationen finden Sie unter Stack aus einem Bucket erstellen.

Ressourcen-Discovery

Ein Feature zum Erfassen bereitgestellter Ressourcen als Terraform-Konfigurations- und -Statusdateien. Mit diesem Feature können Sie:

  • Wechseln Sie von der manuell verwalteten Infrastruktur zur Resource Manager-gesteuerten Infrastruktur.
  • Erfahren Sie, wie Terraform mit HashiCorp Configuration Language-(HCL-)Syntax Oracle Cloud Infrastructure-Ressourcen darstellt.
  • Duplizieren Sie vorhandene Infrastruktur in einem anderen Compartment, oder erstellen Sie sie dort neu.
Statusverwaltung

Resource Manager speichert Terraform-Statusdateien für Stacks, sodass Sie dies nicht tun müssen. Mehrere Personen können gleichzeitig an einem Stack arbeiten, da Resource Manager den Stackstatus sperrt, sodass jeweils nur ein Job für einen bestimmten Stack ausgeführt werden kann. Resource Manager generiert und aktualisiert automatisch die Statusdatei des Stacks (.tfstate im JSON-Format). In dieser Datei werden die Ressourcen des Stacks Ihrer Konfiguration zugeordnet und wesentliche Konfigurationsmetadaten wie Ressourcenabhängigkeiten beibehalten.

Weitere Informationen zu Terraform-Statusdateien finden Sie unter Status.

Abweichungserkennung

Finden Sie heraus, ob die bereitgestellten Ressourcen einen anderen Status aufweisen als die Ressourcen, die in der Konfiguration der letzten Ausführung des Stacks definiert wurden, und zeigen Sie den detaillierten Abweichungsstatus für jede Ressource an.

Optional können Sie die Abweichungserkennung auf bestimmte Ressourcen begrenzen. Jede Ressource wird durch eine Ressourcenadresse identifiziert. Dabei handelt es sich um eine Zeichenfolge, die aus dem in der Terraform-Konfiguration des Stacks angegebenen Ressourcentyp und Namen sowie einem optionalen Index abgeleitet wird. Beispiel: Die Ressourcenadresse für die vierte Compute-Instanz mit dem Namen "test_instance" lautet oci_core_instance.test_instance[3]. Der Ressourcentyp ist oci_core_instance, ein Punkt fungiert als Trennzeichen, der Ressourcenname ist test_instance und der Index ist 3 in Klammern. Weitere Details und Beispiele für Ressourcenadressen finden Sie in der Terraform-Dokumentation unter Beispiele.

Weitere Informationen zur Abweichungserkennung finden Sie unter drift und in den folgenden Anweisungen:
Schaltfläche "In Oracle Cloud bereitstellen"

Mit der Schaltfläche "In Oracle Cloud bereitstellen" können Sie Ihre Remote-Terraform-Konfiguration mit dem in Resource Manager verfügbaren Workflow "Stack erstellen" starten.

Diese Abbildung zeigt die Schaltfläche "In Oracle Cloud bereitstellen".

Weitere Informationen finden Sie unter Schaltfläche "Deployment für Oracle Cloud verwenden".

Private Endpunkte

Mit privaten Endpunkten können Sie über Resource Manager auf nicht öffentliche Cloud-Ressourcen in Ihrem Mandanten zugreifen. Beispiel: Verwenden Sie die Remoteausführung mit einer privaten Instanz, oder greifen Sie auf eine Terraform-Konfiguration in einem privaten GitHub-Server zu.

Weitere Informationen, einschließlich allgemeiner Szenarios, finden Sie unter Private Endpunkte verwalten.

Benutzerdefinierte Provider

Sie können benutzerdefinierte Terraform-Provider mit Object Storage bereitstellen. Informationen zum Hinzufügen benutzerdefinierter Provider zu Buckets finden Sie unter Daten in Object Storage einfügen. Informationen zum Abrufen benutzerdefinierter Provider aus Buckets finden Sie unter Benutzerdefinierte Provider mit einem Stack verwenden.

Abhängigkeitssperrdateien

Abhängigkeitssperrdateien werden automatisch für neue und aktualisierte Stacks verwaltet. Sie entscheiden, wann die neuesten verfügbaren Versionen aus der konfigurierten Quelle von Terraform-Providern abgerufen werden sollen. Provider werden innerhalb der Versions-Constraints der Terraform-Konfiguration aktualisiert. Anweisungen hierzu finden Sie unter Aktuelle Provider abrufen.

Jobs zurücksetzen

Setzen Sie einen Stack auf einen früheren bekannten Status zurück. Das Zurückrollen ist eine gute Alternative, um Zeit damit zu verbringen, den unbekannten Status eines Stacks zu beheben.

Um ein Rollback durchzuführen, müssen Sie zuerst den gewünschten erfolgreichen Bewerbungsjob angeben. Dieser "Zieljob" verwendet eine andere Terraform-Konfiguration. Erstellen Sie einen Plan-Rollback-Job für diesen Zieljob, und erstellen Sie dann einen Apply Rollback-Job mit dem generierten Ausführungsplan.

Verfügbarkeit

Der Resource Manager-Service ist in allen kommerziellen Oracle Cloud Infrastructure-Regionen verfügbar. Unter Informationen zu Regionen und Availability-Domains finden Sie die Liste der verfügbaren Regionen sowie zugehörige Standorte, Regions-IDs, Regionsschlüssel und Availability-Domains.

Allgemeiner Workflow

In der folgenden Abbildung ist eine allgemeine Ansicht des Resource Manager-Workflows dargestellt.

In dieser Abbildung ist der Workflow für das Provisioning der Infrastruktur mit Resource Manager dargestellt.
  1. Erstellen Sie eine Terraform-Konfiguration.

    Hinweis

    Informationen zu Terraform-Konfigurationsquellen, die mit Resource Manager unterstützt werden, finden Sie unter Speicherorte für Terraform-Konfigurationen.
  2. Erstellen Sie einen Stack.
  3. Führen Sie einen "Planen"-Job aus, mit dem ein Ausführungsplan erstellt wird.
  4. Prüfen Sie den Ausführungsplan (Joblogs).
  5. Wenn im Ausführungsplan Änderungen erforderlich sind, aktualisieren Sie die Konfiguration, und führen Sie erneut einen "Planen"-Job aus.
  6. Führen Sie einen "Anwenden"-Job aus, um Ressourcen bereitzustellen.
  7. Prüfen Sie die Statusdateien und die Logdateien nach Bedarf.
  8. Sie können die Konfiguration optional erneut mit oder ohne Änderungen anwenden, indem Sie erneut einen "Anwenden"-Job ausführen.
  9. Um die für einen Stack ausgeführten Ressourcen freizugeben, können Sie optional einen "Zerstören"-Job ausführen.

Eine detaillierte Einführung in den Resource Manager-Workflow finden Sie unter Erste Schritte.

Möglichkeiten für den Zugriff auf Resource Manager

Der Zugriff auf den Resource Manager-Service kann über die Konsole oder die Resource Manager-REST-API erfolgen. Anweisungen zur Verwendung der Konsole, der API und der Befehlszeilenschnittstelle (CLI) sind in verschiedenen Themen in dieser Dokumentation enthalten. Eine Liste der verfügbaren SDKs finden Sie unter Software Development Kits und Befehlszeilenschnittstelle (CLI).

Konsole: Um mit der Konsole auf Resource Manager zuzugreifen, müssen Sie einen unterstützten Browser verwenden. Um zur Anmeldeseite der Konsole zu wechseln, öffnen Sie das Navigationsmenü oben auf dieser Seite, und wählen Sie Infrastrukturkonsole aus. Dort werden Sie aufgefordert, Ihren Cloud-Mandanten, Benutzernamen und Ihr Kennwort einzugeben. Öffnen Sie das Navigationsmenü , und wählen Sie Entwicklerservices aus. Wählen Sie unter Resource Manager die Option Überblick aus.

API: Um über APIs auf Resource Manager zuzugreifen, verwenden Sie die Resource Manager-API.

CLI: siehe Befehlszeilenreferenz für Resource Manager.

Standardprovider

Standardmäßig unterstützt Resource Manager terraform-provider-oci, den Terraform-Provider für Oracle Cloud Infrastructure.

Unterstützte Terraform-Provider von Drittanbietern finden Sie unter Unterstützte Terraform-Provider.

Authentifizierung und Autorisierung

Jeder Service in Oracle Cloud Infrastructure lässt sich mit IAM zur Authentifizierung und Autorisierung für alle Schnittstellen (Konsole, SDK oder CLI und REST-API) integrieren.

Ein Administrator in einer Organisation muss Gruppen , Compartments und Policys einrichten, die steuern, welche Benutzer auf Services und Ressourcen sowie den Zugriffstyp zugreifen können. Beispiel: Die Policys steuern, wer neue Benutzer erstellen, das Cloud-Netzwerk erstellen und bearbeiten, Instanzen erstellen, Buckets erstellen, Objekte herunterladen darf usw. Weitere Informationen finden Sie unter Identitätsdomains verwalten. Einzelheiten zum Schreiben von Policys für die einzelnen Services finden Sie in der Policy-Referenz.

Wenn Sie ein regulärer Benutzer sind (nicht ein Administrator), der die Oracle Cloud Infrastructure-Ressourcen verwenden muss, für die das Unternehmen verantwortlich ist, bitten Sie einen Administrator, eine Benutzer-ID für Sie einzurichten. Der Administrator kann festlegen, welche Compartments Sie verwenden können.

Wichtig

Policys für die Verwaltung von Oracle Cloud Infrastructure-Ressourcen sind auch für Resource Manager-Vorgänge erforderlich, die auf Ressourcen zugreifen. Beispiel: Für die Ausführung eines Anwendungsjobs auf einem Stack, der Compute-Instanzen und Subnetze enthält, sind Policys erforderlich, die Ihnen Berechtigungen für diese Ressourcentypen in den Compartments erteilen, in denen Sie die Ressourcen bereitstellen möchten. Beispiele für Policys zum Verwalten von Oracle Cloud Infrastructure-Ressourcen finden Sie unter Allgemeine Policys.

Administratoren: Allgemeine Policys, die Gruppen Zugriff auf Resource Manager-Ressourcen erteilen, finden Sie unter IAM-Policys (Resource Manager sichern).

Sicherheitseinstellungen

Neben dem Erstellen von IAM-Policys sollten Sie auch die folgenden Best Practices zur Sicherheit für Resource Manager befolgen.

  • Begrenzen der Verwendung sensibler Informationen in Konfigurations- und Ausgabedateien
  • Sicherheitsaudit ausführen
  • Verwenden Sie private Endpunkte, um sicher auf Ressourcen zuzugreifen, ohne den Netzwerktraffic für die Öffentlichkeit freizugeben

Siehe Resource Manager sichern.