簡介
本檔案介紹如何在Cisco Hosted Collaboration Solution(HCS) 12.5中,透過以下方式將產品例項與智慧帳戶同步:
思科託管合作調解履行(HCM-F)
必要條件
需求
思科建議您瞭解以下主題:
思科整合通訊管理員(CUCM)版本12.5
HCM-F 12.5
CUCM智慧許可 — 直接型號
思科智慧軟體管理(CSSM)
採用元件
本文中的資訊係根據以下軟體和硬體版本:
CUCM 12.5.X
HCM-F 12.5.1
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
背景資訊
託管許可證管理器(HLM)在HCM-F中作為服務運行。HLM/HCM-F的開發旨在將思科統一通訊應用(UC)應用註冊到思科雲中運行的智慧許可服務。將UC應用分配給智慧許可服務後,從CSSM門戶跟蹤這些應用的許可證使用情況,該門戶將作為HCS合作夥伴的單一許可證管理儲存庫。
HCM-F HLM服務允許在HCM-F中配置智慧帳戶,並允許從HCM-F執行與此智慧帳戶相關的任何基於群集的操作。
思科雲中的智慧許可服務通過OAuth身份驗證公開不同的應用程式程式設計介面(API)。此外,UC應用確實公開了API,以允許HCM-F執行群集操作過程中涉及的多個步驟,如「分配」和「取消分配」。
ence HCM-F利用兩端公開的API來執行集群操作。
此整合需要連線到思科雲服務:
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與思科雲服務之間的所有通訊均通過埠TCP/443上的TLS連線完成。
組態
作為HCS合作夥伴管理員,登入Cisco API Developer Portal選擇 瀏覽>智慧帳戶和許可API >智慧帳戶
要在HCM-F中配置智慧帳戶,需要API客戶端:
在此步驟中生成的客戶端憑據使用「API服務」應用程式型別,需要智慧帳戶API關聯,並且提供這些憑據用於HCM-F中的智慧帳戶配置訪問。一旦提供了正確的客戶端憑證和智慧帳戶域名,HCM-F就會完成配置並使用相同的訪問詳細資訊與智慧許可服務進行互動。
具體來說,它會根據cloudsso.cisco.com進行身份驗證,以獲取Oauth2.0承載令牌,然後通過swapi.cisco.com從雲許可證服務獲取所有虛擬帳戶。虛擬帳戶提取所用的時間取決於從衛星同步的虛擬帳戶和虛擬帳戶的數量。此操作最多需要一個小時。忽略從衛星同步的虛擬帳戶。
適用於智慧授權的HCM-F組態工作流程
導航到Infrastructure Manager > Smart Licensing > Configure Smart Account:
此處資訊採用本文檔前面部分中生成的輸出填充。
導航到Infrastructure Manager > Smart Licensing > Transport Mode:
在HCM-F中設定傳輸模式是將HCM-F和UC應用程式連線到CSSM所必需的。
注意:HCM-F 12.5.1僅支援直接模型整合,即傳輸模式可以設定為直接或代理
導航到Infrastructure Manager > Smart Licensing > Virtual Account Summary:
注意: {要檢視與智慧帳戶關聯的虛擬帳戶。從清單中選擇智慧帳戶名稱。「虛擬帳戶」頁顯示虛擬帳戶清單。}
群集關聯CSSM
要將UC應用程式「分配」到CSSM,您需要確保12.5集群和UC應用程式都存在並配置在HCM-F清單中,同時提供管理員和平台憑據。
完成智慧帳戶配置後,HCM-F將同步來自CSSM的所有資料並更新SDR、智慧帳戶和虛擬帳戶資料。在SDR中更新虛擬帳戶資料後,管理員使用者可以將群集分配給任何虛擬帳戶。
此群集操作稱為「群集分配」,從VA中刪除群集操作稱為「群集取消分配」。 群集從一個VA移動到另一個VA稱為「群集重新分配」。
要將集群分配給CSSM,請導航至
Infrastructure Manager >智慧許可>虛擬帳戶摘要:
選擇要使用的虛擬帳戶。
集群分配:選擇分配:
選擇要分配的UC應用,然後選擇Assign按鈕:
完成分配後,UC應用程式將顯示為已分配給您使用的虛擬帳戶(VA):
(智慧許可>群集摘要
通過HCM-F將UC應用程式分配到智慧許可服務時,會發生什麼情況?
這是已執行的HLM工作流:
這可以在「作業」部分中看到(Infrastructure Manager > Administration > Jobs):
日誌演練(HLM日誌設定為Detailed)
- 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指示服務Cisco HCS調配介面卡(CHPA)將群集分配到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
}