Introdução
Este documento descreve como sincronizar sua instância de produto com suas Smart Accounts no Cisco Hosted Collaboration Solution (HCS) 12.5 via
Cisco Hosted Collaboration Mediation Fulfillment (HCM-F)
Pré-requisitos
Requisitos
A Cisco recomenda que você tenha conhecimento destes tópicos:
Cisco Unified Communications Manager (CUCM) versão 12.5
HCM-F 12,5
Licenciamento inteligente do CUCM - Modelo direto
Cisco Smart Software Management (CSSM)
Componentes Utilizados
As informações neste documento são baseadas nestas versões de software e hardware:
CUCM 12.5.X
HCM-F 12.5.1
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Informações de Apoio
O Hosted License Manager (HLM) é executado no HCM-F como serviço. O HLM/HCM-F foi desenvolvido para registrar os aplicativos Cisco Unified Communications Applications (UC) no Smart Licensing Service executado no Cisco Cloud. Depois que os aplicativos UC são atribuídos ao Smart Licensing Service, o consumo de licenças desses aplicativos é rastreado no portal CSSM, que atua como um repositório único de gerenciamento de licenças para parceiros HCS.
O Serviço HCM-F HLM permite a configuração de uma Conta inteligente no HCM-F e permite qualquer Operação baseada em cluster relacionada a essa Conta inteligente do HCM-F.
O Serviço de Licenciamento Inteligente, que reside na nuvem da Cisco, expõe diferentes interfaces de programação de aplicativos (API) por meio da Autenticação OAuth. Além disso, os aplicativos de UC expõem APIs para permitir que o HCM-F execute várias etapas envolvidas durante o curso da operação de cluster, como "Atribuir" e "Cancelar atribuição".
Portanto, o HCM-F usa APIs expostas em ambos os lados para executar uma operação de cluster.
A conectividade de rede para os serviços de nuvem da Cisco é necessária para esta integração:
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
Todas as comunicações entre o HCM-F/Proxy e os serviços de nuvem da Cisco são feitas através da conexão TLS na porta TCP/443.
Configuração
Como administrador de um parceiro HCS, faça login no Cisco API Developer Portal e selecione Explorar > Contas inteligentes e APIs de licenciamento > Contas inteligentes
Para configurar uma Conta inteligente no HCM-F, é necessário um Cliente API:
As Credenciais do cliente geradas nesta etapa usam o Tipo de aplicativo "Serviço de API", exigem a associação da API da Conta inteligente e são fornecidas para Acesso à configuração da Conta inteligente no HCM-F. Quando as credenciais corretas do cliente e o nome de domínio da Smart Account forem fornecidos, o HCM-F concluirá a configuração e usará os mesmos detalhes de acesso para interagir com o Smart Licensing Service.
Especificamente, ele se autentica em cloudsso.cisco.com para obter um token de portador Oauth2.0 e, em seguida, busca todas as Virtual Accounts do Cloud License Service via swapi.cisco.com. O tempo decorrido para a busca de Virtual Accounts depende do número de Virtual Accounts e Virtual Accounts sincronizadas a partir do satélite. Esta operação leva até uma hora. As Virtual Accounts que são sincronizadas a partir do satélite são ignoradas.
Fluxo de trabalho de configuração do HCM-F para Smart Licensing
Navegue até Gerente de infraestrutura > Licenciamento inteligente > Configurar Smart Account:
As informações aqui são preenchidas com a saída gerada na seção abordada anteriormente neste documento.
Navegue até Gerente de infraestrutura > Smart Licensing > Transport Mode:
A configuração do modo de transporte em HCM-F é necessária para a conexão dos aplicativos HCM-F e UC ao CSSM.
Observação: o HCM-F 12.5.1 suporta apenas a integração direta de Modelo, ou seja, o Modo de transporte pode ser definido como direto ou proxy
Navegue até Gerente de infraestrutura > Smart Licensing > Resumo da conta virtual:
Observação: {Para ver as Virtual Accounts associadas à Smart Account. Selecione o nome da Smart Account na lista. A página Virtual Accounts mostra a lista de Virtual Accounts.}
CSSM de associação de cluster
Para "atribuir" um aplicativo UC ao CSSM, você precisa garantir que o cluster 12.5 e o aplicativo UC estejam presentes e configurados no inventário HCM-F junto com a credencial da plataforma e do administrador.
Quando a configuração da Conta inteligente estiver concluída, o HCM-F sincronizará todos os dados do CSSM e atualizará o SDR, a Conta inteligente junto com os dados da conta virtual. Depois que os dados da Virtual Account são atualizados no SDR , o usuário administrador pode atribuir o cluster a qualquer Virtual Account.
Essa operação de cluster é conhecida como "Atribuição de cluster" e a Remoção de cluster do VA é chamada de "Cancelamento de atribuição de cluster". As movimentações de cluster de um VA para outro são conhecidas como "Reatribuição de Cluster".
Para atribuir um cluster ao CSSM, navegue até
Gerente de infraestrutura > Smart Licensing > Resumo da Virtual Account:
Selecione a Virtual Account que deseja utilizar.
Atribuição de cluster: selecione Atribuir:
Selecione o aplicativo UC que deseja atribuir e selecione o botão Assign:
Após a conclusão da atribuição, o aplicativo UC aparece como atribuído à Virtual Account (VA) que você usou:
(Smart Licensing > Resumo do cluster
O que acontece quando você atribui um aplicativo de UC ao Serviço de Licenciamento Inteligente via HCM-F?
Este é o Fluxo de Trabalho do HLM que é executado:
- Verificação
- Alteração do Modo de Licença
- Alteração do modo de transporte
- Registro
Isso pode ser visto na seção Jobs (Gerente de infraestrutura > Administração > Jobs):
Navegação por Logs (Logs do HLM definidos como Detalhado)
- O HLM obtém uma solicitação de atribuição de cluster do banco de dados e verifica se o cluster é elegível:
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. O agregado é elegível:
<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. O HLM altera o tipo de produto no CUCM para 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. O HLM instrui o serviço Cisco HCS provisioning Adapter (CHPA) a atribuir o cluster ao 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. A atribuição de cluster é bem-sucedida:
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
}