Allgemeine häufig gestellte Fragen
Antworten auf häufig gestellte Fragen zum „ IBM Cloud Schematics “ sind im folgenden Abschnitt zusammengefasst.
Was ist IBM Cloud Schematics und wie funktioniert es?
IBM Cloud Schematics bietet leistungsstarke Tools zur Automatisierung Ihrer Cloud-Infrastruktur-Bereitstellung und Ihres Verwaltungsprozesses. Und die Konfiguration, der Betrieb Ihrer Cloud-Ressourcen und die Bereitstellung Ihrer Anwendungs-Workloads.
Zu diesem Zweck nutzt „ Schematics “ Open-Source-Projekte wie Terraform, Ansible, Red Hat OpenShift, Operators und Helm und stellt Ihnen diese Funktionen als Managed Service zur Verfügung. Anstatt jedes Open-Source-Projekt auf Ihrem System zu installieren und sich mit der API oder CLI vertraut zu machen. Sie können die Tasks deklarieren, die Sie in IBM Cloud ausführen möchten, und beobachten, wie Schematics diese Tasks für Sie ausführt.
Weitere Informationen zur Funktionsweise von Schematics finden Sie im Abschnitt mit den Informationen zu IBM Cloud Schematics.
Was ist 'Infrastruktur als Code' (Infrastructure as Code)?
Mit „Infrastructure as Code“ ( IaC ) können Sie Ihre Cloud-Umgebung kodifizieren, um die Bereitstellung und Verwaltung von Cloud-Ressourcen zu automatisieren. Anstatt Infrastrukturressourcen manuell bereitzustellen und zu konfigurieren oder Ihre Cloud-Umgebung mithilfe von Skripten anzupassen, verwenden Sie eine hochentwickelte Skriptsprache, um Ihre Ressourcen und deren Konfigurationen zu definieren. Tools wie Terraform stellen diese Ressourcen über ihre API in der Cloud bereit. Da Ihr Infrastrukturcode genauso behandelt wird wie Ihr Anwendungscode, können Sie Methoden des „ DevOps “ wie Versionskontrolle, Tests und kontinuierliche Überwachung anwenden.
Kann ich Terraform IBM Module mit Schematics verwenden, um die erforderliche Infrastruktur bereitzustellen?
Ja, Sie können Terraform IBM Module(TIM) mit Schematics verwenden, um die Infrastruktur bereitzustellen. Terraform IBM Module sind vorgefertigte, validierte und unternehmenstaugliche Module, die IBM Cloud Best Practices folgen. Diese Module können direkt in Ihren Terraform-Konfigurationen referenziert und mit Schematics workspaces verwendet werden, um IBM Cloud Ressourcen effizient bereitzustellen. Weitere Informationen und verfügbare Module finden Sie in der Terraform Registry.
Welche Kosten fallen für die Nutzung von Schematics an?
IBM Cloud Schematics-Arbeitsbereiche werden Ihnen kostenfrei zur Verfügung gestellt. Wenn Sie sich jedoch entscheiden, Ihre Terraform-Vorlage in „ IBM Cloud “ anzuwenden, indem Sie auf der Detailseite des Arbeitsbereichs auf „ Apply plan “ klicken oder den Befehl „ ibmcloud schematics apply “ ausführen, werden Ihnen die Cloud-Ressourcen in Rechnung gestellt, die in Ihrer Terraform-Vorlage beschrieben sind. Prüfen Sie die verfügbaren Servicepläne und Preisinformationen
für jede Ressource, die Sie erstellen möchten. Für manche Services gilt ein Grenzwert pro IBM Cloud-Konto. Wenn das Erreichen des Servicegrenzwerts für ein Konto bevorsteht, wird die Ressource nicht bereitgestellt; sie wird erst bereitgestellt,
wenn Sie das Servicekontingent erhöhen oder zuerst vorhandene Services entfernen.
Die Verwendung des Befehls Schematics ibmcloud terraform zeigt in Ihrem Befehl eine Warnung und eine Verwerfungsmeldung als Alias Terraform are deprecated. Use schematics or sch an.
Wie speichere ich Dateien zwischen Operationen?
Schematics speichert Dateien, die während Aktions-und Arbeitsbereichsoperationen in den Pfad /tmp/.schematics geschrieben werden. Die Dateien werden in denselben Pfad zurückgeschrieben, wenn die nächste Operation für den Arbeitsbereich
ausgeführt wird. Die Dateigröße ist auf 10 MB begrenzt.
Jobfehler aufgrund von Dateien, die aus dem Arbeitsbereich entfernt wurden oder fehlen, oder aufgrund von Vorlagenrepositorys für Aktionen (Ansible)
Fehler bei der Arbeit treten auf, wenn Dateien nach dem Importieren oder Klonen des Repositorys in Schematics aus dem Git-Vorlagen-Repository entfernt oder übersehen werden.
Zum Zeitpunkt der Ausführung können aus verschiedenen Gründen Dateien fehlen: - Die Dateien werden über das Dateisystem symlinks zu verschiedenen Dateien oder Ordnern im Repository oder zu externen Dateisystemen referenziert. -
Die Inhalte des Repos wurden als TGZ hochgeladen und Dateien, auf die von Git-Submodulen oder symlinks verwiesen wird, waren nicht in TGZ enthalten. - Die Dateien wurden von Schematics als anfällig oder
bösartig eingestuft.
Dateien, die mit Terraform oder Ansible-Vorlagen-Repos entfernt werden
Um Benutzer vor böswilligen Akteuren zu schützen, entfernt Schematics Dateien aus geklonten Git-Repositorys von Benutzern, die die Sicherheit oder Integrität des Dienstes beeinträchtigen könnten. Die Absicht besteht darin, Benutzer vor der Ausführung
nicht autorisierter Module oder Vorgänge zu schützen, die sich auf den Dienst auswirken könnten. Dateien, die als komprimierte Datei verpackt sind, wie zip- oder tar-Dateien, werden automatisch von den Benutzerdatenbanken
ausgeschlossen. Der Inhalt der Datei tar wird nicht überprüft. Ebenso wird die Verwendung von Dateien, die höher sind als 500KB, in Vorlagen-Repositorys nicht unterstützt (erlaubt), wo typische IaC-Konfigurationsdateien KB sind.
Wenn mit den Dateien gearbeitet werden soll, können diese zur Laufzeit in Schematics oder in /tmp importiert oder in /tmp/.schematics gespeichert werden. Zwischen den einzelnen Aufträgen werden nur Dateien mit einer
Größe von weniger als 10 MB gespeichert.
Beim Erstellen von „ Schematics “-Arbeitsbereichen oder -Aktionen klont „ IBM Cloud Schematics “ eine Kopie der Terraform-Vorlage ( Ansible ) aus Ihrem Repository „ Git “ und speichert sie an einem sicheren Ort. Bevor die Vorlagendateien gespeichert werden, analysiert Schematics den Inhalt und die Dateien, die als schädlich oder anfällig eingestuft werden, werden entfernt. Eine Zulassungsliste wird verwendet, um nur autorisierte Dateien zuzulassen. Das Entfernen von Dateien basiert auf den folgenden Kriterien:
- Die zulässigen Dateierweiterungen sind
.cer, .cfg, .conf, .crt, .der, .gitignore, .html, .j2, .jacl, .js, .json, .key, .md, .netrc, .pem, .properties, .ps1, .pub, .py, .service, .sh, .tf, .tf.json, .tfvars, .tmpl, .tpl, .txt, .yaml, .yml, .zip, _rsa, license. - Die zulässigen Bilderweiterungen sind
.bmp, .gif, .jpeg, .jpg, .png, .so .tif, .tiff. - Die Dateien, die ausdrücklich entfernt werden, sind
.asa, .asax, .exe, .php5, .pht, .phtml, .shtml, .swf, .tfstate, .tfstate.backup, .xap, .zip, .tar. - Alle Dateien mit mehr als 500 KB werden entfernt. Diese Dateibegrenzung gilt nicht für die zulässigen Bilddateitypen.
- Wenn der Name des Ordners mit einem (Punkt)
.beginnt, wird er als schädlich eingestuft und entfernt.
Die Liste der zulässigen Erweiterungen wird fortlaufend überwacht und in jedem Release aktualisiert. Sie können ein Support-Ticket einreichen, um die Aufnahme einer Dateiendung in die Liste zu beantragen.
Wird die Verwendung von symlinks in Git-Repositorys unterstützt?
Die Verwendung des Dateisystems symlinks in Git-Repos zur Ausführungszeit wird nicht unterstützt. Zur Jobausführungszeit wird Schematics symlinks nicht in geklonten Git-Repositorys traversiert.
Bei der Erstellung von Arbeitsbereichen oder Aktionen ist die Verwendung von symlinks zur Verweisung auf die variablen Dateien oder Ansible-Playbooks im zulässigen geklonten Repository zulässig.
Wird die Verwendung von Git-Submodulen in Git-Repos oder TGZ-Dateien unterstützt?
Die Verwendung von Git-Untermodulen wird nur für geklonte Git-Repositorys unterstützt. Wenn Schematics das Git-Repository klont, werden Git-Untermodule importiert. Wenn Repos als TGZ-Dateien hochgeladen werden, verwendet Schematics keinen Klonvorgang
und Dateien oder Ordner, auf die vom Git-Submodul verwiesen wird, sind nicht enthalten. Bei der Verwendung von TGZ-Dateien müssen alle von Git submodules oder symlinks benötigten Dateien in die TGZ-Datei aufgenommen werden.
Gibt es eine Ratenbegrenzung?
IBM Cloud Schematics unterstützt 50 API-Anfragen pro Minute, pro Region und pro Benutzer. Die Regionen sind us-east, us-south, eu-gb oder eu-de. Warten Sie mit dem erneuten Starten des Befehls.
Warum werden Aufträge in einer Warteschlange gewartet?
IBM Cloud Schematics stellt alle Benutzerjobs in eine einzige Warteschlange. Je nach Auslastung durch die Benutzer und der für die Ausführung der Aufträge benötigten Zeit kann es für den Benutzer zu Verzögerungen kommen. Weitere Informationen finden Sie unter Jobwarteschlangenstatus.
Wie erstelle ich ein IAM-Zugriffstoken, wenn die Client-ID bx verwendet wird?
Um ein IAM-Zugriffstoken zu erstellen, verwenden Sie export IBMCLOUD_API_KEY=<ibmcloud_api_key> und führen Sie den Befehl aus.
curl -X POST "https://iam.cloud.ibm.com/identity/token" -H "Content-Type: application/x-www-form-urlencoded" -d "grant_type=urn:ibm:params:oauth:grant-type:apikey&apikey=$IBMCLOUD_API_KEY" -u bx:bx.
Weitere Informationen finden Sie unter IAM-Zugriffstoken und unter API-Schlüssel erstellen. Sie können die Umgebungsvariablen
„ export ACCESS_TOKEN=<access_token> “ und „ export REFRESH_TOKEN=<refresh_token> “ festlegen.
Wie behebt man das Problem, dass das Klonen des Git Repositorys fehlgeschlagen ist, da die Remote-Referenz oder die Köpfe oder der Master nicht gefunden werden konnten und höchstwahrscheinlich ein ungültiger Branch-Name übergeben wurde?
Bei der Nutzung des Repositorys „ https://github.com/guruprasad0110/tf_cloudless_sleepy_13/ “ kann nach dem 1. Oktober 2020 diese Fehlermeldung angezeigt werden.
Wenn das Repository nach dem 1. Oktober 2020 erstellt wurde, muss die Syntax für den Hauptzweig wie folgt lauten: https://github.com/username/reponame/tree/main. Beispiel: https://github.com/guruprasad0110/tf_cloudless_sleepy_13/tree/main
Können Sie das Timeout für die Ressourcen „null-exec“ und „remote-exec“ verlängern?
Nein, die Ressourcen „null-exec“ (null_resources) und „remote-exec“ haben ein maximales Timeout von 60 minutes. Länger dauernde Jobs müssen in kürzere Blöcke unterteilt werden, um die Infrastruktur schneller bereitzustellen.
Andernfalls läuft die Ausführung nach 60 minutes automatisch ab.
Wie kann ich benutzerdefinierte Dateien in den Terraform-Modulen speichern und sie über mehrere Terraform-Befehle hinweg verwenden?
IBM Cloud Schematics speichert und verwaltet die von der Terraform-Engine generierte Statusdatei bereits sicher in einem Arbeitsbereich von „ Schematics “. „ Schematics “ speichert die Statusdatei in regelmäßigen Abständen an diesem gesicherten
Speicherort. Darüber hinaus wird die Statusdatei automatisch wiederhergestellt, bevor Schematics Jobs oder Terraform-Befehle wie plan, apply, destroy, refresh oder import ausgeführt
werden.
Ebenso unterstützt IBM Cloud Schematics die Speicherung benutzerdefinierter Dateien, die von der Terraform-Vorlage oder den Modulen generiert werden. Schematics erwartet, dass die benutzerdefinierte Terraform-Vorlage oder die Module die Dateien generieren und an einem vordefinierten Speicherort ablegen. Schematics speichert und stellt diese Dateien automatisch vor und nach der Ausführung der Schematics-Jobs oder des Terraform-Befehls wieder her.
Ihre Dateien müssen im Ordner „ /tmp/.schematics “ abgelegt werden; die Obergrenze ist auf „ 10 MB “ festgelegt. „ Schematics “ sichert und stellt alle Dateien im Ordner „ /tmp/.schematics “ wieder her.
Wie finde ich die beste Möglichkeit, eine gelöschte Ressource mit dem Terraform-Status zu synchronisieren?
Derzeit bietet der Dienst „ IBM Cloud Schematics “ keine Möglichkeit, den Status von Cloud-Ressourcen in den Arbeitsbereich „ Schematics “ zu importieren oder mit diesem zu synchronisieren. Sie ist in der zukünftigen Roadmap geplant.
Wie kann ich das Problem beheben, dass die Anfrage die Cluster-Ressourcenquote von „100“ für das Konto in einer beliebigen Region überschreitet?
Error: Request failed with status code: 403, ServerErrorResponse: {"incidentID":"706efb2c-3461-4b9d-a52c-038fda3929ea,706efb2c-3461-4b9d-a52c-038fda3929ea","code":"E60b6","description":"This request exceeds the 'Cluster' resource quota of '100' for the account in this region. Your account already has '100' of the resource in the region, and the request would add '1'. Revise your request, remove any unnecessary resources, or contact IBM support to increase your quota.","type":"General"}
Dieser Kontingentgültigkeitsfehler wird angezeigt, wenn das Cluster-Ressourcenkontingent 100 für das Konto in dieser Region überschritten wird. Sie können die vorhandenen Ressourcen löschen und den Vorgang erneut ausführen.
Kann ich beim Erstellen von Ressourcen unter Red Hat OpenShift oder Kubernetes die 90-minütige Zeitüberschreitung auf einen längeren Zeitraum einstellen?
Ja, Sie können das Zeitlimit für Red Hat OpenShift-oder Kubernetes-Ressourcen erhöhen. Weitere Informationen finden Sie unter ibm_container_vpc_cluster. Es stehen die folgenden Konfigurationsoptionen zur Verfügung.
Wie kann ich den 403-Fehler beheben, der bei der Überprüfung des Standorts im Global-Katalog-Konto auftritt?
Sie können den Speicherort oder die Zugriffsrechte zum Erstellen oder Anzeigen der Ressource in den Katalogeinstellungen Ihres Kontos überprüfen. Weitere Informationen finden Sie unter "Standorteinstellungen verwalten" im globalen Katalog.
Kann ich einen Worker-Knoten in einem bestehenden Worker-Knoten-Pool erstellen?
Ja, Sie können einen Worker Node in einem bestehenden Worker Node Pool erstellen oder hinzufügen, indem Sie die IBM Container Worker Pool Ressource in einem Kubernetes Cluster über Schematics verwenden. Oder Terraform mithilfe der Ressource
für die Zuordnung von IBM-Container-Worker-Pool-Zonen. Weitere Informationen finden Sie unter ibm_container_worker_pool_zone_attachment.
Wo finde ich die Liste der zulässigen öffentlichen und privaten IP-Adressen der Regionen us-south, us-east, eu-gb und eu-de?
Die Liste der zulässigen öffentlichen und privaten IP-Adressen der Regionen us-south, us-east, eu-gb und eu-de finden Sie unter Zulässige IP-Adressen für Schematics.
Kann ich eine Ressource manuell direkt über das Service-Dashboard hinzufügen oder entfernen?
Wenn Sie Ressourcen mit IBM Cloud Schematics bereitstellen, wird der Status der Ressourcen in einer lokalen IBM Cloud Schematics-Statusdatei gespeichert. Von IBM Cloud Schematics kann nur anhand dieser Statusdatei festgestellt werden, welche Ressourcen in Ihrem IBM Cloud-Konto bereitgestellt werden. Wenn Sie eine Ressource manuell ohne IBM Cloud Schematics hinzufügen, wird diese Ressource nicht in der IBM Cloud Schematics-Statusdatei gespeichert und kann daher nicht mit IBM Cloud Schematics verwaltet werden.
Wenn Sie eine Ressource manuell entfernen, die Sie mit IBM Cloud Schematics bereitgestellt haben, wird die Statusdatei nicht automatisch aktualisiert und ist nicht mehr synchron. Wenn Sie Ihren nächsten Terraform-Ausführungsplan erstellen oder eine neue Vorlagenversion anwenden, überprüft „ Schematics “, ob die Cloud-Ressourcen in der State-Datei in Ihrem „ IBM Cloud “-Konto vorhanden sind und den in Ihrer State-Datei festgehaltenen Zustand aufweisen. Wird die Ressource nicht gefunden, wird die Statusdatei aktualisiert und der Terraform-Ausführungsplan angepasst.
Um Ihre „ IBM Cloud Schematics “-Statusdatei und die Cloud-Ressourcen in Ihrem Konto synchron zu halten, verwenden Sie IBM Cloud Schematics, um Ihre Ressourcen bereitzustellen oder zu entfernen.
Welche Änderungen kann ich an meinen Ressourcen vornehmen?
Sie können Infrastrukturcode in Ihrer Terraform-Vorlage über „ GitHub, “ hinzufügen, ändern oder entfernen oder Variablenwerte über das Dashboard „ Schematics “ aktualisieren.
Wie kann ich den erforderlichen Status (Soll-Zustand) meiner Cloudressourcen mit dem tatsächlichen Status (Ist-Zustand) meiner Ressourcen vergleichen?
Um einen Abweichungsbericht zu erstellen und die Änderungen zwischen den Infrastruktur-und Plattformservices anzuzeigen, die Sie in Ihren Terraform-Konfigurationsdateien angegeben haben. Sie können Terraform-Ausführungspläne verwenden. Ein Terraform-Ausführungsplan fasst zusammen, welche Aktionen Schematics ausführen muss, um die Cloudumgebung, die in Ihren Terraform-Konfigurationsdateien beschrieben ist, bereitzustellen. Zu diesen Aktionen können das Hinzufügen, Ändern oder Entfernen von Cloud-Ressourcen gehören.
Welcher Drift kann nicht erkannt werden?
- Ein Terraform-Ausführungsplan basiert auf der Terraform-Statusdatei, die erstellt wird, wenn Sie Ihre erste Schematics-Anwendungsaktion ausführen.
- Ressourcen, die Sie in anderen „ Schematics “-Arbeitsbereichen mithilfe von Automatisierungstools wie
AnsibleoderChefbereitgestellt haben und die ohne Schematics hinzugefügt wurden, werden nicht in den Terraform-Ausführungsplan aufgenommen.
Wie kann ich Ressourcen mit „ IBM Cloud Schematics “ entfernen?
Sie können die „ IBM Cloud Schematics “-Konsole oder die Befehlszeilenschnittstelle (CLI) verwenden, um alle Ressourcen zu entfernen, die Sie mit „ Schematics “ bereitgestellt haben. Um mit Ihrer Terraform-Vorlage synchronisiert zu bleiben, müssen Sie den zugehörigen Infrastrukturcode aus Ihrer Terraform-Vorlage entfernen. Damit Ihre Ressourcen nicht erneut hinzugefügt werden, wenn Sie eine neue Version Ihrer Terraform-Vorlage anwenden.
Was geschieht, wenn ich meine Ressource direkt über das Ressourcendashboard lösche?
Wenn Sie eine Ressource manuell entfernen, die Sie mit IBM Cloud Schematics bereitgestellt haben, wird die Statusdatei nicht automatisch aktualisiert und ist nicht mehr synchron. Wenn Sie den nächsten Terraform-Ausführungsplan erstellen oder eine neue Vorlagenversion anwenden. Die E-Mail-Adresse Schematics bestätigt, dass die Cloud-Ressourcen in der Statusdatei in Ihrem IBM Cloud-Konto mit dem erfassten Status vorhanden sind. Wird die Ressource nicht gefunden, wird die Statusdatei aktualisiert und der Terraform-Ausführungsplan angepasst.
Obwohl die Statusdatei aktualisiert wird, bevor neue Änderungen an Ihren Cloud-Ressourcen übernommen werden, sollten Sie Ressourcen nicht manuell aus dem Ressourcen-Dashboard entfernen, um unerwartete Ergebnisse zu vermeiden. Verwenden Sie stattdessen die IBM Cloud Schematics-Konsole oder -Befehlszeilenschnittstelle zum Entfernen der Ressourcen oder entfernen Sie den zugehörigen Infrastrukturcode aus der Terraform-Vorlage.
Unterstützt Schematics den Befehl ibmcloud terraform?
Bei Verwendung des Befehls ibmcloud terraform über das CLI-Release v1.8.0 wird eine Warnung als Alias Terraform are deprecated. Use schematics or sch in your commands angezeigt. Weitere Informationen finden Sie unter
CLI-Versionsprotokoll.
Kann ich über Schematics auf ein privates Netzwerk zugreifen?
Ja, ab CLI-Release v1.8.0 unterstützt Schematics private Schematics-Endpunkte für den Zugriff auf Ihr privates Netz. Weitere Informationen finden Sie im privaten Endpunkt Schematics.
Wie kann ich die Fehlermeldung beheben, die beim Herstellen einer Verbindung zu den IP-Adressen des Bastion-Hosts über IBM Cloud Schematics auftritt?
Fehler
timeout - last error: Error connecting to bastion: dial tcp
2022/03/02 03:59:37 Terraform apply | 52.118.101.204:22: connect: connection timed out
2022/03/02 03:59:37 Terraform apply |
2022/03/02 03:59:37 Terraform apply | Error: file provisioner error
Sie können auf Ihre Schematics Arbeitsbereiche zugreifen und eine Verbindung zu Bastion host IPs nach Region oder Zone herstellen, indem Sie private oder öffentliche Endpunktadressen verwenden. Weitere Informationen finden Sie unter
Öffnen der IP-Adressen für IBM Cloud Schematics in Ihrer Firewall.
Wie erstelle ich mithilfe von Terraform einen Cluster in einer IBM Cloud-Umgebung?
Siehe Einzel- und Multizone Red Hat OpenShift on IBM Cloud, und Kubernetes Service cluster tutorial.
Kann ich Terraform so einstellen, dass immer die aktuelle oder die Standardversion verwendet wird?
Ja, in der Payload- oder JSON-Datei wird die Standardversion von Terraform herangezogen, wenn die Werte für die Parameter „ type “ und „ template_type “ zur Laufzeit nicht angegeben sind. Weitere Informationen finden
Sie unter Versionseinschränkungen für Terraform angeben. Sie können die Terraform-Version mit dem Parameter type oder dem Parameter
template_type in den Nutzdaten angeben. Überprüfen Sie jedoch, ob der Versionswert für type und für template_type jeweils dieselbe Version angibt.
Wenn ich type: = terraform_v1.4 in der JSON-Datei einstelle, wie im Code-Block gezeigt, wird dann Terraform version 1.4 weiter verwendet, auch wenn Terraform version 2.0 oder höher freigegeben wird?
//Sample JSON file
{
"name": "<workspace_name>",
"type": "terraform_v1.4",
"resource_group": "<resource_group>",
"location": "",
"description": "<workspace_description>",
"template_repo": {
"url": "http://xxxxx.git",
"branch": "main"
},
"template_data": [{
"folder": "",
"type": "terraform_v1.4"
}]
}
Nein, wenn die Terraform-Version in der Payload oder der Vorlage angegeben ist, wird bei der Bereitstellung ausschließlich die in versions.tf angegebene Version berücksichtigt. Zur Berücksichtigung der aktuellen Terraform-Version
können Sie den Parameter required_version als required_version = ">=1.4 <2.0" konfigurieren. Weitere Informationen finden Sie unter Versionseinschränkungen für Terraform.
Kann ich im Versionsparameter nur die Anbieter-Version angeben? Oder ist es zwingend erforderlich, den Parameter „required_version“ in der Datei „ versions.tf “ anzugeben?
Ja, Sie müssen version = "x.x.x" angeben, denn diese Angabe steht für die IBM Cloud-Providerversion. Während required_version = ">1.4, <2.0" die Terraform-Version bezeichnet, die bereitgestellt
werden muss. Weitere Informationen finden Sie unter Versionseinschränkungen für Terraform. Wenn der Parameter „version“ in Ihrer Datei „ versions.tf “ nicht deklariert ist, wird in „ Schematics “ automatisch die aktuelle Version des Provider-Plug-ins verwendet. Weitere Informationen finden Sie unter Versionseinschränkungen für die Terraform-Provider.
Was ist der Unterschied zwischen Löschen und Zerstören in Schematics?
Löschen Sie die zugeordnete Cloudressource aus dem Arbeitsbereich. Arbeitsbereich löschen dient zum Löschen des Arbeitsbereichs. Es wird empfohlen, zuerst die Ressource aus dem Arbeitsbereich zu löschen und dann den Arbeitsbereich zu löschen. Weitere Informationen finden Sie unter Arbeitsbereich löschen.
Kann ich die Operation in einem Schritt löschen und löschen?
Nein, Sie können die Operation Löschen und Löschen nicht in einem Schritt ausführen. Sie müssen den Prozess befolgen, um zuerst zu löschen und dann zu löschen.
Was ist eine Ressourcengruppe und wie hilft sie mir dabei, mein Team zu organisieren?
Das Zuweisen von Zugriff auf einen bestimmten IBM Cloud-Service ist eine gute Möglichkeit, einem Benutzer die Arbeit mit einem bestimmten Service in Ihrem Konto zu ermöglichen. Wenn Sie jedoch Produktionsworkloads in der Cloud erstellen, verfügen Sie sehr wahrscheinlich über mehrere IBM Cloud-Services und -Ressourcen, die von unterschiedlichen Teams genutzt werden. Mit Ressourcengruppen können Sie mehrere Services in Ihrem Konto organisieren und diese in einem gemeinsamen Anzeige- und Fakturierungsprozess bündeln. Um Ihrem Team die Arbeit mit diesen Ressourcen zu ermöglichen, können Sie einer Ressourcengruppe IAM-Zugriffsrichtlinien zuordnen, die es dem Team ermöglicht, die Ressourcen in einer Ressourcengruppe anzuzeigen und zu verwalten.
Beispiel: Sie haben ein Team A, das für die Verwaltung eines IBM Cloud Kubernetes Service-Clusters verantwortlich ist, und ein weiteres Team B, das serverunabhängige Apps mit IBM Cloud® Functions entwickelt. Beide Teams nutzen „ IBM Cloud Schematics “-Arbeitsbereiche zur Verwaltung ihrer Cloud-Ressourcen. Um die Isolierung von Arbeitsbereichen und Ressourcen zu gewährleisten, erstellen Sie für jedes Team eine Ressourcengruppe. Anschließend ordnen Sie den einzelnen Ressourcengruppen die erforderlichen Berechtigungen zu. Beispielsweise gewährt die Dienstzugriffsrolle „ Manager “ Zugriff auf alle Arbeitsbereiche in der Ressourcengruppe A, während „ Leser “ Zugriff auf die Arbeitsbereiche in der Ressourcengruppe B gewährt.
Was ist der Vorteil der Verwendung einer IAM-Zugriffsgruppe?
Um die Anzahl der IAM-Zugriffsrichtlinien zu reduzieren, die einzelnen Benutzern zugewiesen werden, können Sie für jedes Team eine IAM-Zugriffsgruppe erstellen und der Gruppe alle erforderlichen Berechtigungen für die Arbeit mit den Ressourcen in einer Ressourcengruppe erteilen.
Die folgende Abbildung zeigt, wie Sie mithilfe von IAM-Zugriffsgruppen und Ressourcengruppen die Berechtigungen in Ihrem „ IBM Cloud “-Konto organisieren können.
<img src="../images/schematics-user-flow-rg.png" alt="Using resource groups and IAM access groups to organize access to IBM Cloud Schematics" width="900" style="width: 900px; border-style: none"/>
- Der Kontoeigner oder ein berechtigter Administrator definiert ein Team und erstellt für jedes Team eine IAM-Zugriffsgruppe.
- Der IAM-Zugriffsgruppe wird Zugriff auf Ressourcen in einer bestimmten Ressourcengruppe zugewiesen. Beispiel: Zugriffsgruppe A erhält Editorberechtigungen für alle Ressourcen in Ressourcengruppe A, aber nur Anzeigeberechtigungen für die Ressourcen in Ressourcengruppe B.
- Der Kontoeigner oder ein berechtigter Administrator fügt Benutzer zur IAM-Zugriffsgruppe hinzu. Alle Benutzer übernehmen automatisch die Berechtigungen der IAM-Zugriffsgruppe.
Was sind die Schritte zur Erstellung und Einschränkung der feinkörnigen und klassischen persönlichen Zugangstoken (PAT)?
Zum Starten der GitHub API und zum Herstellen von Git Verbindungen über HTTPs, sowie zum Erstellen von schnellen Skripten und Testen von Integrationen wird PAT verwendet. Weitere Informationen finden Sie unter Informationen zu PAT.
GitHub unterstützt derzeit zwei Arten von persönlichen Zugriffstoken, und Organisationsinhaber können eine Richtlinie festlegen, um den Zugriff von persönlichen Zugriffstoken auf ihre Organisation einzuschränken:
- differenzierte persönliche Zugriffstokens
- persönliche Zugriffstoken (klassisch). GitHub empfiehlt, nach Möglichkeit differenzierte persönliche Zugriffstoken anstelle von persönlichen Zugriffstoken (klassisch) zu verwenden.
Im Folgenden sind die Schritte zum Erstellen und Beschränken der PAT-Tokens beschrieben.
Kann ich die Option terraform init -backend-config="KEY=VALUE" über die Befehlszeilenschnittstelle ausführen?
Schematics unterstützt nicht die Möglichkeit, die Terraform-Backend-Konfiguration zu bearbeiten. Schematics verwaltet die Statusdatei intern in einem eigenen IBM Cloud Object Storage-Bucket, der mithilfe der Envelop-Verschlüsselung verschlüsselt wird.
Wann geben Sie den Master-oder Unterverzeichniszweig GitHub an?
Erstellung des Arbeitsbereichs
Auf der Erstellungsseite des Arbeitsbereichs für Repository URL. Vom Link kann auf die Verzweigung master, eine andere Verzweigung oder ein Unterverzeichnis verwiesen werden. Klicken Sie auf der Seite „Einstellungen“ des Arbeitsbereichs auf das Bearbeitungssymbol, um Ihre „ Repository URL “ zu bearbeiten. Weitere Informationen zur Arbeitsbereichserstellung finden Sie unter Arbeitsbereich erstellen.
Vom Link kann auf die Verzweigung master, eine andere Verzweigung oder ein Unterverzeichnis verwiesen werden. - Beispiel für den Zweig „ master “: https://github.com/myorg/myrepo - Beispiel für andere
Branchen: https://github.com/myorg/myrepo/tree/mybranch - Beispiel für ein Unterverzeichnis: https://github.com/mnorg/myrepo/tree/mybranch/mysubdirectory
Zweignamen, die / (Backslash) enthalten, werden nicht unterstützt.
Aktionserstellung
Auf der Seite zur Aktionserstellung kann die URL auf den Hauptzweig, einen anderen Zweig oder ein Unterverzeichnis verweisen. Wenn Ihr Repository mehrere Playbooks enthält, wählen Sie das Playbook aus, das Sie ausführen möchten. Eine Schematics-Aktion
kann immer jeweils nur auf ein Playbook verweisen. Weitere Einzelheiten zum Arbeiten mit einer Aktion finden Sie unter Erstellen einer Aktion zum Ausführen mehrerer
Wiedergabemodelle. Sie müssen für jedes Wiedergabemodell eine eigene Aktion erstellen. - Beispiel für den Master-Zweig - https://github.com/myorg/myrepo - Beispiel für andere Branchen - https://github.com/myorg/myrepo/tree/mybranch - Beispiel für ein Unterverzeichnis - https://github.com/mnorg/myrepo/tree/mybranch/mysubdirectory
Sie haben kein Playbook, das Sie verwenden können? Testen Sie eines Ihrer Beispielplaybooks.
Geben Sie auf der Seite „Einstellungen“ des Arbeitsbereichs auf das Bearbeitungssymbol, um Ihre „ Repository URL “ zu bearbeiten. Vom Link kann auf die Verzweigung master, eine andere Verzweigung oder
ein Unterverzeichnis verwiesen werden. - Beispiel für den Zweig „ master “: https://github.com/myorg/myrepo - Beispiel für andere Branchen: https://github.com/myorg/myrepo/tree/mybranch - Beispiel für
ein Unterverzeichnis: https://github.com/mnorg/myrepo/tree/mybranch/mysubdirectory
Können Sie die Aktivität des API-Aufrufs Schematics konfigurieren?
30 seconds Das Schematics Plug-in ermöglicht es Ihnen, die Zeitüberschreitung für die Schematics API-Aufrufe durch ibmcloud config --http-timeout flagge. Beispiel: ibmcloud config --http-timeout=30. Der Standardwert für Anfragen an HTTP ist 60 seconds.
Unterstützt Schematics einen regionalen Zugang?
Ja, das Schematics unterstützt den regionsbezogenen Zugriff. Weitere Informationen finden Sie unter Regionsbasierter Zugriff und die Schritte zum Einrichten des regionenbasierten Zugriffs, um einen Benutzer einzuladen.
Unterstützt Workspace and Action Secrets Manager?
Ja, Workspace und Action unterstützen Secrets Manager, wenn Sie einen Arbeitsbereich erstellen und den Arbeitsbereich für Eingabevariablen aktualisieren. Sie können auch Secrets Manager einstellen, während Sie ein Playbook erstellen und Aktionseinstellungen bearbeiten.
Sie können den persönlichen Zugangscode eingeben oder Secrets Manager verwenden, indem Sie Open reference picker verwenden, um Ihre Secrets Manager-Schlüsselreferenz auszuwählen. Weitere Informationen finden Sie unter Erstellen einer Secrets Manager-Instanz.
Der Schlüsselwert von Secrets Manager wird während der Laufzeit verwendet, um die Vorlagen aus dem Git-Repository zu klonen.
Warum sind die Befehle eval und uname eingeschränkt?
Der Befehl eval kann zu Sicherheitslücken führen, wie z. B. dem Risiko der Code-Injektion, während der Befehl uname Systeminformationen preisgeben kann, die Angreifer ausnutzen können.
Einschränkungen helfen dabei, eine sichere Ausführungsumgebung innerhalb von Schematics aufrechtzuerhalten.
Wie wirken sich die Einschränkungen der Befehle eval und uname auf bestehende Skripte und Automatisierungen aus?
Wenn Ihre Skripte oder Automatisierungsworkflows auf den Befehl uname angewiesen sind, schlägt dieser nach dem 16. April 2025 fehl. Für den Befehl eval erlaubt Schematics die Ausführung von sicheren eval-Operationen.
Die Ausführung von Befehlen auf Betriebssystemebene durch den Befehl eval in Skripten oder Automatisierungsabläufen ist eingeschränkt. Sie müssen Ihre Skripte ändern, um diese Befehle zu entfernen oder durch alternative Methoden
zu ersetzen.
Welche alternativen Lösungen können die Befehle eval und uname ersetzen?
Anstelle von eval werden Befehle durch sicherere Alternativen wie bedingte Anweisungen, Parametersubstitution oder integrierte Befehlsausführungsmethoden berücksichtigt. Stattdessen verwendet uname vordefinierte Umgebungsvariablen
oder System-Metadaten-Dienste, die von IBM Cloud bereitgestellt werden, um die erforderlichen Systeminformationen abzurufen. Wenn Sie Fragen, Kommentare oder Bedenken haben, können Sie das Team jederzeit über IBM Cloud® kontaktieren.
Beispiel mit dem Befehl eval
command="ls -l /home/user"
eval $command
Beispiel ohne den Befehl eval
command="ls -l /home/user"
$command
Wirkt sich die Änderung der Befehle eval und uname auf die Ausführung von Terraform in Schematics aus?
Die Ausführung von Terraform hat keinen direkten Einfluss, es sei denn, Ihre Skripte oder Module verwenden explizit Befehle wie eval oder uname. Wenn sie explizit verwendet werden, ist eine Änderung erforderlich.
Welche Endpunkte werden von Schematics unterstützt?
Derzeit unterstützt Schematics nur Classic Service Endpoints (CSE), die als public und private Typen verfügbar sind. Wenn Sie versuchen, update, modify oder manage IBM Cloud Kubernetes
Service oder Red Hat OpenShift zu clustern, müssen Sie entweder public oder private CSE verwenden.
Sie können den Wert cluster_config_endpoint_type in der Konfiguration auf private setzen. Weitere Informationen finden Sie unter Endpunktargumente.
data "ibm_container_cluster_config" "cluster_foo" {
cluster_name_id = "FOO"
config_dir = "/home/foo_config"
admint = "true"
endpoint_type = "private"
}
Derzeit unterstützt Schematics keine Virtual Private Endpoint (VPE). Wenn Sie die Variable endpoint_type als vpe auswählen, schlägt der Auftrag Schematics fehl. Alternativ müssen Sie Schematics Agents in IBM Cloud Kubernetes
Service oder Red Hat OpenShift Clustern bereitstellen und Schematics Jobs oder Tasks mithilfe von VPE ausführen. Weitere Informationen finden Sie unter Schematics Agenten.