المحتويات

المقدمة:

المتطلبات الأساسية

المتطلبات

المكونات المستخدمة

معلومات أساسية

المشكلة

قرار

المقدمة:

يوضح هذا المستند كيفية أستكشاف أخطاء تكامل Google Cloud وإصلاحها باستخدام إصدار مدير CloudCenter (CCM) 4.8.0/4.7.x .

المتطلبات الأساسية

المتطلبات

توصي Cisco بأن تكون لديك معرفة بالمواضيع التالية:

- واجهة Linux

- بيئات الأجهزة الافتراضية

- حساب Google السحابي

المكونات المستخدمة

تستند المعلومات الواردة في هذا المستند إلى إصدارات البرامج التالية:

- CloudCenter الإصدار 4.6.x إلى 4.8.x

تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك مباشرة، فتأكد من فهمك للتأثير المحتمل لأي أمر.

معلومات أساسية

بعد إضافة GCE Orchestrator (CCO) إلى CCM بنجاح ومحاولة إختبار البيئة بواسطة نشر تطبيق يتضمن تحديد نوع المثيل والمنطقة، يتم عرض رسالة الخطأ أثناء محاولة تحديد المشروع كما هو موضح في الصورة:

المشكلة

في CCM مقياس سرعة، أنت يستطيع وجدت هذا خطأ:

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)

على أي حال، إذا ذهبت إلى سجلات CCO osmosix، تحصل على صورة واضحة.

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"

قرار

يجب تمكين واجهة برمجة التطبيقات هذه لكي يعمل Cloud Center بشكل صحيح مع GCE:

- واجهة برمجة التطبيقات لمحرك الحوسبة من Google

- واجهة برمجة التطبيقات لإدارة موارد السحابة من Google

ولتمكينها:

1. في وحدة التحكم GCE وانتقل إلى لوحة معلومات واجهة برمجة التطبيقات، كما هو موضح في الصورة:

2. في نهاية الصفحة، يتم إدراج جميع واجهات برمجة التطبيقات الممكنة، وستجد على الأرجح أن واجهة برمجة تطبيقات Google Compute Engine API ممكنة بالفعل، في حالة عدم تمكينها، كما هو موضح في الصورة:

3. ومع ذلك، لا يضع GCE واجهة برمجة تطبيقات إدارة الموارد في الصفحة مباشرة لذلك يجب عليك البحث عنها. لذلك ، حدد خيار تمكين واجهة برمجة التطبيقات من أعلى الصفحة ويعيد توجيهك إلى مكتبة واجهة برمجة التطبيقات.

4. كما هو موضح في الصورة، ابحث عن واجهة برمجة تطبيقات Google Cloud Resource Manager API، وقم بتحديدها وتمكينها.

5. لعكس هذه التغييرات، قم بإعادة تشغيل جهاز CCO ثم حاول نشر التطبيق مرة أخرى.