Inhalt

Einführung:

Voraussetzungen

Anforderungen

Verwendete Komponenten

Hintergrundinformationen

Problem

Auflösung

Einführung:

In diesem Dokument wird beschrieben, wie Sie bei der Google Cloud-Integration mit CloudCenter Manager (CCM) Version 4.8.0/4.7.x eine Fehlerbehebung durchführen können.

Voraussetzungen

Anforderungen

Cisco empfiehlt, über Kenntnisse in folgenden Bereichen zu verfügen:

- Linux-Schnittstelle

- Umgebungen virtueller Systeme

- Google Cloud-Konto

Verwendete Komponenten

Die Informationen in diesem Dokument basieren auf den folgenden Softwareversionen:

- CloudCenter Version 4.6.x bis 4.8.x

Die Informationen in diesem Dokument wurden von den Geräten in einer bestimmten Laborumgebung erstellt. Alle in diesem Dokument verwendeten Geräte haben mit einer leeren (Standard-)Konfiguration begonnen. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die potenziellen Auswirkungen eines Befehls verstehen.

Hintergrundinformationen

Nachdem Sie dem CCM erfolgreich GCE-Orchestrator (CCO) hinzugefügt und versucht haben, die Umgebung mithilfe einer Anwendung zu testen, die die Auswahl von Instanztyp und -zone enthält, wird eine Fehlermeldung angezeigt, wenn versucht wird, das Projekt wie im Bild gezeigt auszuwählen:

Problem

In CCM Osmosef-Protokollen finden Sie den folgenden Fehler:

VENDOR_ID::1::USER_ID::2::2017-05-29 04:11:45,991 INFO  impl.CloudPropertiesServiceImpl [asyncOperationExecutor-6]  - cloud property task is invoked

VENDOR_ID::1::USER_ID::2::2017-05-29 04:11:46,006 INFO  impl.CloudManagementServiceImpl [asyncOperationExecutor-6]  - cloud data is not null

VENDOR_ID::1::USER_ID::2::2017-05-29 04:11:46,006 INFO  impl.CloudManagementServiceImpl [asyncOperationExecutor-6]  - got the region end point as null

VENDOR_ID::1::USER_ID::2::2017-05-29 04:11:46,011 INFO  impl.CloudPropertiesServiceImpl [asyncOperationExecutor-7]  - cloud property task is invoked

VENDOR_ID::1::USER_ID::2::2017-05-29 04:11:46,014 INFO  impl.CloudPropertiesServiceImpl [asyncOperationExecutor-8]  - cloud property task is invoked

VENDOR_ID::1::USER_ID::2::2017-05-29 04:11:46,024 INFO  impl.CloudManagementServiceImpl [asyncOperationExecutor-7]  - cloud data is not null

VENDOR_ID::1::USER_ID::2::2017-05-29 04:11:46,024 INFO  impl.CloudManagementServiceImpl [asyncOperationExecutor-7]  - got the region end point as null

VENDOR_ID::1::USER_ID::2::2017-05-29 04:11:46,032 INFO  impl.CloudManagementServiceImpl [asyncOperationExecutor-8]  - cloud data is not null

VENDOR_ID::1::USER_ID::2::2017-05-29 04:11:46,032 INFO  impl.CloudManagementServiceImpl [asyncOperationExecutor-8]  - got the region end point as null

VENDOR_ID::1::USER_ID::2::2017-05-29 04:11:46,765 ERROR impl.CloudPropertiesServiceImpl [asyncOperationExecutor-6]  - Failed to getCloudPropertiesFromGateway from gateway for propertyType : Project

VENDOR_ID::1::USER_ID::2::2017-05-29 04:11:46,765 ERROR impl.CloudPropertiesServiceImpl [asyncOperationExecutor-6]  - 500 Internal Server Error

org.springframework.web.client.HttpServerErrorException: 500 Internal Server Error

at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:94)

at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:641)

at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:597)

at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:557)

at org.springframework.web.client.RestTemplate.postForObject(RestTemplate.java:357)

at com.osmosix.commons.util.AjaxUtil.postJson(AjaxUtil.java:117)

at com.osmosix.mgmt.cloud.impl.CloudPropertiesServiceImpl.getCloudPropertiesFromGateway(CloudPropertiesServiceImpl.java:365)

at com.osmosix.mgmt.cloud.impl.CloudPropertiesServiceImpl$CloudPropertyTask.run(CloudPropertiesServiceImpl.java:461)

at com.osmosix.commons.operation.impl.AsyncOperationServiceImpl$2.run(AsyncOperationServiceImpl.java:134)

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)

at java.util.concurrent.FutureTask.run(FutureTask.java:266)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:748)

Wenn Sie jedoch zu CCO Osmosef-Protokollen wechseln, erhalten Sie ein klares Bild.

2017-05-29 04:28:00,425 INFO  job.JobServiceController [http-apr-8443-exec-3]  - processing validateCloudAccount request...

2017-05-29 04:28:00,632 ERROR properties.CloudPropertiesController [http-apr-8443-exec-6]  - com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 Forbidden

{

"code" : 403,

"errors" : [ {

"domain" : "global",

"message" : "Google Cloud Resource Manager API has not been used in project credible-spark-166514 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com/overview?project=credible-spark-166514 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.",

"reason" : "forbidden"

} ],

"message" : "Google Cloud Resource Manager API has not been used in project credible-spark-166514 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com/overview?project=credible-spark-166514 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.",

"status" : "PERMISSION_DENIED"

Auflösung

Diese APIs sollten aktiviert sein, damit Cloud Center ordnungsgemäß mit dem GCE funktioniert:

- Google Computing Engine-API

- Google Cloud Resource Manager-API

So aktivieren Sie es:

1. Navigieren Sie in der GCE-Konsole zum API-Dashboard, wie im Bild gezeigt:

2. Am Ende der Seite sind alle aktivierten APIs aufgelistet, und höchstwahrscheinlich stellen Sie fest, dass die Google Compute Engine-API bereits aktiviert ist, wenn nicht aktiviert, wie im Bild gezeigt:

3. GCE stellt jedoch die Resource Manager API nicht direkt auf die Seite, sodass Sie danach suchen müssen. Wählen Sie dazu oben auf der Seite die Option enable API aus, und Sie werden zur API-Bibliothek umgeleitet.

4. Suchen Sie, wie im Bild gezeigt, nach der Google Cloud Resource Manager-API, wählen Sie diese aus, und aktivieren Sie sie.

5. Um diese Änderungen wiederzugeben, starten Sie den CCO-Computer neu, und versuchen Sie dann erneut, die App bereitzustellen.