Descoberta do IBM Cloud Platform
A aplicação [ ServiceNow Descoberta encontra componentes Plataforma IBM Cloud (API SoftLayer v3 e v3.1 e API BlueMix v2) usando os padrões Plataforma IBM Cloud. A descoberta de alguns desses recursos requer a atualização da aplicação Padrões de descoberta e mapeamento de serviços a partir da ServiceNow Store.
Você pode usar os padrões no Now Platform usando London Patch 7, Madrid Patch 2 ou versões posteriores.
Solicitar aplicativos na Store
Acesse o site ServiceNow Store para ver todos os aplicativos disponíveis e obter informações sobre como enviar solicitações para a loja. Para obter informações sobre notas de versão cumulativa para todos os aplicativos liberados, consulte as ServiceNow Store notas de versão do histórico de versão.
Pré-requisitos
- MID Server
- Use um MID Server dedicado para descoberta na nuvem. O MID Server deve ter 16 núcleos, 8 GB com alocação de memória de modelo de memória Java (JVM) de 4 GB.
- Credenciais
- Os recursos de nuvem estão em uma nuvem da IBM. Crie as credenciais da IBM para acessar sua conta da IBM.
- Navegar até .
- Clique em Nova.
- Clique em Credenciais da IBM e preencha o formulário:
Tabela 1. Formulário de Credenciais Campo Descrição Nome Nome da credencial. Um exemplo é ibm-cred. Ordem A ordem na qual a plataforma testa esta credencial ao tentar fazer login nos dispositivos. Um número menor indica que a credencial aparece na parte superior da lista. Estabeleça a ordem das credenciais ao usar um grande número de credenciais ou quando a segurança bloquear usuários após três tentativas de login com falha. Se todas as credenciais tiverem o mesmo número de ordem, ou número nenhum, a instância vai tentar usar as credenciais em uma ordem aleatória. O valor padrão é 100. Usuário de API Softlayer Nome de usuário da API SoftLayer. Use o nome de usuário da API do SoftLayer definido no console do SoftLayer. Chave de API Softlayer Chave para a API SoftLayer. Use a chave de API do SoftLayer definida no console do SoftLayer. Chave de API Bluemix Chave para a API do BlueMix. Use a chave de API do BlueMix definida no console do IBM Cloud. - Clique em Enviar.
- Criar uma conta de serviço em nuvem da IBM
- Use as credenciais definidas no procedimento anterior para criar a conta de serviço em nuvem da IBM.
- Navegar até .
- Clique em Nova.
- No formulário, preencha os campos:
Tabela 2. Formulário Conta de serviço em nuvem Campo Descrição Nome Nome da credencial. Um exemplo é ibm-snow ID da Conta Nome do ID da conta da IBM. Insira o ID da conta da IBM. Credenciais do Descoberta Credenciais do Descoberta definidas anteriormente. Tipo de datacenter Tipo de datacenter. Por exemplo, IBM Datacenter [cmdb_ci_ibm_datacenter] - Clique em Enviar.
- Criar uma Descoberta programação sem servidor
- Configure um Descobertasem servidor.
- No Now Platform, navegue até .
- Clique em Nova.
- No formulário, preencha os campos:
Tabela 3. Formulário Programação do Descoberta Campo Descrição Nome Nome para esta programação Descoberta. Por exemplo, Padrão sem servidor Descoberta Tipo de descoberta. Selecionar sem servidor MID Server Nome do MID Server. Por exemplo, Discovery_Server Ativo Opção para habilitar esta programação para Descoberta. Marque esta caixa de seleção para habilitar Descoberta. Executar Especifica a frequência de execução da programação Descoberta. - Clique com o botão direito do mouse no formulário Programação do Descoberta e selecione Salvar.
- Clique na guia Padrões de execução sem servidor.
- Clique em Nova.
- No formulário, preencha os campos:
Tabela 4. Formulário Padrão de execução sem servidor Campo Descrição Nome Nome do Padrão de execução sem servidor. Por exemplo, IBM1 Padrão Nome do padrão que você deseja executar. Se você quiser executar vários padrões, crie vários registros.
Host de Proxy Nome de domínio totalmente qualificado da máquina na qual o servidor proxy está sendo instalado. Especifique Global. Ativo Opção para habilitar esta programação para Descoberta. Marque esta caixa de seleção para habilitar Descoberta. - Configure os parâmetros necessários para o padrão Plataforma IBM Cloud da seguinte forma:
Tabela 5. Parâmetros do inicializador de padrão do Descoberta Parâmetro Descrição cloud_cred_id O sys_id das credenciais da IBM especificadas na configuração. cloud_account_id O ID da conta da IBM. cloud_datacenter_type cmdb_ci_ibm_datacenter - Atualize.
- Para iniciar Descoberta, navegue até a definição Sem servidor Descoberta e clique em Descobrir agora.
- Fluxo da IBM - Descoberta horizontal
- Para executar uma descoberta usando uma programação sem servidor, os padrões do IBM Cloud Platform selecionados são executados e descobrem recursos do IBM Cloud Platform.
- Para executar uma descoberta usando uma conta de serviço, uma programação de descoberta completa do IBM Cloud Platform é executada, descobrindo todos os recursos compatíveis do IBM Cloud Platform.
- Operação personalizada em nuvem
- REST na nuvem - Adicionar resposta ao contextoOperação para consultas REST na nuvem que oferece suporte a respostas em grande escala e melhor uso de memória.
- Especifique todos os campos com os mesmos valores da operação personalizada Consulta REST na nuvem, exceto para especificar a tabela para a resposta, que é definida no campo Nome da variável de resposta.
- Defina Definir análise como Nenhum.
- Especifique todos os campos com os mesmos valores da operação personalizada Consulta REST na nuvem, exceto para especificar a tabela para a resposta, que é definida no campo Nome da variável de resposta.
- Funções EVAL
Use a função EVAL a seguir para transformar a resposta da API do balanceador de carga em um formato JSON completo. A resposta padrão é formatada como “[<resource objects> ]”.
var cloud_lb_response = ${cloud_lb_response}; for (var i = 0; i < cloud_lb_response.size(); i++){ cloud_lb_response.set(i, '{"result":[' + cloud_lb_response.get(i) + ']}'); } CTX.setAttribute("cloud_lb_response", cloud_lb_response;Use a função EVAL a seguir para transformar a resposta da API de rede em um formato JSON completo. A resposta padrão é formatada como “[<resource objects> ]”.
var network_response = ${network_response}; for (var i = 0; i < network_response.size(); i++){ network_response.set(i, '{"result":[' + network_response.get(i) + ']}'); } CTX.setAttribute("network_response", network_response);Use a função EVAL a seguir para obter a região da IBM da zona de disponibilidade do LB (datacenter). A mesma função é usada para outros recursos dentro do padrão.
var res = ""; res = IbmCloudDcToRegion.convertDctoRegion(${cloud_lb[].cloud_lb_az_short_name});Use a função EVAL a seguir para selecionar o algoritmo necessário no padrão.
var rtrn var lb_algorithm = ${cloud_lb_pools[].lb_algorithm}.toString(); switch (lb_algorithm){ case "ROUNDROBIN": lb_algorithm = "round-robin"; break; case "WEIGHTED_RR": lb_algorithm = "round-robin"; break; case "LEASTCONNECTION": lb_algorithm = "least-connections"; break; default: break;Use a função EVAL a seguir para analisar a região exclusiva da conta que hospeda as organizações e os espaços correspondentes.
var tableWithoutDuplicates = ''; tableWithoutDuplicates = DuplicateRemover.removeDuplicates(${account_region},["region_name"]); CTX.setAttribute("account_region_unique", tableWithoutDuplicates);Use a função EVAL a seguir para obter informações de todas as organizações atribuídas à conta de nuvem da IBM, em que a iteração para obter a região exclusiva é realizada.
var cloudcall = new CloudRestAPIClient(); var resourceTable = ${account_region_unique[*].region_name}; var tableSize = resourceTable.size(); var tmp_response = new Packages.java.util.ArrayList(); var all_organizations_response = new Packages.java.util.ArrayList(); for (var i = 0; i < tableSize ; i++){ if (!resourceTable.get(i)) continue; var url = "https://api."+resourceTable.get(i)+".bluemix.net/v2/organizations"; tmp_response = cloudcall.arrayListExecute(${service_account}, null, url, null, 'GET', null, 'true', CTX); for (var j = 0; j < tmp_response.size(); j++){ all_organizations_response.add('{"result":[' + tmp_response.get(j) + ']}'); } } CTX.setAttribute("all_organizations_response", all_organizations_response);Use a função EVAL a seguir para obter informações de todos os espaços atribuídos à conta de nuvem da IBM, em que a iteração para obter a região exclusiva é realizada.
var rtrn = ''; var cloudcall = new CloudRestAPIClient(); var resultList = new Packages.java.util.ArrayList(); var rest = ''; var resourceTable = ${account_region_unique[*].region_name}; var result = new Packages.java.util.ArrayList(); var all_organizations_response = ${all_organizations_response} for (var i = 0; i < resourceTable.size() ; i++){ var url = "https://api."+resourceTable.get(i)+".bluemix.net/v2/spaces"; result = cloudcall.arrayListExecute(${service_account}, null, url, null, 'GET', null, 'true', CTX); for (var z = 0; z < all_organizations_response.size(); z++){ var jsonObj = JSON.parse(result.get(z)); ms.log("length "+jsonObj.resources.length); for(var j=0;j<jsonObj.resources.length;j++){ var guid = jsonObj.resources[j].metadata.guid; var url = jsonObj.resources[j].metadata.url; var name = jsonObj.resources[j].entity.name; var organization_guid = jsonObj.resources[j].entity.organization_guid; var allow_ssh = jsonObj.resources[j].entity.allow_ssh ? "true" : "false"; var row = new Packages.java.util.HashMap(); Packages.com.snc.sw.log.DiscoLog.getLogger("IBM Cloud Space and Org").debug(">>>>>>>>>>>>>||||||||||||>>>>>> region alias=" + resourceTable.get(i)); Packages.com.snc.sw.log.DiscoLog.getLogger("IBM Cloud Space and Org").debug(">>>>>>>>>>>>>||||||||||||>>>>>> region full name=" + IbmCloudDcToRegion.regionNamebyAlias(resourceTable.get(i))); row.put("region", IbmCloudDcToRegion.regionNamebyAlias(resourceTable.get(i))); row.put("space_guid",guid); row.put("space_url",url); row.put("space_name",name); row.put("space_organization_guid",organization_guid); row.put("space_allow_ssh",allow_ssh); row.put("rest", rest); resultList.add(row); } } CTX.setAttribute('spaces_table', resultList); }Use a seguinte função EVAL para filtrar todos os espaços por região exclusiva.
var space_region = ${spaces_table[].region}; Packages.com.snc.sw.log.DiscoLog.getLogger("IBM Cloud Space and Org").debug("filtering space according to LDC. space_region=" + space_region); var regions = ${cmdb_ci_ibm_datacenter[*].region}; Packages.com.snc.sw.log.DiscoLog.getLogger("IBM Cloud Space and Org").debug("input regions list=" + regions.toString()); var rtrn = "false"; if(regions.contains(space_region)) { rtrn = "true"; } rtrn;Use a função EVAL a seguir para filtrar todos os espaços por descoberta de armazenamento.
var storage_response = ${storage_response}; for (var i = 0; i < storage_response.size(); i++){ storage_response.set(i, '{"result":[' + storage_response.get(i) + ']}'); } CTX.setAttribute("storage_response", storage_response);Use a seguinte função EVAL para transformar a resposta da API no formato JSON completo, já que a resposta inalterada é formatada como “[<resource objects> ]”.
var ssh_key = ${ssh_key_json}; for(var i = 0; i < ssh_key.size(); i++){ ssh_key.set(i,'{"result\" : ' + ssh_key.get(i) + "}"); } CTX.setAttribute("ssh_key_json", ssh_key);Use a função EVAL a seguir para preencher a zona de disponibilidade na tabela de volume de armazenamento.
var rtrn; var resource_group = ${network_storage[].resource_name}; var regex = /.*-(\w{3}\d{2}).*/; var az_name = regex.exec(resource_group); if (az_name) { rtrn = az_name[1]; } else { rtrn; }Use a função EVAL a seguir para preencher a região na tabela de volume de armazenamento.
var res = ""; res = IbmCloudDcToRegion.convertDctoRegion(${network_storage[].availability_zone});Use a função EVAL a seguir para transformar o tamanho dos armazenamentos de bytes de gigabytes.
var rtrn = ''; var size = ${network_storage[].size}; rtrn = (parseInt(size) * 1073741824) + ‘’;Use a função EVAL a seguir para transformar o tamanho dos armazenamentos de bytes de gigabytes.
var cloudcall = new CloudRestAPIClient(); var resourceTable = ${network_storage[*].storage_object_id}; var tableSize = resourceTable.size(); var allResources = new Packages.java.util.ArrayList(); var response = new Packages.java.util.ArrayList(); for (var i = 0; i < tableSize ; i++){ if (!resourceTable.get(i)) continue; var url = "https://api.softlayer.com/rest/"+${api_version}+"/SoftLayer_Network_Storage/"+resourceTable.get(i)+"/getObject?objectMask=mask[snapshots]"; // the commented out code is to call the "Cloud Rest Call" API allResources = cloudcall.arrayListExecute(${service_account}, null, url, null, 'GET', null, 'true', CTX); for (var j = 0; j < allResources.size(); j++){ response.add('{"result":[' + allResources.get(j) + ']}'); } } CTX.setAttribute("all_snapshots_response", response);Use o seguinte fechamento EVAL que transforma o JSON recebido da API em um formato com o qual o analisador JSON pode trabalhar. O JSON padrão é salvo em
$vm_json_array, o novo JSON está em$vm_json.var vm_json = new Packages.java.util.ArrayList(); vm_json.addAll(${vm_json_array}); for (var i = 0 ; i < vm_json.size(); i++){ vm_json.set(i, '{\"result\":[' + vm_json.get(i) + ']}'); } CTX.setAttribute("vm_json", vm_json);Use o seguinte fechamento EVAL que retorna "on" se o status de energia estiver em execução. O valor "off" será retornado se o status de energia estiver desligado.
var power = ${cmdb_ci_vm_instance[].state}; var rtrn = ''; if (power == 'Running'){ rtrn = "on"; } else { rtrn = "off" }Use o seguinte fechamento EVAL que retorna a região do IC, com base no nome da zona de disponibilidade fornecido.
var az = ${cmdb_ci_vm_instance[].avail_zone}; var rtrn = ''; rtrn = IbmCloudDcToRegion.convertDctoRegion(az);Use o seguinte fechamento EVAL que cria um HashMap de HashSets, conectando VMs com seus armazenamentos de rede. A seguinte chave é usada:- P = página
- V = VM
- N = armazenamento de rede
var rtrn = ''; var vmJson = ${vm_json_array}; var VMtoStorageHashMap = new Packages.java.util.HashMap(); for (var p = 0 ; p < vmJson.size(); p++){ var page = JSON.parse(vmJson.get(p)); for (var now_V in page){ if (page[v].allowedNetworkStorage.length > 0){ var vm_id = page[v].id + ''; var storageSet = new Packages.java.util.HashSet(); for (var n in page[v].allowedNetworkStorage){ storageSet.add(page[v].allowedNetworkStorage[n].id + ''); } VMtoStorageHashMap.put(vm_id,storageSet); } } } CTX.setAttribute("VMStorageCache", VMtoStorageHashMap);Use o seguinte fechamento EVAL para remover entradas duplicadas das tabelas.
var tableWithoutDuplicates = ''; tableWithoutDuplicates = DuplicateRemover.removeDuplicates(${cmdb_ci_os_template},["object_id"]); CTX.setAttribute("cmdb_ci_os_template", tableWithoutDuplicates);Use o seguinte fechamento EVAL que cria uma lista de IDs de VM relacionados ao ID do grupo de segurança atual.
var rtrn = ''; //get the Security Group ID of the current record in the table for comparison var current_table_id = ${security_groups[].sec_group_id}; var current_table_id_string = current_table_id + ''; // get the list of instance's ID that will be then added to Security Group table var needed_value_id_list = ${sec_group_network_components[*].vm_instance_id}; //get the list of Security Group IDs in the Network Component table, which will then be compared one by one to the current record of the security_groups table var compare_id_list = ${sec_group_network_components[*].sec_group_id}; var beforeReturn = ''; var separator = ''; for (var i = 0; i < compare_id_list.size(); i++) { if (current_table_id_string == compare_id_list.get(i)){ beforeReturn += separator + needed_value_id_list.get(i); separator = ','; } } rtrn = beforeReturn;Use o seguinte fechamento EVAL que cria um HashMap de HashSet entre grupos de segurança e as VMs que estão configuradas para usá-los.
rtrn = ''; var secGroupTable = ${cmdb_ci_endpoint_comp_security}; var secToVMHashSet = new Packages.java.util.HashMap(); // this loop worst case O(N*M) M = security groups, N = VMs for(var i=0; i<secGroupTable.size(); i++){ var securityTableId = secGroupTable.get(i).get('object_id'); var vmListStr = secGroupTable.get(i).get('instance_list'); var vmList = vmListStr.split(","); var vmSet = new Packages.java.util.HashSet(); for (var j in vmList){ vmSet.add(vmList[j]); } secToVMHashSet.put(securityTableId,vmSet); } CTX.setAttribute("securityVMCache", secToVMHashSet);Use o seguinte fechamento EVAL que retorna "verdadeiro" se a VM atual estiver usando o ID do grupo de segurança atual.
var rtrn = ''; var vm_id = ${cmdb_ci_vm_instance[].object_id}; var vmHashSet = ${securityVMCache}.get(${cmdb_ci_endpoint_comp_security[].object_id}); rtrn = vmHashSet.contains(vm_id);Use o seguinte fechamento EVAL que retorna "verdadeiro" se a VM atual estiver usando o volume de armazenamento atual.
var rtrn = ''; var vm_id = ${cmdb_ci_vm_instance[].object_id}; var vol_id = ${cmdb_ci_endpoint_iscsi[].object_id}; var vmHashSet = ${VMStorageCache}.get(vm_id); if (vmHashSet){ rtrn = vmHashSet.contains(vol_id); } else { rtrn = 'false' }Use a seguinte função EVAL para transformar a resposta da API no formato JSON completo, já que a resposta inalterada é formatada como “[<resource objects> ]”.var cloud_response = ${location_groups_response} for (var i = 0; i < cloud_response.size(); i++){ cloud_response.set(I, '{"result":[' + cloud_response.get(i) + ']}'); } CTX.setAttribute("location_groups_response", cloud_response);Analisa os grupos de locais exclusivos na tabela "location_groups_az" com base na coluna "lg_id" e cria uma nova tabela "location_groups_az_unique" que contém o resultado.var tableWithoutDuplicates= ''; tableWithoutDuplicates = DuplicateRemover.removeDuplicates(${location_groups_az},["lg_id"]); CTX.setAttribute("location_groups_az_unique", tableWithoutDuplicates);Cria uma lista de zonas de disponibilidade por grupo do local, que é armazenada em uma nova coluna na tabela location_groups_az_unique. Os registros da lista são divididos por vírgulas propositalmente, para que relações exclusivas possam ser feitas em etapas consecutivas.var current_table_id= ${location_groups_az_unique[].lg_id}; var current_table_id_string = current_table_id+ ''; var needed_v alue_id_list = ${location_groups_az[*].lg_az_id}; var compare_id_list= ${location_groups_az[*].lg_id}; var beforeReturn= ''; var separator = ','; for (var i= 0; i< compare_id_list.size(); i++) { if (current_table_id_string == compare_id_list.get(i)){ beforeReturn += separator + needed_v alue_id_list.get(i) + separator; } } rtrn = beforeReturn;- Ative os relacionamentos de IC relacionados à nuvem
- Para incluir componentes descobertos em serviços de aplicativo, habilite relacionamentos de IC usados na descoberta baseada em tag por Mapeamento de serviços. Esses relacionamentos de IC estão disponíveis a partir da versão 1.0.68 do ServiceNow Store. Para obter as etapas operacionais, consulte Configuração de descoberta baseada em marcador.
Dados coletados pelo Descoberta durante a descoberta horizontal
- Balanceador de Carga em Nuvem da IBM
- Grupos de localização do IBM Cloud
- Rede do IBM Cloud
- IBM Cloud Organizations and Spaces
- Grupos de recursos de nuvem da IBM
- Chave SSH do IBM Cloud
- Armazenamento em nuvem da IBM
- Servidor Virtual em Nuvem da IBM
- Recursos descobertos do IBM Cloud Load Balancer
Campo Descrição IC principal: cmdb_ci_cloud_load_balancer name Nome do balanceador de carga. object_id Identificador exclusivo do balanceador de carga. fqdn Endereço do balanceador de carga (nome do host). dns_name Nome do servidor de domínio do balanceador de carga. short_description Descrição do balanceador de carga que você fornece para facilitar a identificação. operational_status Status do balanceador de carga, um de: - ON-LINE
- OFF-LINE
local Local do datacenter. state Status de provisionamento do balanceador de carga. IC relacionado: cmdb_ci_lb_service name Nome criado do padrão, composto por: - nome do balanceador de carga
- tipo de protocolo
- ouvinte de tipo de recurso
object_id Identificador exclusivo do balanceador de carga. port Número da porta do ouvinte. front_end_port Número da porta de protocolo do ouvinte. listener_protocol Protocolo do ouvinte. Um dos seguintes protocolos: - TCP
- HTTP
- HTTPS
operational_status Status de provisionamento do ouvinte. IC relacionado: cmdb_ci_lb_pool name Nome criado do padrão, composto por: - nome do balanceador de carga
- tipo de protocolo
- port
- tipo de recurso "pool"
object_id Identificador exclusivo do pool de balanceadores de carga. port Porta de protocolo do back-end. pool_status Status de provisionamento do pool de balanceadores de carga. load_balancing_method Método de balanceamento de carga. Um dos seguintes algoritmos: - "Roundrobin"
- "WEighted_RR"
- "LEASTCONNECTION"
IC relacionado: cmdb_ci_lb_pool_member name Nome criado do padrão, composto por: - nome do balanceador de carga
- tipo de protocolo
- Endereço IP do membro do pool
object_id Identificador exclusivo do membro do pool de balanceadores de carga, composto por: - ID de membro
- ID do ouvinte
ip_address Endereço IP de um membro do balanceador de carga. server_id ID do membro na nuvem da IBM. load_balancer Nome do balanceador de carga relacionado. IC relacionado: cmdb_ci_lb_health_service name Nome criado do padrão, composto por: - nome do balanceador de carga
- tipo de protocolo
- tipo de recurso: verificação de integridade
- ID do recurso
object_id Identificador exclusivo da Verificação do serviço de integridade. monitor_type Tipo de verificação de integridade. Um dos seguintes: - TCP
- HTTP
- HTTPS
timeout_sec Tempo limite, em segundos, para aguardar respostas de verificação de integridade. check_interval_sec Intervalo, em segundos, para executar a verificação de integridade. - Recursos descobertos dos Grupos do local na nuvem da IBM
Campo Descrição IC principal: cmdb_ci_cloud_location_group name Um nome descritivo usado para identificar um grupo do local. object_id O ID do registro do grupo do local. Nome de locationGroupType O nome do tipo de grupo do local. short_description Uma pequena observação sobre um grupo do local a ser usado a seu critério. ID do tipo de locationGroup O ID do tipo de grupo do local. - Recursos descobertos do IBM Cloud Network
Campo Descrição IC principal: cmdb_ci_network name Número de VLAN. object_id Identificador exclusivo da rede. access_port_vlan Número de VLAN. is_external Valor do espaço de rede. O valor é: - verdadeiro se o network_space for "PUBLIC"
- falso se o network_space for "PRIVADO".
state O estado tem o valor "disponível". IC relacionado: cmdb_ci_cloud_subnet name Nome, composto por: "network_identifier/cidr" object_id Identificador exclusivo de sub-rede. subnet_mask Máscara de rede da sub-rede. gateway Endereço IP do gateway. cidr Método para alocar endereços IP e roteamento de IP: “network_identifier/cidr”. categoria Tipo de sub-rede. broadcast_address Endereço de transmissão da sub-rede. available_ip_count Número de endereços IP disponíveis na sub-rede. IC relacionado: cmdb_ci_compute_security_group name Nome do grupo de segurança. object_id Identificador exclusivo do grupo de segurança. short_description Descrição do grupo de segurança que você fornece para facilitar a identificação. IC relacionado: cmdb_ci_compute_security_group_rule name Campo com o mesmo valor do campo object_id da regra do grupo de segurança. object_id Identificador exclusivo da regra do grupo de segurança. criado Data em que o IC foi criado. direção Direção das informações. Um dos seguintes: - de entrada
- saída
Ethertype Ethertype. Um dos seguintes: - IPv4
- IPv6
port_range_min A primeira porta do intervalo ao qual a regra se aplica. port_range_max A última porta do intervalo ao qual a regra se aplica. protocolo Protocolo ao qual a regra é aplicada. remote_group_id ID do grupo de segurança para o grupo de segurança de origem/destino. Isso significa que esta regra se aplica a todos os endereços IP que foram configurados neste grupo de segurança. - Recursos descobertos do IBM Cloud Organizations and Space
Campo Descrição IC principal: cmdb_ci_cloud_org name Nome da organização na nuvem. guid Identificador exclusivo da organização. url URL exclusivo da organização. billing_enabled Método de faturamento em uso pela organização. Um dos seguintes: - Habilitado / (VERDADEIRO)
- Desativado / (FALSO)
quota_definition_url Recursos que estão disponíveis para uma organização. Spaces_url URL exclusivo do espaço atribuído à organização. operational_status Status operacional da organização. IC relacionado: cmdb_ci_cloud_space name Nome exclusivo do espaço. object_id Identificador exclusivo de espaço (guid). alllow_ssh O acesso à aplicação por SSH é permitido ou não. Booliano, um de: - VERDADEIRO
- FALSO
URL URL do espaço da descrição de metadados. - Recursos descobertos dos Grupos de recursos de nuvem da IBM
Campo Descrição IC principal: cmdb_ci_resource_group name Nome do grupo de recursos. object_id Identificador exclusivo do grupo de recursos. quota_id Valor que identifica o ID da cota associada ao grupo de recursos. - Recursos descobertos da chave SSH do IBM Cloud
Campo Descrição IC principal: cmdb_ci_cloud_key_pair name Nome para identificar uma chave SSH. object_id ID do registro de chave SSH. chave Registro de chave SSH. finger_print Sequência curta de bytes usada para autenticar ou pesquisar uma chave SSH mais longa. Este valor é gerado automaticamente ao adicionar ou modificar a chave SSH. Somente leitura. As mudanças feitas são ignoradas. criado _date Data em que a chave SSH foi adicionada. Somente leitura. As mudanças feitas são ignoradas. modify_date Data em que a chave SSH foi modificada. Somente leitura. As mudanças feitas são ignoradas. short_description Descrição SSH que você fornece para facilitar a identificação. IC relacionado: cmdb_ci_ibm_datacenter name Nome do datacenter. region Região em que o datacenter está. status_descoberta Informações de status sobre o datacenter da IBM. sys_class_name Classe do datacenter IC relacionado: cmdb_ci_cloud_service_account name Nome da conta de serviço em nuvem. account_id ID da conta para esta conta de serviço em nuvem. discovery_credentials Credenciais para esta conta de serviço em nuvem. datacenter_url URL usada para preencher datacenters lógicos (LDCs). datacenter_type Tipo de datacenter. Por exemplo, IBM Datacenter [cmdb_ci_ibm_datacenter] datacenter_discovery_status Status da última execução de Descobrir datacenters. - Recursos descobertos do IBM Cloud Storage
Campo Descrição IC principal: cmdb_ci_storage_volume name Nome de usuário usado para: - acessar um volume de armazenamento não EVault
- registrar o agente do servidor EVault com o sistema de backup do cofre
object_id Identificador exclusivo da conta de armazenamento. tamanho Capacidade da conta de armazenamento, medida em gigabytes. size_bytes Capacidade da conta de armazenamento, medida em bytes. rótulo Nome do recurso de rede de armazenamento. storage_type Descrição do tipo de armazenamento. Por exemplo, NAS. fqdn Endereço IP de um recurso de armazenamento ou nome de domínio totalmente qualificado. dispositivo Número de identificação exclusivo do dispositivo associado a um volume de armazenamento. IC relacionado: cmdb_ci_storage_vol_snapshot name Nome de um recurso de rede de armazenamento. object_id Identificador exclusivo de armazenamento. capacidade Capacidade do volume de snapshot em gigabytes. fqdn Endereço IP de um recurso de armazenamento ou nome de domínio totalmente qualificado. local Zona de disponibilidade exclusiva em que o volume de armazenamento está localizado. IC relacionado: cmdb_ci_ibm_datacenter name Nome do datacenter. region Região em que o datacenter está. status_descoberta Informações de status sobre o datacenter da IBM. sys_class_name Classe do datacenter IC relacionado: cmdb_ci_cloud_service_account name Nome da conta de serviço em nuvem. account_id ID da conta para esta conta de serviço em nuvem. discovery_credentials Credenciais para esta conta de serviço em nuvem. datacenter_url URL usada para preencher LDCs. datacenter_type Tipo de datacenter. Por exemplo, IBM Datacenter [cmdb_ci_ibm_datacenter] datacenter_discovery_status Status da última execução de Descobrir datacenters. IC relacionado: cmdb_ci_availability_zone name Nome da zona de disponibilidade (AZ). object_id Identificador exclusivo para este recurso. short_description Descrição da zona de disponibilidade fornecida. - Recursos descobertos do IBM Cloud Virtual Server
Campo Descrição IC principal: cmdb_ci_vm_instance name Nome da VM. object_id Identificador exclusivo da VM. dns_domain Nome do servidor de domínio da VM. fqdn Endereço IP da VM. short_description Descrição em uma anotação anexada à VM no console da IBM. cpus Número de núcleos de CPU atribuídos a esta VM. memória Tamanho da memória atribuído a esta VM. discos Número de discos atribuídos a esta VM. state O estado de execução da VM.
- Ativado – retornado como "Em execução" da API.
- Desativado – retornado como "Interrompido" da API.
Placement_group_id ID do grupo de posicionamento. nics Número de NICs. IC relacionado: cmdb_ci_nic name Nome, composto por: - nome do balanceador de carga
- Porta
object_id Identificador exclusivo da NIC. ip_address IP configurado na NIC. mac_address Detalhes do MAC da NIC. netmask Máscara usada para dividir o endereço IP em sub-redes e para especificar os hosts disponíveis na rede. status Estado da NIC. IC relacionado: cmdb_ci_endpoint_vnic name Nome do endpoint do VNIC. object_id Identificador exclusivo do endpoint do VNIC. Host Identificador de host. IC relacionado: cmdb_ci_storage_volume name Nome de usuário usado para: - acessar um volume de armazenamento não EVault
- registrar o agente do servidor EVault com o sistema de backup do cofre
object_id Identificador exclusivo da conta de armazenamento. tamanho Capacidade da conta de armazenamento, medida em gigabytes. size_bytes Capacidade da conta de armazenamento, medida em bytes. rótulo Nome do recurso de rede de armazenamento. storage_type Descrição do tipo de armazenamento. Por exemplo, NAS. fqdn Endereço IP de um recurso de armazenamento ou nome de domínio totalmente qualificado. dispositivo Número de identificação exclusivo do convidado associado a um volume de armazenamento. IC relacionado: cmdb_ci_endpoint_nfs name Nome do endpoint do NFS. Host Identificador de host. protocolo Protocolo que foi aplicado. tipo Tipo de endpoint do NFS. criado Data em que o endpoint do NFS foi criado. atualizado Data em que o endpoint do NFS foi atualizado. discovery_source Origem da descoberta. Por exemplo, ServiceWatch host_name Nome do host do endpoint do NFS IC relacionado: cmdb_ci_endpoint_iscsi Host Identificador de host para o endpoint ISCSI. port Porta para determinar como o GCP está em contato com as VMs. protocolo Protocolo que foi aplicado. tipo Tipo de endpoint ISCSI criado Data em que o endpoint ISCSI foi criado. atualizado Data em que o endpoint ISCSI foi atualizado. discovery_source Origem da descoberta. Por exemplo, ImportSet host_name Nome do host do endpoint ISCSI IC relacionado: cmdb_ci_endpoint_block name Nome do endpoint do bloco. object_id Identificador exclusivo do endpoint do bloco. Host Identificador de host. IC relacionado: cmdb_ci_os_template name Nome da imagem. Por exemplo, "CentOS 7.0-64 Minimal for VSI". object_id Identificador exclusivo da imagem. guest_os SO usado pela imagem. Por exemplo, Linux. root_device_type Tipo de dispositivo usado pela raiz. image_source Origem da imagem. image_type Tipo de imagem. infuse_key Chave usada para infundir a imagem. update_host_name Atualize o nome do host da imagem. credenciais Credenciais da imagem. versão Versão do SO. Por exemplo, "7.0-64 Mínimo para VSI". IC relacionado: cmdb_ci_cloud_key_pair name Nome para identificar uma chave (rótulo de chave). object_id ID do registro de chave. chave Registro de chave. finger_print Sequência curta de bytes usada para autenticar ou pesquisar uma chave. Este valor é gerado automaticamente ao adicionar ou modificar a chave. Somente leitura. As mudanças feitas são ignoradas. criado _date Data em que a chave foi adicionada. Somente leitura. As mudanças feitas são ignoradas. modify_date Data em que a chave foi modificada. Somente leitura. As mudanças feitas são ignoradas. short_description Descrição que você fornece para facilitar a identificação. IC relacionado: cmdb_ci_compute_security_group name Nome do grupo de segurança. object_id Identificador exclusivo do grupo de segurança. short_description Descrição do grupo de segurança que você fornece para facilitar a identificação. IC relacionado: cmdb_ci_endpoint_comp_security Host Identificador de host do endpoint de segurança de computação. port Identificador exclusivo do endpoint de segurança de computação. protocolo Protocolo que foi aplicado. tipo Tipo de endpoint de segurança de computação. criado Data em que o endpoint de segurança de computação foi adicionado. Somente leitura. As mudanças feitas são ignoradas. atualizado Data em que o endpoint de segurança de computação foi modificado. Somente leitura. As mudanças feitas são ignoradas. discovery_source Origem da descoberta. Por exemplo, Entrada manual. host_name Nome do host do endpoint de segurança de computação. IC relacionado: cmdb_ci_ibm_datacenter name Nome do datacenter. region Região em que o datacenter está. status_descoberta Informações de status sobre o datacenter da IBM. sys_class_name Classe do datacenter IC relacionado: cmdb_ci_availability_zone name Nome da zona de disponibilidade (AZ). object_id Identificador exclusivo para este recurso. short_description Descrição da zona de disponibilidade fornecida. IC relacionado: cmdb_ci_cloud_service_account name Nome da conta de serviço em nuvem. account_id ID da conta para esta conta de serviço em nuvem. discovery_credentials Credenciais para esta conta de serviço em nuvem. datacenter_url URL usada para preencher LDCs. datacenter_type Tipo de datacenter. Por exemplo, IBM Datacenter [cmdb_ci_ibm_datacenter] datacenter_discovery_status Status da última execução de Descobrir datacenters. - IBM Cloud Virtual Server - Exibição de itens relacionados
Relacionamentos entre ICs
Esses relacionamentos são criados para oferecer suporte à descoberta do IBM Cloud Platform.
- Relacionamentos para recursos descobertos do IBM Cloud Load Balancer
IC Relacionamento IC IC relacionado: cmdb_ci_ibm_datacenter cmdb_ci_ibm_datacenter Hosted on::Hosts cmdb_ci_cloud_service_account cmdb_ci_ibm_datacenter Contains::Contained by cmdb_ci_availability_zone IC relacionado: cmdb_ci_cloud_load_balancer cmdb_ci_cloud_load_balancer Hosted on::Hosts cmdb_ci_ibm_datacenter cmdb_ci_cloud_load_balancer Contains::Contained by cmdb_ci_lb_health_service IC relacionado: cmdb_ci_availability_zone cmdb_ci_availability_zone Hosted on::Hosts cmdb_ci_cloud_load_balancer cmdb_ci_availability_zone Contains::Contained by cmdb_ci_lb_service IC relacionado: cmdb_ci_lb_service cmdb_ci_lb_service Hosted on::Hosts cmdb_ci_cloud_load_balancer cmdb_ci_lb_service Contains::Contained by cmdb_ci_lb_pool IC relacionado: cmdb_ci_lb_pool cmdb_ci_lb_pool Hosted on::Hosts cmdb_ci_cloud_load_balancer cmdb_ci_lb_pool Owns::Owned by cmdb_ci_lb_pool_member IC relacionado: cmdb_ci_lb_health_service cmdb_ci_lb_health_service Contains::Contained by cmdb_ci_cloud_load_balancer - Relacionamentos para recursos descobertos de Grupos do local da nuvem da IBM
IC Relacionamento IC IC relacionado: cmdb_ci_ibm_datacenter cmdb_ci_ibm_datacenter Hosted on::Hosts cmdb_ci_cloud_service_account cmdb_ci_ibm_datacenter Contains::Contained by cmdb_ci_availability_zone IC relacionado: cmdb_ci_cloud_location_group cmdb_ci_cloud_location_group Hosted on::Hosts cmdb_ci_cloud_service_account cmdb_ci_cloud_location_group Contains::Contained by cmdb_ci_availability_zone - Relacionamentos para recursos descobertos do IBM Cloud Network
IC Relacionamento IC IC relacionado: cmdb_ci_ibm_datacenter cmdb_ci_ibm_datacenter Hosted on::Hosts cmdb_ci_cloud_service_account cmdb_ci_ibm_datacenter Contains::Contained by cmdb_ci_availability_zone IC relacionado: cmdb_ci_network cmdb_ci_network Hosted on::Hosts cmdb_ci_ibm_datacenter cmdb_ci_network Contains::Contained by cmdb_ci_cloud_subnet IC relacionado: cmdb_ci_compute_security_group cmdb_ci_compute_security_group Hosted on::Hosts cmdb_ci_cloud_service_account cmdb_ci_compute_security_group Contains::Contained by cmdb_ci_compute_security_group_rule - Relacionamentos para recursos descobertos de Grupos de Recursos de Nuvem da IBM
IC Relacionamento IC IC relacionado: cmdb_ci_resource_group cmdb_ci_resource_group Hosted on::Hosts cmdb_ci_cloud_service_account - Relacionamentos para recursos descobertos de chave SSH do IBM Cloud
IC Relacionamento IC IC relacionado: cmdb_ci_ibm_datacenter cmdb_ci_ibm_datacenter Hosted on::Hosts cmdb_ci_cloud_service_account cmdb_ci_ibm_datacenter Contains::Contained by cmdb_ci_availability_zone IC relacionado: cmdb_ci_cloud_key_pair cmdb_ci_cloud_key_pair Hosted on::Hosts cmdb_ci_cloud_service_account - Relacionamentos para recursos descobertos do IBM Cloud Storage
IC Relacionamento IC IC relacionado: cmdb_ci_ibm_datacenter cmdb_ci_ibm_datacenter Hosted on::Hosts cmdb_ci_cloud_service_account cmdb_ci_ibm_datacenter Contains::Contained by cmdb_ci_availability_zone IC relacionado: cmdb_ci_storage_volume cmdb_ci_storage_volume Hosted on::Hosts cmdb_ci_ibm_datacenter cmdb_ci_storage_volume Provisionado::Provisionado de cmdb_ci_storage_vol_snapshot IC relacionado: cmdb_ci_storage_vol_snapshot cmdb_ci_storage_vol_snapshot Hosted on::Hosts cmdb_ci_ibm_datacenter cmdb_ci_storage_vol_snapshot Localizado em Zone::Zone contém cmdb_ci_availability_zone IC relacionado: cmdb_ci_availability_zone cmdb_ci_availability_zone Contains::Contained by cmdb_ci_storage_volume - Relacionamentos para recursos descobertos do IBM Cloud Virtual Server
IC Relacionamento IC IC relacionado: cmdb_ci_ibm_datacenter cmdb_ci_ibm_datacenter Hosted on::Hosts cmdb_ci_cloud_service_account cmdb_ci_ibm_datacenter Contains::Contained by cmdb_ci_availability_zone cmdb_ci_ibm_datacenter Hosted on::Hosts cmdb_ci_vm_instance IC relacionado: cmdb_ci_vm_instance cmdb_ci_vm_instance Hosted on::Hosts cmdb_ci_ibm_datacenter cmdb_ci_vm_instance Localizado em:Casas cmdb_ci_availability_zone cmdb_ci_vm_instance Usos:Usado por cmdb_ci_cloud_key_pair cmdb_ci_vm_instance Contém:contido por cmdb_ci_nic cmdb_ci_vm_instance endpoint cmdb_ci_nic IC relacionado: cmdb_ci_availability_zone cmdb_ci_availability_zone Hosted on::Hosts cmdb_ci_vm_instance IC relacionado: cmdb_ci_nic cmdb_ci_nic Hosted on::Hosts cmdb_ci_vm_instance IC relacionado: cmdb_ci_os_template cmdb_ci_os_template Hosted on::Hosts cmdb_ci_cloud_service_account cmdb_ci_os_template Provisionado::Provisionado por cmdb_ci_vm_instance IC relacionado: cmdb_ci_compute_security_group cmdb_ci_compute_security_group Hosted on::Hosts cmdb_ci_cloud_service_account cmdb_ci_compute_security_group Implementar::Implementado de cmdb_ci_vm_instance IC relacionado: cmdb_ci_storage_volume cmdb_ci_storage_volume Hosted on::Hosts cmdb_ci_ibm_datacenter cmdb_ci_storage_volume Implementar::Implementado de cmdb_ci_vm_instance IC relacionado: cmdb_ci_cloud_key_pair cmdb_ci_cloud_key_pair Hospedado em:Hosts cmdb_ci_cloud_service_account - Relacionamentos descobertos para a instância de máquina virtual (VM)
IC Relacionamento IC Servidores [cmdb_ci_server] Virtualized by:: Virtualizes Instância de máquina virtual [cmdb_ci_instance]
Dados coletados pelo Mapeamento de serviços durante a descoberta baseada em marcadores
| IC | Relacionamento | IC |
|---|---|---|
| Item de configuração [cmdb_ci] | Hospedado em: hosts | Datacenter lógico [cmdb_ci_logical_datacenter] |
| Datacenter lógico [cmdb_ci_logical_datacenter] | Hospedado em: hosts | Conta de serviço em nuvem [cmdb_ci_cloud_service_account] |
Solução de problemas
| Sintoma | Causa | Solução |
|---|---|---|
| A Descoberta falha. A mensagem de descoberta contém as informações sobre um erro causado pelo tempo limite de REST. | Há muitos ICs enviando a resposta da chamada REST na implantação. O MID Server não pode processar a resposta da chamada REST sem exceder o limite de tempo controlado pelo parâmetro mid.sa.cloud.request_timeout. | Por padrão, o parâmetro mid.sa.cloud.request_timeout é definido como 30000 milissegundos. Aumente o valor deste parâmetro no relevante MID Server e execute a descoberta novamente. Nota: Se a lista relacionada Parâmetros de configuração para o MID Server relevante não mostrar este parâmetro, talvez seja necessário adicioná-lo. |
| O Designer de padrões falha durante uma sessão de depuração. A mensagem do Designer de padrões contém informações sobre um erro causado por um tempo limite. | O Designer de padrões falha devido a um tempo limite durante a depuração de padrão (e não durante a descoberta). | Por padrão, o parâmetro sa.debugger.max_timeout é definido como 240 segundos. Aumente o valor desse parâmetro no MID Server relevante. |