Ressourcen verwalten
Eine Ressource Eine physische oder logische Instanz, die bereitgestellt oder reserviert werden kann.Beispiele für Ressourcen sind Speicher, Prozessoren, Arbeitsspeicher, Datenbanken, Cluster und VMs. ist alles, was Sie aus dem Katalog erstellen können und was von einer Ressourcengruppe verwaltet wird und in dieser enthalten ist. Sie können Ressourcen über die Ressourcenliste in der IBM Cloud®-Konsole oder über die Befehlszeilenschnittstelle (CLI) erstellen und verwalten.
Services, die mithilfe der Zugriffssteuerung von IBM Cloud Identity and Access Management (IAM) verwaltet werden und zu einer Ressourcengruppe gehören, weisen einige Vorteile auf. Da Ressourcengruppen nicht nach Standort sortiert sind, können Sie Anwendungen und Dienste von verschiedenen Standorten aus in derselben Ressourcengruppe erstellen. Außerdem können Sie die differenzierte Zugriffssteuerung bis hin zu jeder einzelnen Instanz innerhalb einer Ressourcengruppe verwenden.
Erforderliche Zugriffsberechtigungen für das Erstellen von Ressourcen
Damit Benutzer in Ihrem Konto Ressourcen über den Katalog erstellen und einer Ressourcengruppe zuweisen können, müssen ihnen zwei Zugriffsrichtlinien zugewiesen werden:
- Eine Richtlinie mit Rolle des Anzeigeberechtigten ('A') oder höher für die Ressourcengruppe selbst
- Eine Richtlinie mit Rolle des Bearbeiters oder höher für den Service im Konto
Ressourcen in der Konsole erstellen
Führen Sie die folgenden Schritte aus, um eine Ressource in der Konsole zu erstellen:
- Klicken Sie im Dashboard auf Ressourcen anzeigen im Ressourcenzusammenfassungswidget.
- Klicken Sie auf Ressource erstellen. Hier werden Sie an den Katalog weitergeleitet. Sie können die Produkte durchsuchen oder nach einer bestimmten Kategorie, einem Anbieter, einem Preisplan, einer Art der Einhaltung von Vorschriften oder einem Freigabetyp filtern. Beispiele für Ressourcen sind Apps, Serviceinstanzen, Container-Cluster, Speicherdatenträger, Virtual Server-Systeme und Software.
Nachdem Sie die Ressource erstellt haben, wird sie auf der Seite 'Ressourcenliste' in der Liste mit Ihren Ressourcen aufgeführt.
Ressourcen über die Befehlszeilenschnittstelle (CLI) erstellen
Sie können eine Ressource über die IBM Cloud®-Befehlszeilenschnittstelle (CLI) erstellen. Ausführliche Informationen zur Arbeit mit Ressourcen finden Sie in Mit Ressourcen und Ressourcengruppen arbeiten.
- Melden Sie sich an und wählen Sie das Konto aus.
ibmcloud login - Mit dem Befehl
ibmcloud resource service-instance-createkönnen Sie eine Organisation erstellen.
In diesem Befehl steht NAME für den Namen der Serviceinstanz, SERVICE_NAME or SERVICE_ID für den Namen oder die ID des Service, SERVICE_PLAN_NAME or SERVICE_PLAN_ID für den Namen oder die ID des Serviceplans
und LOCATION für den Zielstandort oder die Zielumgebung zum Erstellen der Serviceinstanz.
ibmcloud resource service-instance-create NAME (SERVICE_NAME | SERVICE_ID) SERVICE_PLAN_NAME LOCATION [-d, --deployment DEPLOYMENT_NAME] [-p, --parameters @JSON_FILE | JSON_STRING ] [-g RESOURCE_GROUP] [--service-endpoints SERVICE_ENDPOINTS_TYPE] [--allow-cleanup] [--lock]
Verwenden Sie den Befehl ibmcloud catalog service-marketplace, um Services aufzulisten.
Mit dem folgenden Befehl wird beispielsweise eine Serviceinstanz mit dem Namen my-service-instance erstellt, für die der Serviceplan test- service-plan des Service test-service am Standort eu-gb verwendet wird:
ibmcloud resource service-instance-create my-service-instance test-service test-service-plan eu-gb
Neue Ressourceninstanzen über die Anwendungsprogrammierschnittstelle (API) erstellen
Sie können eine neue Ressource programmgesteuert erstellen, indem Sie die Ressourcencontroller-API aufrufen, wie in der folgenden Beispielanforderung dargestellt. Ausführliche Informationen über die API finden Sie unter Resource Controller API.
curl -X POST \
https://resource-controller.cloud.ibm.com/v2/resource_instances \
-H 'Authorization: Bearer <>' \
-H 'Content-Type: application/json' \
-d '{
"name": "my-instance",
"target": "bluemix-global",
"resource_group": "5g9f447903254bb58972a2f3f5a4c711",
"resource_plan_id": "0be5ad401ae913d8ff665d92680664ed",
"tags": [
"my-tag"
]
}'
CreateResourceInstanceOptions createResourceInstanceOptions = new CreateResourceInstanceOptions.Builder()
.name(resourceInstanceName)
.target(targetRegion)
.resourceGroup(resourceGroup)
.resourcePlanId(resourcePlanId)
.build();
Response<ResourceInstance> response = service.createResourceInstance(createResourceInstanceOptions).execute();
ResourceInstance resourceInstance = response.getResult();
System.out.printf("createResourceInstance() response:\n%s\n", resourceInstance.toString());
const params = {
name: resourceInstanceName,
target: targetRegion,
resourceGroup: resourceGroupGuid,
resourcePlanId: resourcePlanId,
};
resourceControllerService.createResourceInstance(params)
.then(res => {
instanceGuid = res.result.guid;
console.log('createResourceInstance() response:\n' + JSON.stringify(res.result, null, 2));
})
.catch(err => {
console.warn(err)
});
resource_instance = resource_controller_service.create_resource_instance(
name=resource_instance_name,
target=target_region,
resource_group=resource_group,
resource_plan_id=resource_plan_id
).get_result()
print('\ncreate_resource_instance() response:\n',
json.dumps(resource_instance, indent=2))
createResourceInstanceOptions := resourceControllerService.NewCreateResourceInstanceOptions(
resourceInstanceName,
targetRegion,
resourceGroup,
resourcePlanID,
)
resourceInstance, response, err := resourceControllerService.CreateResourceInstance(createResourceInstanceOptions)
if err != nil {
panic(err)
}
b, _ := json.MarshalIndent(resourceInstance, "", " ")
fmt.Printf("\nCreateResourceInstance() response:\n%s\n", string(b))
Software über die Anwendungsprogrammierschnittstelle (API) installieren
Sie können Software ausschließlich über die Konsole oder über die Befehlszeilenschnittstelle installieren. Die entsprechenden Schritte sind in den Anweisungen für die Benutzerschnittstelle bzw. die Befehlszeilenschnittstelle beschrieben.
Neue Ressourceninstanzen mittels Terraform erstellen
Bevor Sie neue Ressourceninstanzen mithilfe von Terraform erstellen können, müssen Sie folgende Schritte durchführen:
-
Installieren Sie die Terraform CLI und konfigurieren Sie das IBM Cloud Provider Plug-in für Terraform. Weitere Informationen finden Sie in der Anleitung zu den ersten Schritten mit Terraform auf IBM Cloud®. Das Plug-in abstrahiert die IBM Cloud APIs, die zur Erfüllung dieses Tasks verwendet werden.
-
Erstellen Sie eine Terraform-Konfigurationsdatei mit dem Namen
main.tf. In dieser Datei definieren Sie die Ressourcen mit Hilfe der HashiCorp Configuration Language. Weitere Informationen finden Sie in der Terraform-Dokumentation.
Sie können neue Ressourceninstanzen mithilfe von Terraform erstellen.
-
Erstellen Sie ein Argument in Ihrer
main.tfDatei. Im folgenden Beispiel wird unter Verwendung der Ressourceibm_resource_instanceeine neue Ressourceninstanz erstellt. Hierbei stehtnamefür einen eindeutigen und aussagekräftigen Namen, mit dem die Ressourceninstanz gekennzeichnet wird.data "ibm_resource_group" "group" { name = "test" } resource "ibm_resource_instance" "resource_instance" { name = "test" service = "cloud-object-storage" plan = "lite" location = "global" resource_group_id = data.ibm_resource_group.group.id tags = ["tag1", "tag2"] //User can increase timeouts timeouts { create = "15m" update = "15m" delete = "15m" } }Sie können
tagsangeben, die der Ressourceninstanz zugeordnet sein sollen. Weitere Informationen finden Sie in der Argument-Referenz auf der Terraform Resource Management Seite. -
Nachdem Sie Ihre Konfigurationsdatei erstellt haben, initialisieren Sie die Terraform CLI. Weitere Informationen finden Sie unter Initialisierung von Arbeitsverzeichnissen.
terraform init -
Bereitstellung der Ressourcen aus der Datei
main.tf. Weitere Informationen finden Sie unter Bereitstellung der Infrastruktur mit Terraform.- Führen Sie
terraform planaus, um einen Terraform-Ausführungsplan zu erstellen und eine Vorschau der vorgeschlagenen Aktionen zu erhalten.terraform plan - Führen Sie
terraform applyaus, um die im Plan definierten Ressourcen zu erstellen.terraform apply
- Führen Sie
Nach Ressourcen suchen
Sie können von der gesamten IBM Cloud®-Konsole aus nach Ressourcen suchen. Geben Sie den Namen einer Ressource oder eines Tags im Suchfeld der Menüleiste für die Konsole ein. Sie können Ihre Ressourcen auch über die IBM Cloud-Befehlszeilenschnittstelle (Command-Line Interface, CLI) durchsuchen. Bei der Befehlszeilenschnittstelle wird standort- und rechenzentrumsübergreifend nach verteilten Anwendungen und Serviceinstanzen gesucht. Die Such-API der Funktion für globales Suchen und Tagging unterstützt ebenfalls die Suche nach Ressourcen.
Suchergebnisse verfeinern
- Alle Katalogergebnisse anzeigen
- Über diese Option können Sie gefilterte Suchergebnisse für den Katalog anzeigen. Es werden die ersten fünf nach Namen geordneten Ergebnisse angezeigt. Wenn detailliertere Suchkriterien für Katalogeinträge verwendet werden sollen, z. B. das
Durchsuchen der Beschreibung, können Sie auf diesen Link klicken und eine Ansicht mit gefilterten Katalogergebnissen abrufen. Diese Option beschleunigt die Suche für Angebote, die Sie erstellen möchten. Das Feld wird angezeigt, wenn es zu
einem Katalogergebnis passt. Das Feld wird nicht angezeigt, wenn Ihre Suchabfrage mit
tag:beginnt. - Supportfälle durchsuchen
- Über diese Option können Sie die Ansicht nach Ihren offenen Supportfällen in der gesamten Plattform, Infrastrukturressourcen eingeschlossen, filtern. Die Option wird am Ende der Suche angezeigt, wenn Sie nach einem beliebigen Suchbegriff (
tag:) suchen. - IBM Cloud-Dokumentation durchsuchen
- Diese Option ermöglicht Ihnen eine gefilterte Suche in der Dokumentation. Dies wird am Ende jeder Suche angezeigt, auch bei einer Suche anhand des
tag:.
Drücken Sie die Schrägstrichtaste (/), um den Cursor in das Suchfeld zu versetzen.
Über die Befehlszeilenschnittstelle suchen
Sie können auch mit der Lucene-Abfragesyntax über alle Ihre Ressourcen hinweg suchen, und zwar mit einem einzigen Befehl, indem Sie die IBM Cloud CLI verwenden. Die am häufigsten verwendeten Ressourcenattribute, die Sie abfragen und abrufen können, sind:
name- Der benutzerdefinierte Name der Ressource.
region- Der geografische Ort, an dem die Ressource erstellt wurde. Gültige Werte sind beispielsweise
us-south,us-east,au-syd,eu-gb,eu-deundjp-tok. service_name- Der Name des Dienstes, wie er im Segment
service-nameder CRN der Ressource erscheint. Die zulässigen Werte können Sie der Spalte Name in der Ausgabe vonibmcloud catalog service-marketplaceentnehmen. resource_group_id- Die Ressourcengruppen-ID der Ressource.
type- Der Ressourcentyp, wie er im Segment
resource-typeder CRN der Ressource erscheint, falls vorhanden. Die Werte hängen von dem jeweiligen Dienst ab, dem sie gehören. Beispielwerte sind:k8-clusterfür den Dienstcontainers-kubernetes;k8-locationundk8-connectorfür den Dienstsatellite;resource-groupfür den Dienstresource-controller;vpc,volume,vpn,load-balancer,security-group, für den Dienstis;workspacefür den Dienstschematics. creation_date- Das Erstellungsdatum der Ressource.
modification_date- Das Datum, an dem die Ressource zuletzt geändert wurde.
tags- Die mit der Ressource verbundenen Tags.
access_tags- Die mit der Ressource verbundenen Zugriffsmanagement-Tags.
service_tags- Die an die Ressource angehängten Service-Tags.
tagReferences.tag.name- Die Tags, die einer klassischen Infrastrukturressource zugeordnet wurden. Sie müssen den Parameter
-p classic-infrastructureangeben. _objectType:- Der Objekttyp der klassischen Infrastrukturressource. Zulässige Werte sind:
SoftLayer_Virtual_DedicatedHost,SoftLayer_Hardware,SoftLayer_Network_Application_Delivery_Controller,SoftLayer_Network_Subnet_IpAddress,SoftLayer_Network_Vlan,SoftLayer_Network_Vlan_Firewall,SoftLayer_Virtual_Guest. Erfordert die Angabe des Parameters-p classic-infrastructure.
tagReferences.tag.name und _objectType sind nur gültig, wenn das Kennzeichen -p classic-infrastructure verwendet wird.
Die Verwendung des Parameters -p classic-infrastructure beim Wert SoftLayer_Virtual_DedicatedHost, SoftLayer_Network_Vlan_Firewall, SoftLayer_Virtual_Guest and SoftLayer_Hardware (nur für Bare-Metal-Server der klassischen Infrastruktur) für '_objectType' ist veraltet, da diese jetzt wie alle anderen Ressourcen gesucht werden können, die nicht zur klassischen Infrastruktur gehören.
Nach Ressourcen der klassischen Infrastruktur suchen
Bei der Suche nach klassischen Infrastrukturressourcen muss die Zeichenfolge in doppelte Anführungszeichen gesetzt werden, damit eine exakte Übereinstimmung mit der Abfragezeichenfolge erzielt werden kann. Wenn Sie außerdem einen Suchbegriff eingeben, der einen Bindestrich (-) enthält, und die Zeichenfolge nicht mit einem doppelten Anführungszeichen umgeben, liefert die Suche keine exakte Übereinstimmung. Bindestriche innerhalb der Zeichenfolge werden dazu verwendet, um den Begriff in mehrere Zeichenfolgen aufzuteilen.
Suchbeispiele
Die folgenden Beispiele erleichtern die Suche nach Kontoressourcen: Wenn der Parameter -p classic-infrastucture nicht angegeben wird, erstreckt sich die Suche auf alle Ressourcen außer Ressourcen der klassischen Infrastruktur
mit _objectType SoftLayer_Network_Application_Delivery_Controller, SoftLayer_Network_Subnet_IpAddress oder SoftLayer_Hardware (Bare-Metal-Server ausgenommen).
-
Geben Sie den folgenden Befehl ein, um nach allen Ressourcen namens
ABCzu suchen:ibmcloud resource search ‘name:ABC’ -
Geben Sie den folgenden Befehl ein, um nach allen Serviceinstanzen von Message Hub zu suchen:
ibmcloud resource search 'service_name:messagehub' -
Geben Sie den folgenden Befehl ein, um nach Ressourcen zu suchen, die nicht zur klassischen Infrastruktur gehören und die zwischen dem 16. und dem 20. Mai 2020 erstellt wurden:
ibmcloud resource search 'creation_date:["2020-05-16T00:00:00Z" TO "2020-05-20T00:00:00Z"]' -
Geben Sie den folgenden Befehl ein, um nach Ressourcen zu suchen, die nicht zur klassischen Infrastruktur gehören und deren Name mit "my" beginnt, sortiert nach Typ:
ibmcloud resource search 'name:my*' -s type -
Um nach Ressourcen zu suchen, die keine klassischen Infrastrukturen sind und mit
my-taggekennzeichnet wurden, geben Sie den folgenden Befehl ein:ibmcloud resource search 'tags:my-tag' -
Geben Sie den folgenden Befehl ein, um nach allen virtuellen Servern der klassischen Infrastruktur zu suchen, deren vollständig qualifizierter Domänenname
MyVMlautet:ibmcloud resource search “doc.fullyQualifiedDomainName:MyVM AND service_name:virtual-server" -
Um nach allen klassischen Infrastruktur-Ressourcen zu suchen, die mit
my-taggekennzeichnet sind, geben Sie folgenden Befehl ein:ibmcloud resource search 'tagReferences.tag.name:my-tag' -p classic-infrastructure -
Um nach allen klassischen Infrastrukturen des Typs
SoftLayer_Network_Vlanzu suchen, geben Sie den folgenden Befehl ein:ibmcloud resource search '_objectType:SoftLayer_Network_Vlan' -p classic-infrastructure
Über die API suchen
Rufen Sie zur Suche nach Ressourcen die Such-API der Funktion für globales Suchen und Tagging auf. Mit dem folgenden Beispiel wird nach allen Ressourcen gesucht, denen der Tag 'project:myproject' zugeordnet ist.
Erstellen Sie mit SearchOptions.Builder ein Objekt des Typs SearchOptions, das die Parameterwerte für die Methode search enthält.
Erstellen Sie eine Instanz der Struktur SearchOptions und legen Sie die Felder fest, um die Parameterwerte für die Methode Search anzugeben.
curl -X POST -H "Authorization: {iam_token}" -H "Accept: application/json" -H "Content-Type: application/json" -d '{"query": "tags:project\\:myproject OR access_tags:project\\:myproject", "fields": ["*"]}' "api.global-search-tagging.cloud.ibm.com/v3/resources/search"
SearchOptions searchOptions = new SearchOptions.Builder()
.query("GST-sdk-*")
.fields(new java.util.ArrayList<String>(java.util.Arrays.asList("*")))
.searchCursor(searchCursor)
.build();
Response<ScanResult> response = service.search(searchOptions).execute();
ScanResult scanResult = response.getResult();
System.out.println(scanResult);
const params = {
query: 'GST-sdk-*',
fields: ['*'],
searchCursor: searchCursor,
};
globalSearchService.search(params)
.then(res => {
console.log(JSON.stringify(res.result, null, 2));
})
.catch(err => {
console.warn(err)
});
response = global_search_service.search(query='GST-sdk-*',
fields=['*'])
scan_result = response.get_result()
print(json.dumps(scan_result, indent=2))
searchOptions := globalSearchService.NewSearchOptions()
searchOptions.SetLimit(10)
searchOptions.SetQuery("GST-sdk-*")
searchOptions.SetFields([]string{"*"})
scanResult, response, err := globalSearchService.Search(searchOptions)
if err != nil {
panic(err)
}
b, _ := json.MarshalIndent(scanResult, "", " ")
fmt.Println(string(b))
Ressourcen löschen
Wenn Sie eine Ressource in Ihrem Konto nicht mehr benötigen oder wenn ein Benutzer in Ihrem Konto eine Ressource erstellt hat, die nicht verwendet werden soll, können Sie die Instanz aus Ihrem Konto löschen.
Ressourcen in der Konsole löschen
Sie können eine Ressource in der Konsole löschen, indem Sie die folgenden Schritte ausführen:
- Klicken Sie im Dashboard auf Ressourcen anzeigen im Ressourcenzusammenfassungswidget.
- Erweitern Sie die Abschnitte, um nach der Serviceinstanz zu suchen, die gelöscht werden soll.
- Klicken Sie auf das Aktionen-Symbol
> Löschen für die Zeile.
Ressourcen über die Befehlszeilenschnittstelle (CLI) löschen
Sie können eine Ressource über die IBM Cloud®-Befehlszeilenschnittstelle (CLI) löschen. Ausführliche Informationen zur Verwaltung von IBM Cloud-Ressourcen finden Sie in Mit Ressourcen und Ressourcengruppen arbeiten.
-
Melden Sie sich an und wählen Sie das Konto aus.
ibmcloud login -
Mit dem Befehl
ibmcloud resource service-instance-deletekönnen Sie eine Serviceinstanz löschen; dabei istNAMEder Name der Serviceinstanz undIDist die ID der Serviceinstanz. Die Angaben NAME und ID schließen sich gegenseitig aus.ibmcloud resource service-instance-delete (NAME|ID) [-f, --force] [--recursive]Der folgende Befehl löscht beispielsweise eine Ressourcenserviceinstanz namens
my-service-instance:ibmcloud resource service-instance-delete my-service-instance
Ressourceninstanzen über die Anwendungsprogrammierschnittstelle (API) löschen
Sie können eine Ressourceninstanz programmgesteuert löschen, indem Sie die Ressourcencontroller-API aufrufen, wie in der folgenden Beispielanforderung dargestellt. Ausführliche Informationen über die API finden Sie unter Resource Controller API.
curl -X DELETE \
https://resource-controller.cloud.ibm.com/v2/resource_instances/8d7af921-b136-4078-9666-081bd8470d94 \
-H 'Authorization: Bearer <>'
DeleteResourceInstanceOptions deleteResourceInstanceOptions = new DeleteResourceInstanceOptions.Builder()
.id(instanceGuid)
.recursive(false)
.build();
Response<Void> response = service.deleteResourceInstance(deleteResourceInstanceOptions).execute();
System.out.printf("deleteResourceInstance() response status code: %d\n", response.getStatusCode());
const params = {
id: instanceGuid,
recursive: false,
};
resourceControllerService.deleteResourceInstance(params)
.then(res => {
console.log('deleteResourceInstance() response status code: ' + res.status);
})
.catch(err => {
console.warn(err)
});
response = resource_controller_service.delete_resource_instance(
id=instance_guid,
recursive=False
)
print('\ndelete_resource_instance() response status code: ',
response.get_status_code())
deleteResourceInstanceOptions := resourceControllerService.NewDeleteResourceInstanceOptions(
instanceGUID,
)
deleteResourceInstanceOptions.SetRecursive(false)
response, err := resourceControllerService.DeleteResourceInstance(deleteResourceInstanceOptions)
if err != nil {
panic(err)
}
fmt.Printf("\nDeleteResourceInstance() response status code: %d\n", response.StatusCode)
Ressourceninstanzen mittels Terraform löschen
Gehen Sie wie folgt vor, um Ressourceninstanzen mithilfe von Terraform zu löschen.
-
Sie können eine Ressourceninstanz löschen, indem Sie den folgenden Codeblock aus Ihrer Terraform-Datei entfernen. Sie müssen die
resource_instancemit Hilfe der Terraform-Datei erstellt haben.data "ibm_resource_group" "group" { name = "test" } resource "ibm_resource_instance" "resource_instance" { name = "test" service = "cloud-object-storage" plan = "lite" location = "global" resource_group_id = data.ibm_resource_group.group.id tags = ["tag1", "tag2"] //User can increase timeouts timeouts { create = "15m" update = "15m" delete = "15m" } }Weitere Informationen finden Sie in der Argument-Referenz auf der Terraform Resource Management Seite.
-
Nachdem Sie Ihre Konfigurationsdatei erstellt haben, initialisieren Sie die Terraform CLI. Weitere Informationen finden Sie unter Initialisierung von Arbeitsverzeichnissen.
terraform init -
Bereitstellung der Ressourcen aus der Datei
main.tf. Weitere Informationen finden Sie unter Bereitstellung der Infrastruktur mit Terraform.-
Führen Sie
terraform planaus, um einen Terraform-Ausführungsplan zu erstellen und eine Vorschau der vorgeschlagenen Aktionen zu erhalten.terraform plan -
Führen Sie
terraform applyaus, um die im Plan definierten Ressourcen zu erstellen.terraform apply
-
Sie können eine Ressourceninstanz auch löschen, indem Sie den folgenden Befehl terraform destroy ausführen:
terraform destroy -target RESOURCE_TYPE.NAME -target RESOURCE_TYPE2.NAME