المحتويات

المقدمة

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

المتطلبات

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

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

التكوين

سير عمل تكوين HCM-F للترخيص الذكي

CSSM الخاص بارتباط نظام المجموعة

ماذا يحدث عند تخصيص تطبيق الاتصالات الموحدة لخدمة الترخيص الذكي عبر HCM-F؟

تسجيل الدخول في المسار (تم تعيين سجلات HLM على "تفصيلي")

المقدمة

يوضح هذا المستند كيفية مزامنة مثيل المنتج مع حساباتك الذكية في حل التعاون المستضاف من Cisco (HCS) 12.5 عبر

تنفيذ وسيط التعاون المستضاف (HCM-F) من Cisco

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

المتطلبات

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

Cisco Unified Communications Manager (CUCM)، الإصدار 12.5

HCM-F 12.5

الترخيص الذكي CUCM - طراز Direct

إدارة البرامج الذكية من Cisco (CSSM)

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

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

CUCM، الإصدار 12.5.x

HCM-F، الإصدار 12.5.1

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

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

يعمل مدير الترخيص المستضاف (HLM) في HCM-F كخدمة. تم تطوير HLM/HCM-F لتسجيل تطبيقات الاتصالات الموحدة (UC) من Cisco إلى خدمة الترخيص الذكي التي تعمل في سحابة Cisco. بمجرد تعيين تطبيقات الاتصالات الموحدة إلى "خدمة الترخيص الذكي"، يتم تعقب إستهلاك الترخيص لهذه التطبيقات من بوابة CSSM التي تعمل كمستودع إدارة ترخيص واحد لشركاء HCS.

تتيح خدمة HCM-F HLM تكوين حساب Smart في HCM-F وتسمح بأي عمليات قائمة على نظام مجموعة مرتبطة بهذا الحساب الذكي من HCM-F.

تعرض خدمة الترخيص الذكي الموجودة في سحابة Cisco واجهة برمجة التطبيقات (API) المختلفة من خلال مصادقة OAuth. بالإضافة إلى ذلك، تكشف تطبيقات الاتصالات الموحدة واجهات برمجة التطبيقات (API) للسماح ل HCM-F بتنفيذ خطوات متعددة متعلقة أثناء عملية المجموعة مثل "تعيين" و"إلغاء تعيين".

يستخدم HCM-F معلومات واجهة برمجة التطبيقات التي يتم كشفها على كلا الجانبين لتنفيذ عملية نظام المجموعة.

يلزم اتصال الشبكة بخدمات Cisco Cloud لهذا التكامل:

Cloudsso1.cisco.com -> 72.163.4.74

cloudsso2.cisco.com -> 173.37.144.211

cloudsso3.cisco.com -> 173.38.127.38

swapi.cisco.com -> 146.112.59.25

يتم إجراء جميع الاتصالات بين HCM-F/Proxy وخدمات السحابة من Cisco من خلال اتصال TLS على منفذ TCP/443.

التكوين

كمسؤول شريك HCS، قم بتسجيل الدخول إلى مدخل مطور Cisco API المحدد استكشف > الحسابات الذكية وواجهات برمجة التطبيقات (API) الخاصة بالترخيص > الحسابات الذكية

لتكوين "حساب ذكي" في HCM-F، يلزم وجود عميل واجهة برمجة تطبيقات (API):

تستخدم بيانات اعتماد العميل التي تم إنشاؤها في هذه الخطوة نوع التطبيق "خدمة API"، وتتطلب اقتران واجهة برمجة تطبيقات (API) للحساب الذكي، ويتم توفيرها للوصول إلى تكوين الحساب الذكي في HCM-F. بمجرد توفير بيانات اعتماد العميل الصحيحة واسم مجال "الحساب الذكي"، يكمل HCM-F التكوين ويستخدم نفس تفاصيل الوصول للتفاعل مع "خدمة الترخيص الذكي".

وعلى وجه الخصوص، تتم مصادقته مقابل cloudsso.cisco.com للحصول على رمز مميز لحامل OAUTH2.0 ثم إحضار جميع الحسابات الظاهرية من "خدمة ترخيص السحابة" عبر swapi.cisco.com. يعتمد الوقت المستغرق لجلب الحسابات الظاهرية على عدد الحسابات الظاهرية والحساب الظاهري الذي تمت مزامنته من القمر الصناعي. تستغرق هذه العملية ساعة. يتم تجاهل الحسابات الظاهرية التي تتم مزامنتها من القمر الصناعي.

سير عمل تكوين HCM-F للترخيص الذكي

انتقل إلى مدير البنية الأساسية > الترخيص الذكي > تكوين الحساب الذكي:

يتم ملء المعلومات هنا بالمخرجات التي تم إنشاؤها في القسم الذي تم معالجته مسبقا في هذا المستند.

انتقل إلى مدير البنية الأساسية > الترخيص الذكي > وضع النقل:

يلزم إعداد وضع النقل في HCM-F لتوصيل تطبيقات HCM-F و UC ب CSSM.

ملاحظة: يدعم HCM-F 12.5.1 دمج النموذج المباشر فقط، أي يمكن تعيين وضع النقل على الوكيل أو المباشر

انتقل إلى مدير البنية الأساسية > الترخيص الذكي > ملخص الحساب الظاهري:

ملاحظة: {للاطلاع على الحسابات الظاهرية المقترنة بالحساب الذكي. حدد اسم الحساب الذكي من القائمة. تعرض صفحة "الحسابات الظاهرية" قائمة الحسابات الظاهرية.}

CSSM الخاص بارتباط نظام المجموعة

من أجل "تخصيص" تطبيق الاتصالات الموحدة إلى CSSM، يجب التأكد من وجود كل من مجموعة 12.5 وتطبيق الاتصالات الموحدة وتكوينهما في مخزون HCM-F إلى جانب بيانات اعتماد الإدارة والنظام الأساسي.

بمجرد إجراء تكوين "الحساب الذكي"، يقوم HCM-F بمزامنة جميع البيانات من CSSM وتحديث SDR و Smart Account مع بيانات الحساب الظاهري. بمجرد تحديث بيانات الحساب الظاهري في SDR، يسمح لمستخدم الإدارة بتعيين نظام المجموعة إلى أي حساب ظاهري.

ويشار إلى عملية المجموعة هذه باسم "تعيين نظام المجموعة"، ويطلق على إزالة نظام المجموعة من VA اسم "نظام المجموعة دون التعيين".  ويشار إلى عمليات انتقال المجموعة من VA إلى آخر باسم "إعادة تعيين نظام المجموعة".

لتعيين نظام مجموعة إلى CSSM، انتقل إلى

مدير البنية الأساسية > الترخيص الذكي > ملخص الحساب الظاهري:

حدد الحساب الظاهري الذي تريد إستخدامه.

تعيين نظام المجموعة: تعيين SLECT:

حدد تطبيق الاتصالات الموحدة الذي تريد تعيينه وحدد زر تعيين:

بمجرد اكتمال المهمة، يظهر تطبيق الاتصالات الموحدة كمخصص للحساب الظاهري (VA) الذي أستخدمته:

(الترخيص الذكي > ملخص المجموعة

ماذا يحدث عند تخصيص تطبيق الاتصالات الموحدة لخدمة الترخيص الذكي عبر HCM-F؟

هذا هو سير عمل HLM الذي يتم تنفيذه:

- التحقق

- تغيير وضع الترخيص

- تغيير وضع النقل

- التسجيل

ويمكن ملاحظة ذلك في قسم المهام (مدير البنية الأساسية > الإدارة > الوظائف):

تسجيل الدخول في المسار (تم تعيين سجلات HLM على "تفصيلي")

1. تحصل HLM على طلب تعيين نظام مجموعة من قاعدة البيانات وتتحقق مما إذا كان نظام المجموعة مؤهلا:

2019-06-26 13:17:35,199 INFO [53] Getting the Instance of Cluster Assignment Agent ClusterAssignmentRequest

2019-06-26 13:17:35,199 DEBUG [53] AgentMessageDispatcher::process -- Agent with instance >SMART_LIC_CLUSTER_OPERATION<Exist in memory,no need to read from persistence store-- ClusterAssign(SMART_LIC_CLUSTER_OPERATION)

2019-06-26 13:17:35,199 INFO [169] processing Agent SMART_LIC_CLUSTER_OPERATION

2019-06-26 13:17:35,332 DEBUG [169] isProgressInfoChanged : true

2019-06-26 13:17:35,332 DEBUG [169] job.getStatusInfo: :Verification - Inprogress|License Mode Change - Not Started|Transport Mode Change - Not Started|Registration - Not Started|

2019-06-26 13:17:35,357 INFO [169] jobKID from create: 26

2019-06-26 13:17:35,357 DEBUG [169] Update method at End : JobDTOcom.cisco.hcs.HLM.smartlic.dto.JobDTO Object {

sDRJobPK: 26

jobId: null

jobType: PROVISIONING

description: Assignment of Cluster cl-beta to HCS-DEMO Started

JobEntity: JOB_ENTITY_SMARTACCOUNT

entityName: null

status: IN_PROGRESS

isModifiable: true

isDeletable: true

isRestartable: false

isCancelable: false

progressInfo: {Verification=Inprogress, License Mode Change=Not Started, Transport Mode Change=Not Started, Registration=Not Started}

errorDescription: null

recommendedAction: null

2. المجموعة مؤهلة:

<com.cisco.hcs.hcsagent.message.smartlic.ClusterAssignmentResp>

<messageType>ClusterAssignmentResp</messageType>

<source>

<serviceName>ClusterAssign</serviceName>

<instance>SMART_LIC_CLUSTER_OPERATION</instance>

</source>

<destination>

<serviceName>SDRUI</serviceName>

<instance>HCS-SMARTLIC-LIB0</instance>

</destination>

<sessionID>5fbb89a2-c62b-4d85-b385-3648c8010413</sessionID>

<transactionID>b2e1cfe6-b8fb-462c-a874-374e19afd110</transactionID>

<fault>false</fault>

<Fork>false</Fork>

<requeueCount>0</requeueCount>

<jobId>26</jobId>

<responseCode>PASS</responseCode>

<responseDesc>SmartLicNoError</responseDesc>

<smartLicRespCode defined-in="com.cisco.hcs.hcsagent.message.smartlic.ClusterOperationsResponse">PASS</smartLicRespCode>

<smartLicRespReason defined-in="com.cisco.hcs.hcsagent.message.smartlic.ClusterOperationsResponse">SmartLicNoError</smartLicRespReason>

<smartLicRespCode>PASS</smartLicRespCode>

<smartLicRespReason>SmartLicNoError</smartLicRespReason>

</com.cisco.hcs.hcsagent.message.smartlic.ClusterAssignmentResp>

3. تغير HLM نوع المنتج في CUCM إلى HCS:

2019-06-26 13:17:35,646 DEBUG [33] First pool session created: SDRSyncSession@f11306

2019-06-26 13:17:35,650 INFO [169] UCAppDeploymentModeConnection: Opening secure connection to: https://XXX.YYY.ZZZ:8443/platform-services/services/DeploymentModeService?wsdl

2019-06-26 13:17:35,650 INFO [169] UCAppDeploymentModeConnectionPort successfully opened

2019-06-26 13:17:35,652 DEBUG [33] Pool session created: SDRSyncSession@2cd71b

2019-06-26 13:17:35,659 DEBUG [33] Pool session created: SDRSyncSession@a4e538

2019-06-26 13:17:35,667 DEBUG [33] Pool session created: SDRSyncSession@b3c0d9

2019-06-26 13:17:35,667 INFO [33] Pool is valid. Pool create time in Ms: 1561547855646, poolRunning: false

2019-06-26 13:17:35,667 INFO [33] Created 4 pool sessions.

4. ترشد HLM محول توفير HCS (CHPA) للخدمة من Cisco لتخصيص نظام المجموعة في CSSM:

2019-06-26 13:17:39,102 DEBUG [169] Agent: sending to [chpa]

-------

<com.cisco.hcs.hcsagent.message.chpa.GetTransportSettingsRequest>

<messageType>GetTransportSettingsRequest</messageType>

<source>

<serviceName>ClusterAssign</serviceName>

</source>

<destination>

<serviceName>chpa</serviceName>

</destination>

<sessionID>getTransport-4</sessionID>

<fault>false</fault>

<Fork>false</Fork>

<requeueCount>0</requeueCount>

<deviceId>

<type>ApplicationInstance</type>

<key class="com.cisco.hcs.sdr.v10_0.KIDInt">

<internalValue>4</internalValue>

</key>

</deviceId>

<clusterName>cl-beta</clusterName>

</com.cisco.hcs.hcsagent.message.chpa.GetTransportSettingsRequest>

---------

2019-06-26 13:17:39,104 DEBUG [169] Agent: Sent message to chpa(null)

2019-06-26 13:17:39,104 INFO [169] UCAppTimerTask , Timer Task started at:Wed Jun 26 13:17:39 CEST 2019

2019-06-26 13:17:39,104 DEBUG [169] com.cisco.hcs.HLM.smartlic.core.clusterops.utils.UCAppTimerRegister , UCApp Timer Task Registered successfully , initial delay ,0 interval , 300000

2019-06-26 13:17:39,104 DEBUG [81655] UCAppTimerTask , Timer Task Attempt of Retry 0

2019-06-26 13:17:39,104 INFO [169] JMS Message is Processed and leaving out from JMS thread

2019-06-26 13:17:44,207 DEBUG [45] KeepAliveConsumerProcessor::process -- enter

2019-06-26 13:17:44,207 DEBUG [94] KeepAliveConsumerProcessor::process -- enter

2019-06-26 13:17:44,208 DEBUG [45] KeepAliveConsumerProcessor::process -- received broadcast message for service sdrcnf

2019-06-26 13:17:44,208 DEBUG [45] noChange -- sdrcnf is Alive

2019-06-26 13:17:44,208 DEBUG [45] KeepAliveMonitor::setExpiresBy:

2019-06-26 13:17:44,208 DEBUG [94] KeepAliveConsumerProcessor::process -- received broadcast message for service sdrcnf

2019-06-26 13:17:44,208 DEBUG [45] now: 26/06/2019 01:17:44.208

2019-06-26 13:17:44,208 DEBUG [94] noChange -- sdrcnf is Alive

2019-06-26 13:17:44,208 DEBUG [45] expected by: 26/06/2019 01:19:44.208

2019-06-26 13:17:44,208 DEBUG [94] KeepAliveMonitor::setExpiresBy:

2019-06-26 13:17:44,208 DEBUG [94] now: 26/06/2019 01:17:44.208

2019-06-26 13:17:44,208 DEBUG [94] expected by: 26/06/2019 01:19:44.208

2019-06-26 13:17:46,105 INFO [36] Perfmon Category in Publish Counter update is Cisco HCS License Manager

2019-06-26 13:17:46,106 DEBUG [36] AgentJmx: JMS connection already up, reusing connection

2019-06-26 13:17:49,420 INFO [63] smartLicAuditProcessor::process enter...

2019-06-26 13:17:50,075 INFO [66] smartLicAuditProcessor::process enter...

5.  تم تعيين نظام المجموعة بنجاح:

2019-06-26 13:17:50,390 INFO [68] LicUsageAuditProcessor::process enter...

2019-06-26 13:17:52,331 DEBUG [53]

AgentMessageDispatcher -- Received msg by RouteBuilder[ClusterAssign-null] :

---------------

<com.cisco.hcs.hcsagent.message.chpa.GetTransportSettingsResponse>

<messageType>GetTransportSettingsResponse</messageType>

<source>

<serviceName>chpa</serviceName>

<instance>3998890f-ac1c-4ee8-baf8-6b0d2331387b</instance>

</source>

<destination>

<serviceName>ClusterAssign</serviceName>

</destination>

<sessionID>getTransport-4</sessionID>

<fault>false</fault>

<Fork>false</Fork>

<requeueCount>0</requeueCount>

<deviceId>

<type>ApplicationInstance</type>

<key class="com.cisco.hcs.sdr.v10_0.KIDInt">

<internalValue>4</internalValue>

</key>

</deviceId>

<responseCode>PASS</responseCode>

<responseReason>chpaNoError</responseReason>

<clusterName>cl-beta</clusterName>

<mode>HTTP/HTTPS Proxy</mode>

<url></url>

<ipAddress>proxy.esl.cisco.com</ipAddress>

<port>8080</port>

</com.cisco.hcs.hcsagent.message.chpa.GetTransportSettingsResponse>

-

progressInfo: {Verification=Pass, License Mode Change=Not Applicable, Transport Mode Change=Not Applicable, Registration=Pass}

errorDescription: null

recommendedAction: null

jobTypeChanged: true

descriptionChanged: true

JobEntityChanged: true

entityNameChanged: false

statusChanged: true

isModifiableChanged: false

isDeletableChanged: false

isRestartableChanged: false

isCancelableChanged: false

progressInfoChanged: false

errorDescriptionChanged: false

recommendedActionChanged: false

}