Consumo da nuvem Apache CloudStack
Este documento apresenta o conceito de ambientes de computação em nu-
vem, no contexto de nuvem privada, e uma introdução à plataforma de or-
questração de nuvem Apache CloudStack, com foco no processo de consumo
da mesma.
Data de atualização: 7 de outubro de 2024
Revision: 774b16a47611371568767a362e7f712a9012450f
Conteúdo
1 Introdução 26
1.1 Plataformas de nuvem privada . . . . . . . . . . . . . . . . . . . . . 27
1.1.1 Funcionalidades básicas . . . . . . . . . . . . . . . . . . . . . 27
1.2 História do Apache CloudStack . . . . . . . . . . . . . . . . . . . . . 29
2 Funcionalidades do Apache CloudStack 30
2.1 Dashboard inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.2 Gestão de acesso à nuvem . . . . . . . . . . . . . . . . . . . . . . . 30
2.2.1 Account . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.2.1.1 Adição de account . . . . . . . . . . . . . . . . . . . 33
2.2.1.2 Visualização de detalhes de account . . . . . . . . 34
2.2.1.3 Deleção de account . . . . . . . . . . . . . . . . . . 35
2.2.1.4 Configuração de acesso de uma account . . . . . . 35
2.2.1.5 Desabilitação de account . . . . . . . . . . . . . . . 37
2.2.1.6 Bloqueio de account . . . . . . . . . . . . . . . . . . 38
2.2.1.7 Restrição de acesso à API por IP . . . . . . . . . . . 39
2.2.2 Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.2.2.1 Adição de role . . . . . . . . . . . . . . . . . . . . . 40
2.2.2.2 Visualização de detalhes de role . . . . . . . . . . . 41
2.2.2.3 Customização de uma role . . . . . . . . . . . . . . 42
2.2.2.4 Remoção de role . . . . . . . . . . . . . . . . . . . . 42
2.2.3 Domains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.2.3.1 Adição de domain . . . . . . . . . . . . . . . . . . . 45
2.2.3.2 Configuração de domain . . . . . . . . . . . . . . . 46
2.2.3.3 Definição de acessos do domain . . . . . . . . . . . 47
2.2.3.4 Reestruturação da árvore de domínios . . . . . . . 48
2.2.4 Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.2.4.1 Adição de user . . . . . . . . . . . . . . . . . . . . . 49
2
2.2.4.2 Edição de user . . . . . . . . . . . . . . . . . . . . . 51
2.2.4.3 Deleção de user . . . . . . . . . . . . . . . . . . . . 53
2.2.4.4 Desabilitação/habilitação de user . . . . . . . . . . 53
2.2.4.5 Políticas de senha . . . . . . . . . . . . . . . . . . . 54
2.2.4.6 Desabilitação de user por erro de senha . . . . . . 56
2.2.4.7 Gerência de chaves de API dos users . . . . . . . . 56
2.2.4.8 Uso das chaves de API no CloudMonkey . . . . . . 58
2.2.4.9 Autenticação de dois fatores . . . . . . . . . . . . . 58
2.2.4.10 Timezone . . . . . . . . . . . . . . . . . . . . . . . . . 63
2.2.5 Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.2.5.1 Adição de project . . . . . . . . . . . . . . . . . . . . 64
2.2.5.2 Adição de accounts e users ao project . . . . . . . . 69
2.2.5.3 Edição de project . . . . . . . . . . . . . . . . . . . . 72
2.2.5.4 Suspensão de project . . . . . . . . . . . . . . . . . 73
2.2.5.5 Deleção de project . . . . . . . . . . . . . . . . . . . 74
2.2.6 Observações e considerações . . . . . . . . . . . . . . . . . 75
2.3 Gerência de VMs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
2.3.1 Adição de VM . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
2.3.1.1 Adição de VM como root admin . . . . . . . . . . . 77
2.3.1.2 Adição de VM como admin . . . . . . . . . . . . . . 79
2.3.1.3 Adição de VM como user . . . . . . . . . . . . . . . 81
2.3.1.4 Criação de VM com inicialização UEFI . . . . . . . . 82
2.3.2 Remoção de VM . . . . . . . . . . . . . . . . . . . . . . . . . . 86
2.3.3 Parada e início de VM . . . . . . . . . . . . . . . . . . . . . . 87
2.3.4 Reinício de VM . . . . . . . . . . . . . . . . . . . . . . . . . . 87
2.3.5 Acesso à VM via interface web . . . . . . . . . . . . . . . . . 88
2.3.6 Aumento de recursos computacionais da VM . . . . . . . . 89
2.3.7 Atribuição de VM a outra account . . . . . . . . . . . . . . . 92
2.3.8 Adição de user-data na VM . . . . . . . . . . . . . . . . . . . 94
3
2.3.9 Configurações da VM . . . . . . . . . . . . . . . . . . . . . . 96
2.3.9.1 Configurações gerais . . . . . . . . . . . . . . . . . 97
2.3.9.2 Configurações para VM com compute offering per-
sonalizada . . . . . . . . . . . . . . . . . . . . . . . . 97
2.3.9.3 Configurações diversas para uso interno . . . . . 98
2.3.9.4 Configurações para importação de VM com NIC,
disco e parâmetros personalizados para compute
offering personalizada . . . . . . . . . . . . . . . . . 98
2.3.9.5 Adicionar configurações da VM via API . . . . . . . 98
2.4 Gerência de volumes . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
2.4.1 Operações em data e root disks . . . . . . . . . . . . . . . . . 100
2.4.1.1 Vizualização de discos e volumes . . . . . . . . . . 101
2.4.1.2 Criação de volume . . . . . . . . . . . . . . . . . . . 101
2.4.1.3 Upload de volume local . . . . . . . . . . . . . . . . 102
2.4.1.4 Upload de volume local usando cURL . . . . . . . . 103
2.4.1.5 Upload de volume on-line via URL . . . . . . . . . . 105
2.4.1.6 Adição de volume a uma VM . . . . . . . . . . . . . 106
2.4.1.7 Remoção de volume de uma VM . . . . . . . . . . 107
2.4.1.8 Remoção e adição de volume ROOT . . . . . . . . 107
2.4.1.9 Redimensionamento de volume data disk . . . . . 108
2.4.1.10 Download de volume . . . . . . . . . . . . . . . . . 109
2.4.1.11 Snapshots recorrentes . . . . . . . . . . . . . . . . . 110
2.4.1.12 Deleção de volume . . . . . . . . . . . . . . . . . . 111
2.5 Redes guest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
2.5.1 Operações com redes guest . . . . . . . . . . . . . . . . . . . 112
2.5.1.1 Adicionar rede guest . . . . . . . . . . . . . . . . . . 112
2.5.1.2 Tipos de redes . . . . . . . . . . . . . . . . . . . . . 112
2.5.1.3 Acesso aos detalhes de uma rede guest . . . . . . 118
2.5.1.4 Exclusão de rede . . . . . . . . . . . . . . . . . . . . 118
4
2.5.1.5 Edição de rede . . . . . . . . . . . . . . . . . . . . . 119
2.5.1.6 Reinicialização de rede . . . . . . . . . . . . . . . . 119
2.5.1.7 Egress rules . . . . . . . . . . . . . . . . . . . . . . . 119
2.5.2 Network permissions . . . . . . . . . . . . . . . . . . . . . . . 120
2.6 IPs públicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
2.6.1 Operações com IPS públicos . . . . . . . . . . . . . . . . . . 124
2.6.1.1 Configuração de firewall . . . . . . . . . . . . . . . 124
2.6.1.2 Habilitação de static NAT . . . . . . . . . . . . . . . 125
2.6.1.3 Habilitação de port forwarding . . . . . . . . . . . . 127
2.6.1.4 Habilitação de load balancing . . . . . . . . . . . . 128
2.6.2 Aquisição de IP público . . . . . . . . . . . . . . . . . . . . . 130
2.7 Virtual Private Cloud (VPC) . . . . . . . . . . . . . . . . . . . . . . . . 132
2.7.1 Operações com a VPC . . . . . . . . . . . . . . . . . . . . . . 133
2.7.1.1 Adição de VPC . . . . . . . . . . . . . . . . . . . . . 133
2.7.1.2 Reinicialização de VPC . . . . . . . . . . . . . . . . . 135
2.7.1.3 Remoção de VPC . . . . . . . . . . . . . . . . . . . . 136
2.7.1.4 Aquisição de IP público para uma VPC . . . . . . . 136
2.7.2 Tiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
2.7.2.1 Adição de tiers à VPC . . . . . . . . . . . . . . . . . 138
2.7.2.2 Remoção de tiers da VPC: . . . . . . . . . . . . . . . 140
2.7.3 Network ACL . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2.7.4 Domain VPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
2.7.4.1 Alocação de IPs públicos em domain VPCs . . . . . 145
2.8 Virtual Private Network (VPN) . . . . . . . . . . . . . . . . . . . . . . . 146
2.8.1 Tipos de VPN . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
2.8.2 Operações com VPN . . . . . . . . . . . . . . . . . . . . . . . 147
2.8.2.1 Criação de VPN . . . . . . . . . . . . . . . . . . . . . 147
2.8.2.2 Desabilitação de VPN para a VPC . . . . . . . . . . 149
2.8.2.3 Gerência de usuários . . . . . . . . . . . . . . . . . 150
5
2.8.2.4 Adição de usuário . . . . . . . . . . . . . . . . . . . 150
2.8.2.5 Definição da quantidade máxima de usuário da
VPN por conta . . . . . . . . . . . . . . . . . . . . . 151
2.8.2.6 Exclusão de usuário . . . . . . . . . . . . . . . . . . 151
2.8.2.7 Conexão à VPN pelo Linux . . . . . . . . . . . . . . 152
2.8.2.8 Conexão à VPN pelo Windows . . . . . . . . . . . . 154
2.8.3 S2S (Site-to-Site) VPNs . . . . . . . . . . . . . . . . . . . . . . 158
2.9 Assinatura de requisições HTTP . . . . . . . . . . . . . . . . . . . . 163
2.10 Templates e ISOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
2.10.1 Operações com templates/ISOs . . . . . . . . . . . . . . . . . 170
2.10.1.1 Vizualização . . . . . . . . . . . . . . . . . . . . . . . 170
2.10.1.2 Listagem . . . . . . . . . . . . . . . . . . . . . . . . . 172
2.10.1.3 Resgitro . . . . . . . . . . . . . . . . . . . . . . . . . 174
2.10.1.4 Upload . . . . . . . . . . . . . . . . . . . . . . . . . . 177
2.10.1.5 Edição . . . . . . . . . . . . . . . . . . . . . . . . . . 179
2.10.1.6 Edição de permissões de template/ISO . . . . . . . 181
2.10.1.7 Edição de compartilhamento do template . . . . . 182
2.10.1.8 Remoção de template/ISO . . . . . . . . . . . . . . 184
2.10.1.9 Criação de template baseado em uma VM existente185
2.11 Resource Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
2.12 Affinity Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
2.12.1 Tipos de affinity groups . . . . . . . . . . . . . . . . . . . . . . 188
2.12.2 Operações com affinity groups . . . . . . . . . . . . . . . . . 189
2.12.2.1 Adição de affinity group . . . . . . . . . . . . . . . . 189
2.12.2.2 Adição de VM ao affinity group . . . . . . . . . . . . 190
2.12.2.3 Visualização de VMs no affinity group . . . . . . . . 191
2.12.2.4 Exclusão de affinity group . . . . . . . . . . . . . . . 193
2.13 Autoscale VM groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
2.13.1 Criação de um autoscale VM group . . . . . . . . . . . . . . . 194
6
2.13.1.1 Configuração da scale-down policy . . . . . . . . . . 199
2.13.1.2 Configuração dos detalhes do autoscale VM group 199
2.13.1.3 Criação do grupo . . . . . . . . . . . . . . . . . . . . 200
2.13.2 Teste de autoscaling . . . . . . . . . . . . . . . . . . . . . . . 201
2.13.3 Edição de autoscale VM group . . . . . . . . . . . . . . . . . . 202
2.13.4 Exclusão de autoscale VM group . . . . . . . . . . . . . . . . 205
2.14 Kubernetes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
2.14.1 Versões suportadas do Kubernetes . . . . . . . . . . . . . . 207
2.14.2 Adição de ISO Kubernetes ao Apache CloudStack . . . . . . 207
2.14.3 Deleção de ISO Kubernetes . . . . . . . . . . . . . . . . . . . 209
2.14.4 Clusters Kubernetes . . . . . . . . . . . . . . . . . . . . . . . 210
2.14.4.1 Criando clusters Kubernetes . . . . . . . . . . . . . 211
2.14.4.2 Scaling de cluster Kubernetes . . . . . . . . . . . . 213
2.14.4.3 Upgrade de cluster Kubernetes . . . . . . . . . . . . 214
2.14.5 Acesso ao Kubernetes . . . . . . . . . . . . . . . . . . . . . . 214
2.14.6 Gerando Token para a Dashboard . . . . . . . . . . . . . . . 216
2.15 Snapshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
2.15.1 Tipos de snapshot . . . . . . . . . . . . . . . . . . . . . . . . . 216
2.15.1.1 Snapshot de volume/disco . . . . . . . . . . . . . . 216
2.15.1.2 Snapshot de VM . . . . . . . . . . . . . . . . . . . . 217
2.15.2 Operações com snapshot . . . . . . . . . . . . . . . . . . . . 217
2.15.2.1 Snapshot de volume . . . . . . . . . . . . . . . . . . 218
2.15.2.2 Snapshot de VM . . . . . . . . . . . . . . . . . . . . 219
2.15.2.3 Visualização dos snapshots criados . . . . . . . . . 220
2.15.2.4 Criação de template a partir de uma snapshot de
volume . . . . . . . . . . . . . . . . . . . . . . . . . 221
2.15.2.5 Criação de volume a partir de uma snapshot de
volume . . . . . . . . . . . . . . . . . . . . . . . . . 222
2.15.2.6 Reversão de snapshot de volume . . . . . . . . . . 223
7
2.15.2.7 Deleção de snapshot de volume . . . . . . . . . . . 224
2.15.2.8 Criação de snapshot de volume a partir de uma
snapshot de VM . . . . . . . . . . . . . . . . . . . . . 224
2.15.2.9 Reversão de snapshot de VM . . . . . . . . . . . . . 226
2.15.2.10Deleção de snapshot de VM . . . . . . . . . . . . . 226
2.15.2.11Configuração de snapshots recorrentes . . . . . . 227
2.16 Eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
2.16.1 Níveis de eventos . . . . . . . . . . . . . . . . . . . . . . . . . 227
2.16.2 Busca e filtro de eventos . . . . . . . . . . . . . . . . . . . . 227
2.16.3 Remoção ou arquivamento de eventos . . . . . . . . . . . . 228
2.17 Interface de usuário (UI) . . . . . . . . . . . . . . . . . . . . . . . . . 229
2.17.1 Uso de timezone do browser . . . . . . . . . . . . . . . . . . . 229
2.17.2 Documentação na UI . . . . . . . . . . . . . . . . . . . . . . . 230
2.18 Service offerings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
2.18.1 Disk offerings . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
2.18.1.1 Criação de disk offering . . . . . . . . . . . . . . . . 231
2.18.1.2 Edição de disk offering . . . . . . . . . . . . . . . . . 234
2.18.1.3 Exclusão de disk offering . . . . . . . . . . . . . . . 236
2.18.2 Compute offerings . . . . . . . . . . . . . . . . . . . . . . . . . 237
2.18.2.1 Criação de compute offering . . . . . . . . . . . . . 237
2.18.2.2 Edição de compute offering . . . . . . . . . . . . . . 242
2.18.2.3 Exclusão de compute offering . . . . . . . . . . . . . 243
2.18.2.4 Alteração de compute offering da VM . . . . . . . . 244
2.18.3 Network offerings . . . . . . . . . . . . . . . . . . . . . . . . . 246
2.18.3.1 Criação de network offering . . . . . . . . . . . . . . 246
2.18.3.2 Edição de network offering . . . . . . . . . . . . . . 250
2.18.3.3 Exclusão de network offering . . . . . . . . . . . . . 252
2.18.4 VPC Offerings . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
2.18.4.1 Criação de VPC offering . . . . . . . . . . . . . . . . 253
8
2.18.4.2 Edição de VPC offering . . . . . . . . . . . . . . . . . 254
2.18.4.3 Exclusão de VPC offering . . . . . . . . . . . . . . . 256
3 CloudMonkey, API e outros 258
3.1 Instalação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
3.2 Configuração . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
3.3 Uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
4 Contabilização do consumo de recursos 265
4.1 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
4.1.1 Relatórios de uso de recursos . . . . . . . . . . . . . . . . . 265
4.2 Quota . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
4.2.1 Tarifas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
4.2.2 Relatórios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
4.2.2.1 Créditos . . . . . . . . . . . . . . . . . . . . . . . . . 267
4.2.2.2 Uso de recursos . . . . . . . . . . . . . . . . . . . . 268
4.2.2.3 Balanço . . . . . . . . . . . . . . . . . . . . . . . . . 271
5 Cloud-init 274
5.1 Etapas de inicialização . . . . . . . . . . . . . . . . . . . . . . . . . . 274
5.2 Frequência de execução . . . . . . . . . . . . . . . . . . . . . . . . . 275
5.3 DataSources conhecidos . . . . . . . . . . . . . . . . . . . . . . . . . 276
5.4 Módulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
5.5 Criação de uma imagem personalizada . . . . . . . . . . . . . . . . 277
5.6 Cloud-init no Windows . . . . . . . . . . . . . . . . . . . . . . . . . . 280
5.7 Troubleshooting do cloud-init . . . . . . . . . . . . . . . . . . . . . . 280
5.8 Obrigação de troca de senha no primeiro login . . . . . . . . . . . 280
5.9 Auto incremento do tamanho do disco durante o boot . . . . . . . 281
5.10 Interação com o user-data . . . . . . . . . . . . . . . . . . . . . . . . 282
6 Conclusão 283
Apêndice A Terminologia 285
9
Lista de Figuras
1 Computação em nuvem . . . . . . . . . . . . . . . . . . . . . . . . . 27
2 Dashboard inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3 Diagrama de relacionamento entre contas, domínios, projetos e
usuários. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4 Navegando até a página de adição de accounts . . . . . . . . . . . 33
5 Adicionando uma nova account . . . . . . . . . . . . . . . . . . . . . 33
6 Navegando até a página de detalhes de uma account . . . . . . . . 34
7 Vendo os detalhes da account . . . . . . . . . . . . . . . . . . . . . . 34
8 Deletando uma account . . . . . . . . . . . . . . . . . . . . . . . . . 35
9 Confirmando a remoção da account . . . . . . . . . . . . . . . . . . 35
10 Editando os limites de uma account . . . . . . . . . . . . . . . . . . 36
11 Editando as configurações de uma account . . . . . . . . . . . . . . 37
12 Desabilitando uma account . . . . . . . . . . . . . . . . . . . . . . . 37
13 Confirmando a desabilitação da account . . . . . . . . . . . . . . . 38
14 Bloqueando uma account . . . . . . . . . . . . . . . . . . . . . . . . 38
15 Confirmando o bloqueio da account . . . . . . . . . . . . . . . . . . 38
16 Definindo duas faixas IPv4 e uma IPv6 . . . . . . . . . . . . . . . . 39
17 Iniciando a criação de uma nova role . . . . . . . . . . . . . . . . . 40
18 Criando a nova role . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
19 Acessando a recém-criada role . . . . . . . . . . . . . . . . . . . . . 42
20 Customizando as regras da role . . . . . . . . . . . . . . . . . . . . 42
21 Iniciando a edição de uma role . . . . . . . . . . . . . . . . . . . . . 43
22 Editando a role . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
23 Removendo uma role . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
24 Confirmando a remoção da role . . . . . . . . . . . . . . . . . . . . 43
25 Acessando a página de domains . . . . . . . . . . . . . . . . . . . . 45
26 Criando um novo domain . . . . . . . . . . . . . . . . . . . . . . . . 45
10
27 Definindo o nome do novo domain . . . . . . . . . . . . . . . . . . 46
28 Visualizando o domain criado . . . . . . . . . . . . . . . . . . . . . . 46
29 Selecionando o domain criado . . . . . . . . . . . . . . . . . . . . . 46
30 Iniciando a edição do novo domain . . . . . . . . . . . . . . . . . . 47
31 Editando o domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
32 Navegando até a página de accounts . . . . . . . . . . . . . . . . . . 50
33 Selecione a account que o novo user fará parte . . . . . . . . . . . 50
34 Veja os users da account . . . . . . . . . . . . . . . . . . . . . . . . . 51
35 Adicionando um novo user . . . . . . . . . . . . . . . . . . . . . . . 51
36 Defina os dados do novo user e salve as alterações . . . . . . . . . 51
37 Selecionando o user para editá-lo . . . . . . . . . . . . . . . . . . . 52
38 Iniciando a edição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
39 Editando o user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
40 Deletando um user . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
41 Confirme a remoção do user . . . . . . . . . . . . . . . . . . . . . . 53
42 Desabilitando um user . . . . . . . . . . . . . . . . . . . . . . . . . . 53
43 Selecionando o user que deseja reabilitar . . . . . . . . . . . . . . . 54
44 Habilitando um user . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
45 Encontrando as configurações . . . . . . . . . . . . . . . . . . . . . 55
46 Mensagem exibida ao tentar realizar login com user desabilitado . 56
47 Gerar chaves de acesso para um usuário . . . . . . . . . . . . . . . 57
48 Mensagem de confirmação para gerar chaves de acesso . . . . . 57
49 Configurando a autenticação de dois fatores. . . . . . . . . . . . . 59
50 Opções de provedores de autenticação de dois fatores. . . . . . . 59
51 Configurando a autenticação de dois fatores com TOTP. . . . . . . 60
52 Verificação com TOTP durante o login. . . . . . . . . . . . . . . . . . 60
53 Configurando a autenticação de dois fatores com static PIN. . . . . 61
54 Verificação com static PIN durante o login. . . . . . . . . . . . . . . 61
55 Desativando a autenticação de dois fatores. . . . . . . . . . . . . . 62
11
56 Configurando a autenticação de dois fatores no login. . . . . . . . 62
57 Exemplo de como o timezone afeta a interface do Apache Cloud-
Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
58 Editando o timezone do user . . . . . . . . . . . . . . . . . . . . . . . 63
59 Ativando a funcionalidade de timezone local . . . . . . . . . . . . . 64
60 Iniciando a criação de um novo project . . . . . . . . . . . . . . . . 65
61 Criando o novo project . . . . . . . . . . . . . . . . . . . . . . . . . . 65
62 Limites de recursos de um project . . . . . . . . . . . . . . . . . . . 66
63 Alterando os limites de recursos de um project . . . . . . . . . . . 67
64 Iniciando a criação de uma project role . . . . . . . . . . . . . . . . 68
65 Criando uma project role . . . . . . . . . . . . . . . . . . . . . . . . . 68
66 Definindo as regras da project role . . . . . . . . . . . . . . . . . . . 68
67 Iniciando a adição de membros no project . . . . . . . . . . . . . . 69
68 Adicionando uma account no project . . . . . . . . . . . . . . . . . . 69
69 Adicionando um user no project . . . . . . . . . . . . . . . . . . . . 70
70 Selecionando a view . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
71 Iniciando a edição do project . . . . . . . . . . . . . . . . . . . . . . 72
72 Editando o project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
73 Iniciando a suspensão do project . . . . . . . . . . . . . . . . . . . . 73
74 Suspendendo o project . . . . . . . . . . . . . . . . . . . . . . . . . . 73
75 Iniciando a exclusão do project . . . . . . . . . . . . . . . . . . . . . 74
76 Excluíndo o project . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
77 Adicionando uma VM . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
78 Criação de uma VM com uma conta de usuário do tipo root admin 78
79 Criação de uma VM como admin . . . . . . . . . . . . . . . . . . . . 80
80 Criação de uma VM como user . . . . . . . . . . . . . . . . . . . . . 82
81 Visualização das opções de inicialização . . . . . . . . . . . . . . . 84
82 Opções de inicialização no formulário de deploy de uma VM . . . 84
83 Configuração final da VM . . . . . . . . . . . . . . . . . . . . . . . . 85
12
84 Escolhendo a VM que será destruída . . . . . . . . . . . . . . . . . 86
85 Confirmando a destruição da VM . . . . . . . . . . . . . . . . . . . . 87
86 Parando e iniciando uma VM . . . . . . . . . . . . . . . . . . . . . . 87
87 Escolhendo a VM que será reiniciada . . . . . . . . . . . . . . . . . 87
88 Reiniciando a VM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
89 Botões de acesso e cópia de URL do console da VM . . . . . . . . . 88
90 Resposta da API createConsoleEndpoint . . . . . . . . . . . . . . . 89
91 Ativando dynamic scaling em uma VM . . . . . . . . . . . . . . . . . 90
92 Configurando dynamic scaling em um template . . . . . . . . . . . . 91
93 Escolhendo a VM que terá sua account migrada . . . . . . . . . . . 93
94 Migrando account da VM . . . . . . . . . . . . . . . . . . . . . . . . . 94
95 Adicionando user-data na criação da VM . . . . . . . . . . . . . . . 95
96 Alterando user-data na edição da VM . . . . . . . . . . . . . . . . . 96
97 Verificando funcionalidade do user-data . . . . . . . . . . . . . . . 96
98 Aba de configurações da VM . . . . . . . . . . . . . . . . . . . . . . 97
99 Visualizar todos os volumes . . . . . . . . . . . . . . . . . . . . . . . 101
100 Criar novo volume . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
101 Configurar novo volume . . . . . . . . . . . . . . . . . . . . . . . . . 102
102 Verificando novo volume . . . . . . . . . . . . . . . . . . . . . . . . 102
103 Upload de volume local . . . . . . . . . . . . . . . . . . . . . . . . . 102
104 Realizar upload . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
105 Fazendo upload de volume . . . . . . . . . . . . . . . . . . . . . . . 105
106 Configurando o upload de volume . . . . . . . . . . . . . . . . . . . 105
107 Acessando os detalhes do volume . . . . . . . . . . . . . . . . . . . 106
108 Adicionando o volume à VM . . . . . . . . . . . . . . . . . . . . . . . 106
109 Configurando a VM que receberá o novo volume . . . . . . . . . . 107
110 Removendo o volume da VM . . . . . . . . . . . . . . . . . . . . . . 107
111 Confirmando a ação . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
112 Redimensionar o volume . . . . . . . . . . . . . . . . . . . . . . . . 108
13
113 Configurar redimensionamento . . . . . . . . . . . . . . . . . . . . 109
114 Fazer download do volume . . . . . . . . . . . . . . . . . . . . . . . 109
115 Confirmar download . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
116 Adicionando automatização de snapshots para um volume . . . . 110
117 Configurando a automatização das snapshots . . . . . . . . . . . . 110
118 Removendo o volume . . . . . . . . . . . . . . . . . . . . . . . . . . 111
119 Confirmar a ação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
120 Navegando até a rede guest . . . . . . . . . . . . . . . . . . . . . . . 112
121 Rede isolada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
122 Rede isolada criada . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
123 Criando uma rede L2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
124 Rede L2 criada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
125 Rede shared . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
126 Rede shared criada . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
127 Acessando os detalhes de uma rede guest . . . . . . . . . . . . . . 118
128 Excluindo uma rede . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
129 Confirmando a exclusão da rede . . . . . . . . . . . . . . . . . . . . 118
130 Editando uma rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
131 Reiniciando uma rede . . . . . . . . . . . . . . . . . . . . . . . . . . 119
132 Configurando as egress rules . . . . . . . . . . . . . . . . . . . . . . 120
133 Acessando a rede client-network. . . . . . . . . . . . . . . . . . . . 121
134 Adicionando uma conta em Add network permission. . . . . . . . 122
135 Após adição da network permission. . . . . . . . . . . . . . . . . . . 123
136 Acessando o IP público . . . . . . . . . . . . . . . . . . . . . . . . . . 124
137 Vendo os detalhes do IP público . . . . . . . . . . . . . . . . . . . . 124
138 Configurando o firewall . . . . . . . . . . . . . . . . . . . . . . . . . 125
139 Habilitando static NAT . . . . . . . . . . . . . . . . . . . . . . . . . . 125
140 Configurando o IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
141 Verificando a configuração final . . . . . . . . . . . . . . . . . . . . 126
14
142 Acessando e configurando as portas da aba de port forwarding . . 127
143 Escolhendo a VM que terá a porta mapeada . . . . . . . . . . . . . 127
144 Exemplo de configuração de port forwarding com várias VMs . . . 128
145 Acessando e configurando as portas do load balancing . . . . . . . 128
146 Adicionando as VMs que serão gerenciadas pelo load balancer . . 129
147 Load balancer criado . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
148 Removendo o IP público . . . . . . . . . . . . . . . . . . . . . . . . . 130
149 Acessando os detalhes da rede . . . . . . . . . . . . . . . . . . . . . 130
150 Acesse os IPs públicos da rede . . . . . . . . . . . . . . . . . . . . . 131
151 Adquirir um novo IP . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
152 Lista de IPs disponíveis . . . . . . . . . . . . . . . . . . . . . . . . . . 131
153 Novo IP adquirido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
154 Criando uma nova VPC . . . . . . . . . . . . . . . . . . . . . . . . . . 133
155 Configurando a nova VPC . . . . . . . . . . . . . . . . . . . . . . . . 133
156 Verificando se a VPC foi corretamente criada . . . . . . . . . . . . . 134
157 Reiniciando uma VPC . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
158 Opções de reinicialização de uma VPC . . . . . . . . . . . . . . . . . 135
159 Removendo uma VPC . . . . . . . . . . . . . . . . . . . . . . . . . . 136
160 Confirmando a ação . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
161 Erro que ocorre ao tentar deletar uma VPC . . . . . . . . . . . . . . 136
162 Acessando a VPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
163 Acessando os IPs públicos da VPC . . . . . . . . . . . . . . . . . . . 137
164 Escolhendo um IP público . . . . . . . . . . . . . . . . . . . . . . . . 137
165 Acessando a VPC criada . . . . . . . . . . . . . . . . . . . . . . . . . 138
166 Verificando os detalhes da VPC . . . . . . . . . . . . . . . . . . . . . 138
167 Adicionando um novo tier . . . . . . . . . . . . . . . . . . . . . . . . 139
168 Criando um novo tier . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
169 Navegando até os tiers . . . . . . . . . . . . . . . . . . . . . . . . . . 140
170 Removendo um tier . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
15
171 Confirmando a remoção do tier . . . . . . . . . . . . . . . . . . . . 140
172 Adicionando uma nova ACL . . . . . . . . . . . . . . . . . . . . . . . 141
173 Criando uma nova ACL . . . . . . . . . . . . . . . . . . . . . . . . . . 142
174 Navegando até a ACL criada . . . . . . . . . . . . . . . . . . . . . . . 142
175 Navegando até a criação de uma nova regra na ACL . . . . . . . . 142
176 Adicionando regra que permite o tráfego de entrada da porta 22
do protocolo TCP (SSH) . . . . . . . . . . . . . . . . . . . . . . . . . . 143
177 Adicionando regra que permite o tráfego de saída da porta 22 do
protocolo TCP (SSH) . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
178 Seleção da conta dona do tier . . . . . . . . . . . . . . . . . . . . . . 145
179 Seleção da conta no formulário de aquisição de IP público . . . . 146
180 Selecionando a VPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
181 Detalhes da VPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
182 Detalhes do public IP . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
183 Habilitando a VPN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
184 VPN habilitada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
185 Desabilitar a VPN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
186 Gerenciar usuários da VPN . . . . . . . . . . . . . . . . . . . . . . . 150
187 Iniciando adição de usuário à VPN . . . . . . . . . . . . . . . . . . . 150
188 Adicionando usuário à VPN . . . . . . . . . . . . . . . . . . . . . . . 151
189 Excluíndo usuário da VPN . . . . . . . . . . . . . . . . . . . . . . . . 151
190 Iniciando a adição de uma VPN no Linux . . . . . . . . . . . . . . . 152
191 Adicionando uma VPN no Linux . . . . . . . . . . . . . . . . . . . . 152
192 Informando a IPSec pre-shared key . . . . . . . . . . . . . . . . . . . 153
193 Informando a IPSec pre-shared key . . . . . . . . . . . . . . . . . . . 153
194 Desabilitando o protocolo EAP . . . . . . . . . . . . . . . . . . . . . 153
195 Desabilitando o protocolo EAP . . . . . . . . . . . . . . . . . . . . . 154
196 Adicionando uma VPN no Windows . . . . . . . . . . . . . . . . . . 154
197 Iniciando a adição de uma VPN no Windows . . . . . . . . . . . . . 155
16
198 Finalizando a adição de uma VPN no Windows . . . . . . . . . . . . 155
199 Alterando configurações do PPP . . . . . . . . . . . . . . . . . . . . 156
200 Habilitando o protocolo MS-CHAP v2 . . . . . . . . . . . . . . . . . 157
201 Desabilitando IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
202 Desabilitando o uso de gateway padrão na rede remota . . . . . . 158
203 Navegando até a aba VPN customer gateway . . . . . . . . . . . . . 158
204 Criando um VPN customer gateway . . . . . . . . . . . . . . . . . . . 159
205 Editando um VPN customer gateway . . . . . . . . . . . . . . . . . . 160
206 Deletando um VPN customer gateway . . . . . . . . . . . . . . . . . 160
207 Navegando até VPN gateway nos detalhes da VPC . . . . . . . . . . 160
208 Criando um VPN gateway . . . . . . . . . . . . . . . . . . . . . . . . 161
209 Navegando até VPN connection nos detalhes da VPC . . . . . . . . 161
210 Criando uma conexão VPN S2S . . . . . . . . . . . . . . . . . . . . . 162
211 Reiniciando uma conexão VPN S2S . . . . . . . . . . . . . . . . . . . 162
212 Removendo uma conexão VPN S2S . . . . . . . . . . . . . . . . . . 162
213 Gerando keys. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
214 Visualizando templates e ISOs . . . . . . . . . . . . . . . . . . . . . . 170
215 Acessando os detalhes do template . . . . . . . . . . . . . . . . . . 171
216 Detalhes do template . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
217 Acessando os detalhes da ISO . . . . . . . . . . . . . . . . . . . . . 172
218 Detalhes da ISO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
219 Filtros para listagem de ISOs e templates. . . . . . . . . . . . . . . . 174
220 Registrando o template . . . . . . . . . . . . . . . . . . . . . . . . . . 174
221 Configurando o template . . . . . . . . . . . . . . . . . . . . . . . . . 175
222 Registrando a ISO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
223 Configurando a ISO . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
224 Fazendo upload do template . . . . . . . . . . . . . . . . . . . . . . . 177
225 Configurando o template . . . . . . . . . . . . . . . . . . . . . . . . . 178
226 Fazendo upload da ISO . . . . . . . . . . . . . . . . . . . . . . . . . . 178
17
227 Configurando a ISO . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
228 Editando detalhes do template . . . . . . . . . . . . . . . . . . . . . 179
229 Editando o template . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
230 Editando detalhes da ISO . . . . . . . . . . . . . . . . . . . . . . . . 180
231 Editando a ISO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
232 Editando as permissões do template . . . . . . . . . . . . . . . . . . 181
233 Editando as permissões da ISO . . . . . . . . . . . . . . . . . . . . . 182
234 Editando permissões . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
235 Editando compartilhamento do template . . . . . . . . . . . . . . . 183
236 Editando compartilhamento da ISO . . . . . . . . . . . . . . . . . . 183
237 Editando opções de compartilhamento . . . . . . . . . . . . . . . . 183
238 Deletando o template . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
239 Deletando a ISO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
240 Navegando até as VMs . . . . . . . . . . . . . . . . . . . . . . . . . . 185
241 Indo até o volume da VM . . . . . . . . . . . . . . . . . . . . . . . . 186
242 Criando o template . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
243 Configurando o template . . . . . . . . . . . . . . . . . . . . . . . . . 187
244 Resource tags de um componente qualquer . . . . . . . . . . . . . 188
245 Navegando até os affinity groups . . . . . . . . . . . . . . . . . . . . 189
246 Criando um affinity group . . . . . . . . . . . . . . . . . . . . . . . . 190
247 Affinity group criado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
248 Acessando a VM que será movida ao grupo . . . . . . . . . . . . . 190
249 Movendo a VM para um affinity group . . . . . . . . . . . . . . . . . 191
250 Selecionando o grupo . . . . . . . . . . . . . . . . . . . . . . . . . . 191
251 Acessando o grupo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
252 Visualizando as VMs no grupo . . . . . . . . . . . . . . . . . . . . . 192
253 Lista de VMs no grupo . . . . . . . . . . . . . . . . . . . . . . . . . . 192
254 Excluindo o grupo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
255 Criando uma rede isolada . . . . . . . . . . . . . . . . . . . . . . . . 195
18
256 Acessando a aba de Public IP addresses . . . . . . . . . . . . . . . . 195
257 Adquirindo um novo IP público . . . . . . . . . . . . . . . . . . . . . 196
258 Adicionando uma regra de load balancing . . . . . . . . . . . . . . 196
259 Selecionando a rede isolada . . . . . . . . . . . . . . . . . . . . . . . 197
260 Selecionando a regra de load balancing . . . . . . . . . . . . . . . . 197
261 Configurando a scale-up policy . . . . . . . . . . . . . . . . . . . . . 198
262 Configurando a scale-down policy . . . . . . . . . . . . . . . . . . . . 199
263 Configurando os detalhes do autoscale VM group . . . . . . . . . . 200
264 Visualizando as instâncias do autoscale VM group . . . . . . . . . . 200
265 Instâncias do autoscale VM group . . . . . . . . . . . . . . . . . . . . 201
266 Instâncias do autoscale VM group após o scale-up . . . . . . . . . . 201
267 Instâncias do autoscale VM group após o scale-down . . . . . . . . . 202
268 Desativando o autoscale VM group . . . . . . . . . . . . . . . . . . . 202
269 Confirmando a ação . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
270 Editando os detalhes do grupo e parâmetros de deploy das VMs . 203
271 Diálogo de edição dos detalhes do grupo e parâmetros de deploy
das VMs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
272 Editando a scale-up policy do grupo . . . . . . . . . . . . . . . . . . 204
273 Editando a scale-down policy do grupo . . . . . . . . . . . . . . . . . 204
274 Ativando o autoscale VM group . . . . . . . . . . . . . . . . . . . . . 205
275 Confirmando a ação . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
276 Excluindo o autoscale VM group . . . . . . . . . . . . . . . . . . . . . 205
277 Confirmando a ação . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
278 Formulário de adição de versão Kubernetes . . . . . . . . . . . . . 209
279 Deletando ISO Kubernetes via UI . . . . . . . . . . . . . . . . . . . . 210
280 Confirmar exclusão da ISO Kubernetes . . . . . . . . . . . . . . . . 210
281 Formulário de criação de cluster Kubernetes . . . . . . . . . . . . . 212
282 Formulário de scaling de cluster Kubernetes . . . . . . . . . . . . . 213
283 Formulário de upgrade de cluster Kubernetes . . . . . . . . . . . . 214
19
284 Acessando o Kubernetes . . . . . . . . . . . . . . . . . . . . . . . . . 215
285 Acessando os detalhes de uma VM . . . . . . . . . . . . . . . . . . 218
286 Tirando uma snapshot do Volume . . . . . . . . . . . . . . . . . . . 218
287 Escolhendo o volume que será tirada a snapshot . . . . . . . . . . 218
288 Configurando a snapshot . . . . . . . . . . . . . . . . . . . . . . . . 219
289 Tirando uma snapshot da VM . . . . . . . . . . . . . . . . . . . . . . 219
290 Configurando a snapshot . . . . . . . . . . . . . . . . . . . . . . . . 219
291 Acessando as snapshots . . . . . . . . . . . . . . . . . . . . . . . . . 220
292 Acessando as snapshots de volumes . . . . . . . . . . . . . . . . . . 220
293 Acessando as snapshots de VM . . . . . . . . . . . . . . . . . . . . . 220
294 Acessando os detalhes da snapshot . . . . . . . . . . . . . . . . . . 221
295 Criando o template . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
296 Configurando os dados do template . . . . . . . . . . . . . . . . . . 222
297 Criando o novo volume . . . . . . . . . . . . . . . . . . . . . . . . . 222
298 Configurando o novo volume . . . . . . . . . . . . . . . . . . . . . . 223
299 Revertendo para a snapshot . . . . . . . . . . . . . . . . . . . . . . . 223
300 Confirmando a ação . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
301 Deletando a snapshot de volume . . . . . . . . . . . . . . . . . . . . 224
302 Confirmando a remoção . . . . . . . . . . . . . . . . . . . . . . . . . 224
303 Acessando os detalhes da snapshot da VM . . . . . . . . . . . . . . 224
304 Criando uma snapshot de volume a partir da snapshot da VM . . . 225
305 Configurando qual volume será extraído . . . . . . . . . . . . . . . 225
306 Criando uma snapshot de volume . . . . . . . . . . . . . . . . . . . 225
307 Revertendo a snapshot . . . . . . . . . . . . . . . . . . . . . . . . . . 226
308 Confirmando a ação . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
309 Removendo a snapshot de VM . . . . . . . . . . . . . . . . . . . . . 226
310 Confirmando a ação . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
311 Navegando pelos eventos . . . . . . . . . . . . . . . . . . . . . . . . 228
312 Arquivando ou deletando um evento . . . . . . . . . . . . . . . . . 228
20
313 Habilitando a configuração . . . . . . . . . . . . . . . . . . . . . . . 229
314 Exemplo de popup com os ícones de ajuda . . . . . . . . . . . . . . 230
315 Iniciando a criação de uma nova disk offering . . . . . . . . . . . . . 231
316 Criando a nova disk offering . . . . . . . . . . . . . . . . . . . . . . . 232
317 Iniciando a edição da disk offering . . . . . . . . . . . . . . . . . . . 234
318 Editando a disk offering . . . . . . . . . . . . . . . . . . . . . . . . . . 235
319 Iniciando a atualização de acesso da disk offering . . . . . . . . . . 235
320 Atualizando o acesso da disk offering . . . . . . . . . . . . . . . . . 235
321 Alterando ordem da disk offering . . . . . . . . . . . . . . . . . . . . 236
322 Iniciando a exclusão da disk offering . . . . . . . . . . . . . . . . . . 236
323 Excluindo a disk offering . . . . . . . . . . . . . . . . . . . . . . . . . 236
324 Iniciando a criação de uma nova compute offering . . . . . . . . . . 238
325 Criando a nova compute offering - 1 - continua . . . . . . . . . . . . 239
326 Iniciando a edição da compute offering . . . . . . . . . . . . . . . . 242
327 Editando a compute offering . . . . . . . . . . . . . . . . . . . . . . . 242
328 Iniciando a atualização de acesso da compute offering . . . . . . . 243
329 Atualizando o acesso da compute offering . . . . . . . . . . . . . . . 243
330 Alterando a ordem da compute offering . . . . . . . . . . . . . . . . 243
331 Iniciando a exclusão da compute offering . . . . . . . . . . . . . . . 243
332 Excluíndo a compute offering . . . . . . . . . . . . . . . . . . . . . . 244
333 Iniciando a alteração da compute offering . . . . . . . . . . . . . . . 244
334 Alterando a compute offering . . . . . . . . . . . . . . . . . . . . . . 245
335 Alterando a compute offering . . . . . . . . . . . . . . . . . . . . . . 245
336 Iniciando a criação de uma nova network offering . . . . . . . . . . 247
337 Criando a nova network offering - 1 - continua . . . . . . . . . . . . 247
338 Criando a nova network offering - 2 . . . . . . . . . . . . . . . . . . . 249
339 Iniciando a edição da network offering . . . . . . . . . . . . . . . . . 250
340 Editando a network offering . . . . . . . . . . . . . . . . . . . . . . . 250
341 Iniciando a desabilitação da network offering . . . . . . . . . . . . . 251
21
342 Desabilitando a network offering . . . . . . . . . . . . . . . . . . . . 251
343 Iniciando a atualização de acesso da network offering . . . . . . . . 251
344 Atualizando o acesso da network offering . . . . . . . . . . . . . . . 251
345 Alterando ordem da network offering . . . . . . . . . . . . . . . . . 252
346 Iniciando a exclusão da network offering . . . . . . . . . . . . . . . . 252
347 Excluíndo a network offering . . . . . . . . . . . . . . . . . . . . . . . 252
348 Iniciando a criação de uma nova VPC offering . . . . . . . . . . . . . 253
349 Criando a nova VPC offering . . . . . . . . . . . . . . . . . . . . . . . 254
350 Iniciando a edição da VPC offering . . . . . . . . . . . . . . . . . . . 255
351 Editando a VPC offering . . . . . . . . . . . . . . . . . . . . . . . . . . 255
352 Iniciando a desabilitação da VPC offering . . . . . . . . . . . . . . . 255
353 Desabilitando a VPC offering . . . . . . . . . . . . . . . . . . . . . . . 255
354 Iniciando a atualização de acesso da VPC offering . . . . . . . . . . 256
355 Atualizando o acesso da VPC offering . . . . . . . . . . . . . . . . . 256
356 Alterando a ordem da VPC offering . . . . . . . . . . . . . . . . . . . 256
357 Iniciando a exclusão da VPC offering . . . . . . . . . . . . . . . . . . 256
358 Excluíndo a VPC offering . . . . . . . . . . . . . . . . . . . . . . . . . 257
359 Utilizando o autocomplete . . . . . . . . . . . . . . . . . . . . . . . . 260
360 Verificando o autocomplete para um comando específico . . . . . 261
361 Verificando o autocomplete para uma API específica . . . . . . . . 261
362 Utilizando o -h para obter ajuda . . . . . . . . . . . . . . . . . . . . 262
363 Realizando uma chamada . . . . . . . . . . . . . . . . . . . . . . . . 263
364 Fazendo deploy de uma VM via CloudMonkey . . . . . . . . . . . . 264
365 Listagem das tarifas ativas . . . . . . . . . . . . . . . . . . . . . . . . 266
366 Detalhes das tarifas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
367 Acessando detalhes e relatórios de uma conta . . . . . . . . . . . . 267
368 Listagem de créditos . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
369 Listagem de uso de recurso . . . . . . . . . . . . . . . . . . . . . . . 269
370 Listagem detalhada de uso de recurso . . . . . . . . . . . . . . . . 270
22
371 Listagem do balanço do Quota . . . . . . . . . . . . . . . . . . . . . 272
23
Lista de Tabelas
24
Notas
Este documento não abrange todos os tópicos, assuntos ou casos de uso
do Apache CloudStack. Portanto, caso não encontre o que está procu-
rando, faça uma solicitação de ajuste ou inclusão via GitLab.
Este documento é atualizado periodicamente. Portanto, fique atento a
novas atualizações.
25
1. Introdução
Durante os últimos anos, o uso da computação em nuvem (privada, pública
e/ou híbrida) teve um grande crescimento, intensificando as oportunidades no
mercado de serviços digitais. Para atender a demanda, a infraestrutura ne-
cessária para criar e manter esse tipo de ambiente aumenta constantemente,
impactando diretamente nos custos de gerenciamento e operação.
Ambientes de computação em nuvem são complexos e heterogêneos, pos-
suindo variáveis dinâmicas e inúmeros componentes que devem ser interliga-
dos e gerenciados. Para uma eficiente gestão de tais ambientes, é necessária a
adoção de ferramentas capazes de orquestrar a infraestrutura, auxiliando na
implantação, manutenção e gerência de serviços e sistemas de nuvem.
As plataformas Apache CloudStack e OpenStack são as principais alterna-
tivas opensource para criação de ambientes de nuvem privada, se destacando
pela robustez, maturidade dos projetos e amplitude de tecnologias e funciona-
lidades suportadas. Tais características se traduzem em centenas de compa-
nhias que adotam alguma dessas plataformas ao redor do mundo, sendo algu-
mas delas: USP, UNICAMP, Dell, Deutsche Telekom, Apple, Planetel, Locaweb e
muitas outras.
A SC Clouds vem ao encontro dessa necessidade, fornecendo consultoria,
suporte e desenvolvimento continuados aos provedores de infraestrutura de
nuvem e às empresas que possuem a tecnologia de nuvem como seu pilar base
para criação e fornecimento de serviços. Em modo de parceria com os clien-
tes, é realizado o planejamento e execução de ambientes de computação em
nuvem que fornecem infraestrutura como serviço. Nossos profissionais pos-
suem domínio pleno das plataformas Apache CloudStack e OpenStack, sendo
responsáveis por diversas funcionalidades novas e correções de bugs dos pro-
jetos. Atualmente a SC Clouds atua auxiliando na gerência, planejamento, im-
plantação, suporte, correção de bugs e implementação de novas funcionalida-
des para empresas na Alemanha, Brasil, Itália, México e Suiça.
26
1.1. Plataformas de nuvem privada
Plataformas de orquestração de nuvem, como o Apache CloudStack e Open-
Stack, são utilizadas para prover nuvem privada, pública ou híbrida em empre-
sas e instituições ao redor do mundo. Elas são capazes de conectar diferentes
sistemas computacionais (armazenamento, rede e virtualizadores), criando a
abstração do modelo de infraestrutura como serviço para usuários e adminis-
tradores de sistema.
Tanto o OpenStack quanto o CloudStack são softwares de orquestração de
ambientes de nuvem de código aberto e de uso gratuito. Ambos têm como ob-
jetivo o gerenciamento de recursos computacionais, trabalhando com o con-
ceito de virtualização para fornecimento de recursos sob demanda, focando
no provimento de recursos de infraestrutura como serviço.
Figura 1: Computação em nuvem
1.1.1. Funcionalidades básicas
Tanto o CloudStack quanto o OpenStack oferecem funcionalidades básicas
e necessárias para o provisionamento de serviços de computação em nuvem.
Algumas das funcionalidades providas são:
27
Serviços de computação
Provisionamento de VMs e gerenciamento de seus recursos (redes,
memória, CPU, discos...);
Gestão de imagens com as quais as VMs serão criadas;
Suporte a múltiplos hypervisors, tais como KVM, XenServer e Vmware.
Serviços de rede
Gestão e configuração de redes compartilhadas e dedicadas;
Criação de VLANS, VxLANS (Overlay Networks) e novas topologias;
Definição de políticas de acesso e roteamentos;
Gestão de QoS, Load Balancers e Firewalls;
Serviços de armazenamento
Gestão de discos;
Armazenamento baseado em objetos e blocos;
Backups;
Suporte a SDS (Software Defined Storage), e.g. Ceph/RBD.
Serviços de monitoramento de recursos
Monitoramento de eventos;
Apresentação dos recursos disponíveis e utilizados;
Precificação e cobrança (billing).
APIs REST abertas, padronizadas e documentadas, para gerenciamento
de todos os serviços, automação e integração com outras ferramentas;
Serviço de autenticação com integração nativa com LDAP;
Suporte a sistemas federados SAML2 e OpenID Connect;
28
Containers como serviço.
Das funcionalidades básicas de um sistema de orquestração de nuvem, o
Apache CloudStack possui limitações em relação a sistemas federados, visto
que suporta somente o protocolo SAML2.
1.2. História do Apache CloudStack
O projeto CloudStack teve seu início em 2008 como um projeto da startup
conhecida como VMOps. A companhia mudou seu nome para Cloud.com e
lançou uma versão estável do CloudStack em 2010, sob a licença GNU GPLv3
(General Public License version 3). Em 2011, a Cloud.com foi adquirida pela
Citrix, e em 2012 o projeto foi doado à fundação Apache. O CloudStack vem
crescendo nos últimos anos e tem se tornado uma ferramenta de orquestra-
ção de referência, sendo utilizado por diversas organizações, como a Globo,
RNP, UNICAMP, Universidade de São Paulo, Locaweb, CGEE, Apple, Dell, Nokia
e Disney.
29
2. Funcionalidades do Apache CloudStack
Nessa seção serão introduzidas, de forma breve, as principais funcionali-
dade do Apache CloudStack e como utilizá-las.
2.1. Dashboard inicial
Esse é o dashboard padrão do Apache CloudStack, onde é possível visualizar
a quantidade de recursos consumidos pelo usuário.
Figura 2: Dashboard inicial
2.2. Gestão de acesso à nuvem
O CloudStack permite que o administrador da nuvem defina e gerencie com
precisão quais recursos estão disponíveis e para quem através de domínios,
contas, usuários, projetos e roles. Para tal, primeiramente é necessário enten-
der esses conceitos.
Conta: uma conta representa um cliente do provedor de serviços da nu-
vem, podendo ser acessada, ou não, por diversos usuários. Nesse con-
texto uma conta define, por exemplo, um departamento de uma empresa
ou uma faculdade dentro de uma universidade, abrigando os usuários
desses setores.
30
Usuário: o usuário, por sua vez, é um integrante da conta. Ele pertence
apenas à uma conta, possui acesso aos recursos de acordo com o tipo da
conta e recebe o mesmo nível de privilégios da conta que o abriga. Eles
são alias para a conta.
Domínio: um domínio pode conter diversas contas que, geralmente, pos-
suem um relacionamento lógico entre si. São utilizados para limitar os
recursos que serão entregues aos usuários desse domínio.
Projeto: projetos são uma forma de organizar contas e recursos. Os
usuários podem ser agrupados em projetos para compartilhar recursos
como VMs, snapshots, templates e endereços IP. Recursos criados em um
projeto pertencem apenas a ele, não à uma conta, e podem ser usa-
dos dentro dele. Os membros do projeto podem visualizar e gerenciar os
recursos virtuais criados por qualquer conta dentro dele.
Roles: definido a nível de conta e/ou de projeto, são conjuntos que defi-
nem as permissões que as contas e os usuários terão no ambiente, como
criação, listagem e remoção de recursos.
A figura a seguir apresenta um diagrama de relacionamento entre contas,
domínios, projetos e usuários.
Figura 3: Diagrama de relacionamento entre contas, domínios, projetos e usuários.
31
2.2.1. Account
Representa um cliente que utiliza os serviços da nuvem. No CloudStack,
uma account pode ser utilizada por mais de um usuário, ao ponto em que uma
organização inteira pode utilizar a mesma conta. Ela pode ser dividida em três
tipos básicos para visualização dos recursos, sendo estes tipos definidos no
momento da criação da role:
Admin: possui acesso a todos os recursos do ambiente, incluindo ele-
mentos de infraestrutura e configurações da plataforma. Essas contas
também são chamadas de root admin.
DomainAdmin: possui acesso a todos os elementos alocados em seu
domínio, incluindo gestão de usuários.
ResourceAdmin: possui acesso a todos os elementos alocados em seu
domínio, exceto gestão de usuários.
User: possui acesso somente aos elementos alocados em sua conta.
O conjunto de permissões para cada tipo de conta é definido através das
roles; contudo, algumas ações, bem como o escopo dos recursos visualizados,
dependem do tipo da conta.
Uma account criada não pode ter seu tipo alterado, mas pode ter seu con-
junto de permissões alterado.
É possível realizar as seguintes operações sobre as accounts:
32
2.2.1.1. Adição de account
Figura 4: Navegando até a página de adição de accounts
Figura 5: Adicionando uma nova account
33
2.2.1.2. Visualização de detalhes de account
Figura 6: Navegando até a página de detalhes de uma account
Figura 7: Vendo os detalhes da account
Todas as operações abaixo detalhadas são realizadas nessa página.
34
2.2.1.3. Deleção de account
Figura 8: Deletando uma account
Ao tentar deletar uma account, um popup irá pedir a confirmação dessa ação.
Durante esse processo de remoção, todos os usuários e recursos (VM, snapshots,
templates, volumes, etc) relacionados à account também serão removidos.
Figura 9: Confirmando a remoção da account
2.2.1.4. Configuração de acesso de uma account
Existem duas formas de configurar o acesso de uma account:
Editar os limites da account: essa é a forma mais básica de configurar o
acesso de uma account, a qual o administrador do sistema define limites
de recursos que a mesma pode acessar.
35
Figura 10: Editando os limites de uma account
Editar as settings da account: apresenta opções mais avançadas para con-
figurar o acesso dela.
36
Figura 11: Editando as configurações de uma account
2.2.1.5. Desabilitação de account
Essa opção impede os usuários da account de acessar e gerenciar qualquer
recurso, e automaticamente desliga as VMs criadas pelos mesmos. Ela pode
ser reabilitada posteriormente.
Figura 12: Desabilitando uma account
37
Figura 13: Confirmando a desabilitação da account
2.2.1.6. Bloqueio de account
Opção semelhante à de desabilitar account, no entanto ela apenas impede os
usuários de criar e gerenciar novos recursos. Recursos existentes não serão
afetados.
Figura 14: Bloqueando uma account
Figura 15: Confirmando o bloqueio da account
38
2.2.1.7. Restrição de acesso à API por IP
Dentro das configurações globais, de account ou domain
1
, pode-se alterar o
parâmetro api.allowed.source.cidr.list para definir uma lista (separada por vír-
gula) dos únicos endereços IPv4 e IPv6 com permissão para acessar a API do
CloudStack. O valor padrão é 0.0.0.0/0,::/0, permitindo acesso por qualquer IP.
Se houver disparidade entre as configurações, a de account tem prioridade.
É preciso que a configuração global api.source.cidr.checks.enabled seja true
para utilizar esta função.
Figura 16: Definindo duas faixas IPv4 e uma IPv6
O ACS utiliza o header X-Forwarded-For da requisição HTTP para identificar
o IP de origem das requisições à API. Isso permite a auditoria dos processos
realizados pelos usuários e a restrição de IP mencionada nesta seção. Este
header pode ser alterado pelo requisitante, portanto é necessário configurar
os firewalls e proxies que intermedeiam a comunicação com o ACS de forma
que isso seja identificado e o header repassado para o ACS contenha o IP de
origem real do requisitante.
2.2.2. Roles
Roles representam conjuntos de permissões que as contas possuem den-
tro da infraestrutura de nuvem. Além do conjunto de permissões, conforme
apresentado na Seção 2.2.1, roles definem os tipos das contas, que indicam o
escopo para gerenciamento dos recursos. Os tipos de conta são:
Admin: possui acesso a todos os recursos do ambiente, incluindo ele-
mentos de infraestrutura e configurações da plataforma. Essas contas
1
Se a configuração global enable.account.settings.for.domain for true.
39
também são chamadas de root admin.
DomainAdmin: possui acesso a todos os elementos alocados em seu
domínio, incluindo gestão de usuários.
ResourceAdmin: possui acesso a todos os elementos alocados em seu
domínio, exceto gestão de usuários.
User: possui acesso somente aos elementos alocados em sua conta.
O CloudStack providencia roles padrões, as quais não podem ser editadas
ou removidas. Contudo, é possível criar roles personalizadas, as quais têm-se
completo acesso. O procedimento para realizar essa ação é o seguinte:
2.2.2.1. Adição de role
1. Navegue até Roles e adicione uma nova role.
Figura 17: Iniciando a criação de uma nova role
2. Adicione a configuração básica da nova role:
40
Figura 18: Criando a nova role
O campo Based on é obrigatório. Ele pode se referir à tipos ou roles
existentes. Ele é utilizado para determinar qual o tipo de account que
pode utilizar tal role. Exempo: uma role do tipo Admin apenas pode ser
alocada em accounts do tipo Admin.
Sobre as duas opções disponíveis:
Type: define qual será o tipo de account que pode utilizar essa role.
Role: utiliza uma role existente para definir qual será o tipo de ac-
count que pode utilizar essa role e faz uma cópia das regras contidas
na mesma.
2.2.2.2. Visualização de detalhes de role
1. Navegue até os detalhes da role criada.
41
Figura 19: Acessando a recém-criada role
2.2.2.3. Customização de uma role
1. Customize as regras dessa role.
Figura 20: Customizando as regras da role
Para utilizar essa nova role é necessário criar uma nova account utilizando-a.
2.2.2.4. Remoção de role
1. Também é possível editar e remover roles, exceto por uma situação que
será melhor explicada adiante.
42
Figura 21: Iniciando a edição de uma role
Figura 22: Editando a role
Figura 23: Removendo uma role
Figura 24: Confirmando a remoção da role
43
Algumas observações importantes:
Roles que estão associadas a uma account não podem ser editadas ou
deletadas, sendo necessário remover a account primeiro.
Uma única role pode ser utilizada por várias accounts, mas uma account
pode utilizar apenas uma role.
Apesar de roles associadas a accounts não poderem ser editadas ou dele-
tadas, ainda é possível alterar as regras que compõem essa role, seja as
editando, removendo ou adicionando.
2.2.3. Domains
Agregação de várias accounts, geralmente usado para unificar accounts com
diferentes roles, mas que fazem parte da mesma organização. Domains per-
mitem isolar e limitar o acesso aos recursos da nuvem para as accounts que o
compõem. A arquitetura padrão do CloudStack possui um domain padrão,
chamado de ROOT, que é o “pai” de todos os outros domains, além de possuir
acesso total aos recursos da nuvem.
O Domain ROOT:
O domain ROOT é considerado o domain padrão. Ele não pode ser dele-
tado e nem pode ter seu acesso aos recursos da nuvem reduzidos. Ape-
nas usuários que fazem parte de accounts que utilizam a role root admin
podem ter acesso à esse domain. A partir desse domain são configurados
os demais.
44
Figura 25: Acessando a página de domains
2.2.3.1. Adição de domain
Ao adicionar um novo domain, ele será criado como subdomain (filho) do
domain atual. No exemplo apresentado, existe apenas um domain. Po-
rém, em organizações mais complexas, onde existem diversos domains,
é necessária atenção na criação da hierarquia.
Figura 26: Criando um novo domain
45
Figura 27: Definindo o nome do novo domain
Figura 28: Visualizando o domain criado
Figura 29: Selecionando o domain criado
2.2.3.2. Configuração de domain
Configurando o novo domain:
Por padrão, novos domains herdam do parent domain (pai) os privilégios
de acesso aos recursos. Porém, esses acessos podem ser alterados.
46
Figura 30: Iniciando a edição do novo domain
2.2.3.3. Definição de acessos do domain
Definindo os novos acessos do domain:
Por padrão, o valor -1 indica limites infinitos, ou seja, accounts desse do-
main podem utilizar todos os recursos da nuvem. O valor 0 indica que
elas não podem utilizar aquele recurso. Qualquer valor maior que 0 de-
fine qual o valor máximo que as accounts daquele domain podem utilizar.
47
Figura 31: Editando o domain
Com o novo domain criado e configurado, o próximo passo é adicionar ac-
counts ao mesmo. Atualmente, não é possível migrar uma account de um do-
main para outro. Portanto, em estruturas nas quais os domains gerenciam a
nuvem, é necessário criá-los antes de criar as accounts.
2.2.3.4. Reestruturação da árvore de domínios
Para reestruturar a árvore de domínios, pode-se utilizar a API moveDomain
2
:
move domain domainid=<id_do_domain> parentdomainid=<id_do_parent_domain_destino>
É importante ressaltar que, para que o domain seja movido, é necessário seguir
as seguintes restrições:
O domain e o parent domain devem estar ativos.
2
O parâmetro parentdomainid é opcional. Caso não seja informado, o domain será movido
para o parent domain ROOT.
48
O novo parent domain não pode ser um subdomain do domain.
Não deve existir um domain com o mesmo nome do domain a ser movido
no novo parent domain.
O novo parent domain deve ter acesso a todos os recursos que o domain
e seus subdomains utilizam (redes shared e affinity groups).
2.2.4. Users
Representa um usuário que faz parte de uma account e tem um username
único dentro do domain. Usuários dentro do mesmo domínio conseguem se
comunicar e ver o que outros usuários estão fazendo, mas não conseguem ter
acesso à usuários que fazem parte de outros domínios. Eles possuem os pri-
vilégios concedidos para a account e atuam dentro de um domínio definido.
Dependendo da account que o usuário faz parte, o mesmo terá privilégios di-
ferentes dentro do domínio. Por exemplo:
Usuários sem privilégio de administrador podem apenas utilizar os recur-
sos disponíveis dentro do domínio, respeitando as limitações da account
do qual faz parte e as limitações da role utilizada pela account
Usuários administradores podem gerenciar os recursos, além de também
poderem gerenciar accounts e usuários dentro do domínio.
É possível adicionar vários users à mesma account, cada um deles possu-
indo um nome e senha próprios. Também é possível editar ou deletar users
criados. Porém, essas duas operações são permitidas para um usuário
admin.
2.2.4.1. Adição de user
Os passos para adicionar um novo user são:
1. até Accounts.
49
Figura 32: Navegando até a página de accounts
2. Selecione em qual account o novo user será adicionado.
Figura 33: Selecione a account que o novo user fará parte
3. Navegue até a página de users dessa account.
50
Figura 34: Veja os users da account
4. Adicione um novo user.
Figura 35: Adicionando um novo user
Figura 36: Defina os dados do novo user e salve as alterações
2.2.4.2. Edição de user
Para editar um user:
51
1. Repita os passos 1, 2 e 3 da explicação anterior, mas dessa vez selecione
a account que contém o user que deseja editar.
2. Clique no user que deseja editar.
Figura 37: Selecionando o user para editá-lo
3. Clique em editar o user.
Figura 38: Iniciando a edição
4. Realize as alterações necessárias e salve.
Figura 39: Editando o user
52
2.2.4.3. Deleção de user
Para deletar um user:
1. Repita todos os passos (2) para chegar até a página de detalhes sobre o
user.
2. Remova o user.
Figura 40: Deletando um user
Figura 41: Confirme a remoção do user
2.2.4.4. Desabilitação/habilitação de user
Também é possível desabilitar um user, impedindo-o de acessar e gerenciar
qualquer recurso.
Figura 42: Desabilitando um user
Para liberar o acesso novamente é necessário que um administrador do
Domain habilite o user desabilitado.
53
Figura 43: Selecionando o user que deseja reabilitar
Figura 44: Habilitando um user
2.2.4.5. Políticas de senha
A fim de aumentar a segurança dos usuários do ambiente de nuvem, o opera-
dor pode habilitar políticas de senha (regras que a senha deve seguir), que po-
dem ser acessadas nas configurações globais. Vale ressaltar que essas regras
somente são impostas em senhas de usuários, outras senhas, por exemplo de
VMs, não são afetadas.
Atualmente existem 7 opções de políticas de senhas disponíveis:
password.policy.allowPassw ordToContainUsername: indica se a senha
pode conter o nome do usuário.
54
password.policy.mi nimum.digits: quantidade mínima de dígitos presen-
tes.
password.policy.minimum.length: tamanho mínimo.
password.policy.min imum.lowercase.letters: quantidade mínima de le-
tras minúsculas.
pa s s w ord.policy.minimum.special.ch a racters: quantidade mínima de ca-
racteres especiais.
password.policy.min imum.uppercase .letter s: quantidade mínima de le-
tras maiúsculas.
password.policy.regex: expressão regular que a senha deve seguir.
Figura 45: Encontrando as configurações
Por padrão, não nenhuma restrição para a criação da senha, todas as
configurações mencionadas acima são definidas da forma mais abrangente
possível. Cabe ao operador identificar se necessidade de implementar essas
medidas de segurança e configurar as políticas de senha de acordo.
55
2.2.4.6. Desabilitação de user por erro de senha
O ACS possui a funcionalidade de desabilitar um user por realizar muitas ten-
tativas incorretas de login. Por padrão, é necessário que o usuário erre a senha
5 vezes seguidas para ser desabilitado. Esse valor pode ser alterado na confi-
guração global incorrect.login.attempts.allowed.
Para habilitá-lo novamente, siga os passos descritos na seção Desabilitar/Ha-
bilitar um user.
Figura 46: Mensagem exibida ao tentar realizar login com user desabilitado
2.2.4.7. Gerência de chaves de API dos users
Chaves de API são credenciais de acesso fornecidas de maneira a autorizar o
uso de funcionalidades específicas de uma ou mais APIs. Elas muitas vezes
atuam como um identificador único de autenticação de usuários. No Cloud-
Stack elas podem ser utilizadas para realizar operações e integrações (muitas
vezes de forma automatizada), acessar dados de uso e ferramentas específicas
do CloudStack para desenvolvimento, testes e integração.
O ACS permite que os usuários gerem suas próprias chaves e que adminis-
tradores criem e atualizem chaves de acesso para os seus usuários. Algumas
56
das operações possíveis com elas são:
1. registerUserKeys: Esse comando pede como entrada o ID do usuário para
qual será gerada as chaves de acesso, e como retorno apresenta a chave
da API e a chave secreta registrada para o ID informado.
2. getUserKeys: Retorna as chaves registradas para o ID de usuário infor-
mado na entrada.
3. updateUser: Dentro do contexto de chaves de acesso, o comando upd
ateUser permite que as chaves do usuário sejam atualizadas, para isso,
basta informar o ID do usuário e ambos os parâmetros userapikey e use
rsecretkey
Para gerar as chaves pela UI, é preciso editar o usuário para o qual deseja-se
gerá-las. Siga os passos descritos em Editar um user e clique no botão na parte
superior direita conforme a imagem ??.
Figura 47: Gerar chaves de acesso para um usuário
fig:generate-keys
Após clicar no botão será apresentada uma janela solicitando a confirmação
da ação.
Figura 48: Mensagem de confirmação para gerar chaves de acesso
57
Basta confirmar para que o par de chaves seja gerado e registrado para esse
usuário.
2.2.4.8. Uso das chaves de API no CloudMonkey
Para utilizar as chaves de acesso no CloudMonkey é possível defini-las atuali-
zando diretamente no arquivo de configuração
3
. Basta preencher os parâme-
tros apikey e secre tkey adequadamente no arquivo e salvá-lo. A próxima vez
que o CloudMonkey iniciar, ele irá utilizar as chaves configuradas.
asyncblock = true
timeout = 1800
output = json
verifycert = true
profile = mylab
[mylab]
url = http://my-local-lab/client/api
domain = /
apikey = IsBXfV_Km9sgbc3zYsf6fiia2z19qCnB80S7quN2lSy0SvD97A
secretkey = crmgT-n820MGl8EYZ37yRvnjDjfQyV8FWHBb5EmFxN5JiqZg1ZHRk6vsNw
Outra forma de utilizar as chaves usando o CloudMonkey é configurar ma-
nualmente os parâmetros. Para isso, abra o CloudMonkey e execute os coman-
dos a seguir:
(mylab) > set username your-username
(mylab) > set domain your-domain
(mylab) > set apikey YOUR-API-KEY
(mylab) > set url https://your-lab/client/api
(mylab) > set secretkey YOUR-SECRET-KEY
Após finalizar esses passos execute um comando de syn c para verificar se
as alterações surtiram o efeito desejado.
(mylab) > sync
Discovered 623 APIs
2.2.4.9. Autenticação de dois fatores
O CloudStack tem suporte à autenticação de dois fatores (2FA), na qual o se-
gundo fator utilizado pode ser o Google Authenticator, qualquer autenticador
com suporte ao algoritmo TOTP ou um PIN estático.
3
Este arquivo normalmente fica na pasta home/.cmk/config ou em
home/snap/cloudmonkey/current/.cmk/config dependendo da forma como foi instalado.
58
Esta camada extra de segurança pode ser configurada para um domínio ou
globalmente pelo administrador através das seguintes configurações:
Configuração Descrição Valor
Padrão
enable.user.2fa Determina se a autenticação de
dois fatores está hablitada.
false
mandate.user.2fa Determina se a autenticação de
dois fatores é obrigatória aos
usuários.
false
user.2fa.default.provider Provedor padrão de autenticação
de dois fatores.
totp
Ao ativar a autenticação de dois fatores, os usuários podem configurar o
2FA acessando seus perfis.
Figura 49: Configurando a autenticação de dois fatores.
No pop-up, o usuário deve selecionar um dos provedores e realizar a res-
pectiva configuração.
Figura 50: Opções de provedores de autenticação de dois fatores.
59
Ao escolher o Google Authenticator ou algum outro autenticador com su-
porte ao algoritmo TOTP, é necessário configurar a conta no respectivo aplica-
tivo escaneando o código QR ou utilizando a chave de configuração fornecida
pelo CloudStack. Após a configuração, o usuário deve fornecer o código gerado
pelo aplicativo para realizar o login.
Figura 51: Configurando a autenticação de dois fatores com TOTP.
Figura 52: Verificação com TOTP durante o login.
60
Ao escolher static PIN, o usuário deve fornecer durante o login o código ge-
rado pelo CloudStack no setup do 2FA.
Figura 53: Configurando a autenticação de dois fatores com static PIN.
Figura 54: Verificação com static PIN durante o login.
O usuário pode desativar o 2FA a qualquer momento em seu perfil
4
.
4
Caso a configuração mandate.user.2fa seja tr ue, o usuário deverá reconfigurar a autenti-
cação no próximo login.
61