23
Gustavo Ribeiro @gustavonfr Deploying Infrastructure-as-a-Service with CloudStack

Deploying infrastructure as-a-service with cloudstack

Embed Size (px)

Citation preview

Page 1: Deploying infrastructure as-a-service with cloudstack

Gustavo Ribeiro@gustavonfr

www.veezor.com

Deploying Infrastructure-as-a-Service with CloudStack

Page 2: Deploying infrastructure as-a-service with cloudstack

Historia

Originalmente fundada sob o nome de VMOps - 2008 Lançado o projeto open source CloudStack e mudança de

nome para Cloud.com – May 2010 Adquirida pela Citrix – July 2011 Último release do Cloudstack: 3.0.2

Page 3: Deploying infrastructure as-a-service with cloudstack

O que é o CloudStack?

Plataforma Open Source de IaaS que suporta múltiplos hypervisors, redes complexas, firewall, load balancer, configuração de VPN e alta disponibilidade, num ambiente que chamamos de multi-tenant. Com o CloudStack você pode ter sua própria nuvem e oferecer serviço de IaaS( pública ), utilizar somente dentro da sua empresa ( privada ) ou utilizar as vantagens da cloud pública e privada e ter um ambiente híbrido.

Page 4: Deploying infrastructure as-a-service with cloudstack

O que ele realmente faz ?

Provê separação de ambientes variados Alocação de recursos computacionais Expõe pro usuários final a abilidade de provisionar vários

serviços computacionais de forma controlada (alocação de VLAN, regras de firewall, load balancer, criação de VM, etc)

Gerenciamento de Alta Disponibilidade Massivamente escalável Permite aplicar limites de recursos Medição ao longo do tempo (billing)

Page 5: Deploying infrastructure as-a-service with cloudstack

Multi-tenant

Abstração para o usuário final Sem interação direta com o hypervisor Sem conhecimento de detalhes do storage

Separação da camada de rede Conta com uma VLAN dedicada/isolada (Tagged

Networking) Isolamento Layer 3 também conhecido como Security

Groups para redes untagged Opção de uso de hardware dedicado

Page 6: Deploying infrastructure as-a-service with cloudstack

Suporte a múltiplos hypervisors

KVM XenServer Xen Cloud Platform / XCP VMware Oracle VM

Page 7: Deploying infrastructure as-a-service with cloudstack

Deployment

Page 8: Deploying infrastructure as-a-service with cloudstack

Management Server

Interface web para o administrador e o usuário final API Gerencia a aloção de VM para um host particular, aloção

de redes públicas e privadas para contas particulares, storage como discos virtuais

Gerenciamento de snapshots, templates e ISOs, com a possibilidade de replicar ao longo de diferentes data centers

Ponto único de configuração da nuvem.

Page 9: Deploying infrastructure as-a-service with cloudstack

Cloud Infrastructure

Divisão de recursos em níveis no CloudStack Zonas

• Pods– Clusters

Page 10: Deploying infrastructure as-a-service with cloudstack

Zona

Em geral é usado como designar uma localização geográfica específica (datacenter).

Cada zona possui seu próprio fornecimento de energia e uplink

Compartilha o storage secundário(ISO, templates e snapshots) ao longo de toda zona.

São visíves ao usuário final

Page 11: Deploying infrastructure as-a-service with cloudstack

Pod

Em geral é usado para se referir a um rack ou a fileria deles

Hosts nos mesmo pod estão na mesma subnet. Não são visíveis ao usuário final

Page 12: Deploying infrastructure as-a-service with cloudstack

Cluster

Normalmente de 8 a 15 máquinas por cluster: Mesmo hypervisor (e mesma versão) Mesmos CPUs Mesma estratégia de networking (i.e. /dev/eth0 está

conectada a mesma rede em toda as máquinas) Uso do storage primário(Discos das Vms) Seria um pool no XenServer, set no KVM, Vmware cluster

no vCenter. Capaz de fazer live-migration sem interrupção pro

usuário

Page 13: Deploying infrastructure as-a-service with cloudstack

Cloud Infrastructure

Page 14: Deploying infrastructure as-a-service with cloudstack

Networking

CloudStack oferece 2 tipos de cenários de rede: Basic: Provê uma única rede onde o guest é isolado

por um firewall layer 3 conhecido como Security Group(filtragem pelo ip de origem)

Advanced: Múltiplas redes para os guests. Isoladas(VLAN) ou compartilhadas (isoladas via layer 3 security groups). Uso de redes públicas.

Page 15: Deploying infrastructure as-a-service with cloudstack

Networking

Serviços gerenciados pelo CloudStack DHCP alocação de VLAN Firewall NAT/Port forwarding Routing VPN Load Balancing

Page 16: Deploying infrastructure as-a-service with cloudstack

Networking

CloudStack pode também gerenciar hardwares físicos de rede (ou alternativas virtualizadas) F5-Big IP NetScaler Juniper SRX

Page 17: Deploying infrastructure as-a-service with cloudstack

Security groups

Isolamento tradicional feito por VLAN VLANs isola bem,porém tem alguns problemas de

escalabilidade O padrão tem um limite de 4096 VLANS Hardware que atualmente suporta até 4096 VLANs é

MUITO caro. Independentemente, pessoas tendem a não gostar de ter

limites arbitrários sobre o que eles podem fazer.

Amazon e outros usam isolamento layer 3 (Security Groups)

Page 18: Deploying infrastructure as-a-service with cloudstack

Storage Primário

Associado a um cluster para armazenar os discos das Vms

Suporte a NFS e iSCSI de acordo com os hosts.

Performance de disco

Page 19: Deploying infrastructure as-a-service with cloudstack

Storage Secundário

Utilizado para armazenar templates, ISOs e snapshots Requer: NFS, mínimo de 100 GB, mesma zona dos guests

o qual vai servir,

Page 20: Deploying infrastructure as-a-service with cloudstack

O que o usuário consome

Service Offerings, definido pelo administrador CloudStack , provê escolha de CPU speed, número de CPUs, tamanho de RAM

Disk Offerings, definido pelo administrador CloudStack, provê a escolha do tamanho do disco no storage primário.

Network Offerings, definido pelo administrador CloudStack, descreve como será entregue rede para o usuário, como virtual router ou dispositivos externos.

Page 21: Deploying infrastructure as-a-service with cloudstack

Dashboard

Page 22: Deploying infrastructure as-a-service with cloudstack

Referências

http://cloudstack.org Docs: http://docs.cloudstack.org IRC: #cloudstack Freenode Twitter: @cloudstack Mailing Lists

https://lists.sourceforge.net/mailman/listinfo/cloudstack-users https://lists.sourceforge.net/mailman/listinfo/cloudstack-devel

Forums

Page 23: Deploying infrastructure as-a-service with cloudstack

Crash Course in Open Source Cloud Computing

by Gustavo Ribeiro is licensed under a Creative Commons Attribution-ShareAlike 3.0 United States License.