RESTful nativa (30
minutos)
Introdução ao Developer Center e às APIs RESTful
O VMware Cloud on AWS inclui uma API RESTful abrangente que pode executar várias funções, incluindo adição, modificação e exclusão de SDDCs. Neste módulo, você
aprenderá sobre as APIs RESTful e verá como aproveitá-las para automatizar operações comuns.
A Rainpole Systems adotou recentemente uma metodologia DevOps para
desenvolvimento de aplicativos e gostaria de criar e excluir automaticamente SDDCs por meio do pipeline de desenvolvimento da empresa. Mike, que lidera uma das equipes de DevOps, foi encarregado de automatizar a implantação desses ambientes. É
fundamental que os ambientes sejam excluídos quando um pipeline for concluído para minimizar os custos.
O VMware Cloud on AWS é uma solução ideal para este caso de uso, e Mike inicia o processo de integração do VMware Cloud on AWS por meio da API.
Forneceremos uma visão geral da interface do usuário do VMware Cloud on AWS para conhecermos as opções disponíveis.
Antes de começar este módulo
Verifique suas credenciais de login seguindo as instruções em Verificação do aluno. É muito importante que o endereço de e-mail usado para fazer login no laboratório prático corresponda às suas credenciais do My VMware.
Antes de continuar, verifique também se você fez login no VMware Cloud on AWS usando o navegador Chrome.
O que é uma API RESTful?
REST significa REpresentational State Transfer (Transferência de estado
representacional). Isso se refere essencialmente a um estilo de arquitetura da web que tem muitas características subjacentes e rege o comportamento de clientes e
servidores. A REST é definida por seis restrições: cliente-servidor, sem estado, em cache, sistema em camadas, interface uniforme e código sob demanda (opcional).
Esse tipo de API funciona praticamente como qualquer site. Você envia sua solicitação para um servidor via HTTP e recebe um site em resposta.
Uma API REST define um conjunto de funções que os desenvolvedores podem usar para enviar solicitações e receber respostas via protocolo HTTP, como GET, DELETE e POST.
Se uma API seguir as "regras" de REST, ela poderá ser chamada de API RESTful. Com essa interface, os recursos podem ser chamados de forma singular.
O que é o Developer Center?
O Developer Center é uma excelente área de recursos que os desenvolvedores podem acessar para começar a trabalhar rapidamente com o VMware Cloud on AWS. Os
desenvolvedores podem obter acesso a essas informações usando a guia "Developer Center" no console do VMware Cloud on AWS.
Para começar, vamos acessar o ambiente do VMware Cloud on AWS.
Inicie o Google Chrome e, se ainda não fez, faça login no VMware Cloud on AWS com suas credenciais.
1. Na guia VMware Cloud on AWS, clique em Developer Center, exibido no menu na parte superior da tela
Amostras de código
No Developer Center, há muitos recursos excelentes para você explorar.
Por exemplo, verificaremos uma amostra de código que foi enviada por um dos nossos desenvolvedores de API. Se você percorrer essa tela, verá que há exemplos de código para Postman (um ambiente de desenvolvimento da API REST), Python, PowerCLI e muitos outros. Qualquer pessoa interessada pode contribuir com amostras de código para a comunidade. Para isso, basta acessar o site http://code.vmware.com ou clicar no link "VMware{code} Sample Exchange".
1. Clique em Code Samplesno menu
2. Role para baixo até exibir a caixaPowerCLI - VMC Example Scripts 3. Clique em Download
4. Clique em Save na caixa pop-up para salvar o arquivo
PowerCLI – Exemplo de script do VMC
Após o download do script
1. Clique naseta do menu suspenso no canto inferior esquerdo 2. Clique em Show in Folder
PowerCLI – Exemplo de script do VMC
1. Navegue até \PowerCLI-Example-Scripts-master.zip\PowerCLI-Example-Scripts-master\Scripts\VMware_Cloud_on_AWS
2. Clique com o botão direito em VMC Example Script.ps1e, depois, em Open
Isso abrirá um documento de texto no qual você poderá ver os comandos do PowerShell que podem ser usados com o SDDC.
3. Feche o documento de texto e as janelas do explorador de arquivos
Kits de desenvolvimento de software (SDKs)
Há uma ampla variedade de Kits de desenvolvimento de software (SDKs, pela sigla em inglês) disponíveis para interagir com as APIs do VMware Cloud on AWS e com os
produtos de SDDC implantados. A seção de SDK fornece acesso fácil a cada um desses SDKs de código aberto disponíveis no GitHub. Para cada SDK, também há links para documentação, amostras e até mesmo postagem do blog "Getting Started".
1. Clique na guia SDKs
Analise hoje mesmo os SDKs disponíveis; talvez você já encontre o que lhe interessa.
Downloads
1. Clique na guia Downloads
Há recursos de linha de comando como Datacenter CLI (DCLI) ePowerCLI.
API Explorer
A seção API Explorer fornece fácil acesso para interagir diretamente com as APIs RESTful disponíveis a partir da API do Cloud Services e da API do VMware Cloud on AWS.
Essas APIs são apresentadas como um navegador de API interativo e contam com algumas integrações úteis para facilitar a utilização.
Como o API Explorer fica dentro do console da nuvem, é possível usar o token de atualização existente para realizar a autenticação. Também podemos preencher
automaticamente determinados campos, como Organization ID, para ajudar a melhorar a experiência de aprendizado e a utilização dessas APIs.
É muito fácil conhecer a API e visualizar as respostas de dentro do API Explorer por meio do recurso de execução das APIs e das respostas em tempo real.
Vamos agora executar alguns comandos simples da API REST integrados ao Developer Center
1. Clique na guia API Explorer
2. Selecione seu SDDC (por exemplo, HOL-SDDC-01)
3. Clique naseta do menu suspenso ao lado de Organizations 4. Clique naseta do menu suspenso ao lado de first "GET" API 5. Clique em Execute
API Explorer – Resposta GET para organizações
Vejamos a resposta.
1. Clique nonome alfanumérico da organização para expandir os detalhes da resposta
2. O ID da organização. OBSERVAÇÃO: copie o número do ID, sem as aspas, para possível uso na próxima etapa.
3. O nome da organização 4. A versãoda organização
API Explorer – GET do SDDC
Nesta etapa, obteremos algumas informações sobre a organização selecionada na etapa anterior.
1. Clique naseta do menu suspenso porSDDCs 2. Clique naprimeira seta GET para expandir
3. O ID da organização já deve estar preenchido. Esse é outro recurso excelente que os desenvolvedores criaram com base no feedback dos clientes. OBSERVAÇÃO: se o ID da organização não foi preenchido automaticamente, você poderá colá-lo.
4. Clique em Execute
API Explorer – Resposta GET para SDDC
Vejamos o corpo da resposta
1. Clique em Sddc (HOL-SDDC-01) para expandir o corpo de resposta 2. A data de criação do SDDC
3. O ID do SDDC 4. O estado do SDDC
Implantação de um SDDC com APIs RESTful nativas
A implantação de um data center definido por software (SDDC) é a primeira etapa para utilizar o serviço VMware Cloud on AWS.
Neste módulo, discutiremos como criar programaticamente um SDDC usando APIs nativas.
Requisitos para criar um SDDC
Ao implantar o SDDC pela primeira vez, um dos principais requisitos é a vinculação de uma conta da AWS ao serviço do VMware Cloud on AWS. Com isso, você pode fazer muitas coisas. No entanto, o principal motivo dessa vinculação é a conexão do seu SDDC com uma VPC da AWS existente, o que é obrigatório em um ambiente real.
Durante o laboratório, não é necessário seguir esta etapa, mas não deixe de realizá-la em uma implantação real.
É importante notar que o parâmetro Management Subnet é opcional, mas para um ambiente de produção é importante defini-lo corretamente, já que ele não pode ser alterado posteriormente. Se quiser modificá-lo, você precisará destruir o SDDC.
Estas são as regras:
• Especifique um intervalo de sub-redes privadas (RFC 1918) a serem usadas pelo vCenter Server, pelo NSX Manager e pelos hosts ESXi.
• Escolha um intervalo que não entrará em conflito com outras redes que você conectará a este SDDC.
• Tamanhos máximos de CIDR: /23 para até 27 hosts, /20 para até 251 hosts, /16 para até 4.091 hosts.
• CIDRs reservados: 10.0.0.0/15 e 172.31.0.0/16.
Para a finalidade deste laboratório, não é necessário vincular nenhuma conta da AWS nem definir uma sub-rede de gerenciamento, junto com a VPC e as sub-redes e os diversos parâmetros opcionais (por exemplo, Stretched Cluster), pois usaremos os padrões para a maioria deles e um "provedor de nuvem" especial chamado
ZEROCLOUD.
*Caso você deseje executar estas etapas, elas são descritas no
API Explorer
O API Explorer é a maneira mais rápida e fácil de interagir com a API RESTful nativa. Ele não exige conhecimentos mínimos de códigos. Há uma interface do usuário intuitiva que você pode usar no navegador.
O API Explorer está localizado na guia Developer Center:
1. Selecione a guia Developer Centerno menu superior 2. Clique na sub-guia API Explorer
Navegação pela API para aprovisionamento de um SDDC
A navegação pelas APIs usando o API Explorer é um recurso que está integrado à interface do usuário e foi projetado para ser intuitivo e ágil na validação de execuções de API.
Nesta seção, navegaremos pela API específica para criação de SDDC. Ela é uma
chamada POST e envia um conjunto de parâmetros de configuração que precisam ser definidos na chamada da API.
Agora que estamos no API Explorer, faremos o seguinte:
1. Navegaremos até a seção SDDCse clicaremos na seta do menu suspenso para expandi-lo
2. Expandiremos a seção da parte superior a seguir, intitulada POST /orgs/{org}/sddcs
3. Veremos o parâmetro org com oOrg Id preenchido e um valor sddcConfigem branco
4. Podemos preencher esse valor com um corpo JSON de exemplo, contendo valores vazios. Para isso, basta clicar no link AwsSddcConfig da coluna Data Type.
Configurar e executar parâmetros JSON
A área de textosddcConfig é onde definiremos os parâmetros de configuração que serão enviados durante a chamada da API POST.
A maioria dos parâmetros sddcConfig tem padrões e é opcional. Nós configuraremos apenas os parâmetros obrigatórios para executar essa tarefa.
1. Clique em AwsSddcConfig: a área sddcConfig será preenchida com um template vazio dos parâmetros
2. Edite a área de texto sddcConfigde modo que ela fique EXATAMENTE com o JSON abaixo (evite qualquer linha em branco no início e no final e remova a última vírgula após "region");
3. Clique em Execute
Observação: para simplificar, omitimos a maioria dos parâmetros, especialmente o account_link_sddc_config, já que estamos usando o provedor ZEROCLOUD.
Preencha SOMENTE as informações fornecidas no exemplo abaixo no valor sddcConfig.
{
Confirmar parâmetros JSON
1. Clique emConfirm
DICAS:
Em um ambiente real, você pode recuperar:
• o parâmetro connected_account_id da API com o seguinte:
Método: GET /orgs/{org}/account-link/connected-accounts Propriedade: ID
• customer_subnet_ids: (ID da sub-rede desejada para o tráfego da VPC) Método: GET /orgs/{org}/account-link/compatible-subnets
Propriedade: subnet_id
Validação de execução da API
Se o POST for executado com êxito, você precisará obter um ID da tarefa na resposta, semelhante à imagem.
Depois de ver a resposta com o ID de tarefa, você poderá acessar o menu principal do SDDC e acompanhar o andamento.
Ver progresso de criação do SDDC
1. Clique em SDDCs no menu superior
2. Uma barra de progresso deve ser exibida, configurando o SDDC recém-criado Parabéns!
Depois de alguns minutos, seu novo cartão SDDC com os parâmetros será exibido na página principal de SDDCs.
Conclusão
Neste módulo, abordamos como navegar pela API REST e acessar todos os recursos necessários para desenvolvedores usando o Developer Center.
Também implementamos um SDDC completo no VMware Cloud on AWS utilizando a API RESTful nativa e preparando um arquivo simples de configuração JSON.
Também há disponível uma versão do PowerShell com as mesmas chamadas de API nas amostras de código.
# Author: Kyle Ruddy
# Product: VMware Cloud on AWS
# Description: VMware Cloud on AWS Single Host Deployment Script using PowerCLI
# Requirements:
# - PowerShell 3.x or newer
# - PowerCLI 6.5.4 or newer
# Set details for SDDC
$oauthToken = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx"
$sddcName = "PowerCLI-1Node-SDDC"
$hostCount = "1"
$awsRegion = "US_WEST_2"
# Deployment code
---# Connect to VMware Cloud Service
Connect-Vmc -RefreshToken $oauthToken | Out-Null
# Get ORG ID
$orgSvc = Get-VmcService -Name com.vmware.vmc.orgs
$org = $orgSvc.List()
Write-Host "Org:"$org.display_name" ID:"$org.id
# Get Linked Account ID
$connAcctSvc = Get-VmcService -Name com.vmware.vmc.orgs.account_link.connected_accounts
$connAcctId = $connAcctSvc.get($org.id) | Select-Object -ExpandProperty id Write-Host "Account ID: $connAcctId"
# Get Subnet ID
$compSubnetSvc = Get-VmcService -Name
com.vmware.vmc.orgs.account_link.compatible_subnets
$vpcMap = $compSubnetSvc.Get($org.id, $connAcctId, $region) | Select-Object -ExpandProperty vpc_map
$compSubnets = $vpcMap | Select-Object -ExpandProperty Values | Select-Object -ExpandProperty subnets
$compSubnet = $compSubnets | where {$_.name -ne $null} | Select-Object -first 1 Write-Host "Subnet CIDR"$compSubnet.subnet_cidr_block"ID:"$compSubnet.subnet_id
if ($org.properties.values.sddcTypes) {$sddcCreateSpec.sddc_type = "1NODE"}
$sddcCreateSpec.Provider = "AWS"
Visão geral do VMware Cloud on AWS (2m13s)
Veja como a líder em nuvem privada e a líder em nuvem pública reuniram seus avançados recursos para fornecer uma solução realmente atraente e diferenciada.
Integração com o VMware Cloud on AWS (6m35s)
Aprofunde-se um pouco mais para ver como a pilha de SDDC da VMware é executada em AWS com a finalidade de fornecer um modelo operacional, híbrido e consistente que oferece capacidade e serviços sob demanda. Inclui uma análise sobre as opções de configuração do sistema de rede e sobre o poder do DRS elástico (eDRS) e da correção automática.
Você concluiu o Módulo 2
Parabéns pela conclusão do Módulo 2.
Lista de módulos do laboratório:
• (30 minutos) (Iniciante) Com a interface do usuário em HTML5, implante e configure os SDDCs no VMware Cloud on AWS.
• (30 minutos) (Iniciante) Neste módulo, apresentaremos o API Explorer e utilizaremos a API REST nativa para implantar e configurar um SDDC.
• (30 minutos) (Iniciante) Usando a ISim, você verá um passo a passo sobre o vCenter e saberá como usá-lo no VMware Cloud on AWS.
• (30 minutos) (Iniciantes) Usando a ISim, você verá o passo a passo do processo de ativação do VMware Site Recovery.
Responsáveis pelo laboratório:
• Andrea Siviero, arquiteto principal, global
• Jennifer Schmidt, arquiteta consultora, EUA
Como encerrar o laboratório
Para encerrar o laboratório, clique no botão END.