Your SlideShare is downloading. ×
0
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)

1,485

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,485
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Python no iG (Automação de Data Centers) Bruno Marcondes <brmarcondes@ig.com> || @bmarcondes Eduardo S. Scarpellini <escarpellini@ig.com> || @escarpellini
  • 2. O início de um novo Data Center • Deploy da primeira máquina (servidor de instalação) • Instalação manual do SO. • Script em Python utlizando fabric para deploy do puppet + manifests. – Puppet é o responsável pelo seu auto-deploy (puppetmasterd) + servidor BOOTP, TFTP, etc.
  • 3. Inventário de hardware  Distribuição diskless (PXE+NFS).  Coleta de informações via lshw (XML).  POST de dados para fla (RabbitMQ).  Consumidor da fla para persistência em base central (MySQL).  Checagem de integridade da informação, se esta já existr previamente.  Hardware disponível para consulta ou instalação.  [re]boot do servidor via IPMI e instalação com sistema operacional defnitvo.
  • 4. Fluxo de Instalação de hardware Manual / Local Remoto / Automatizado
  • 5. Cobbler • Permite a rápida confguração de um ambiente de instalação via rede (provisionamento de servidores). • Garante a harmonia de: o DHCP/BOOTP (templates). o TFTP + syslinux (templates). o Kickstart (templates). o Repositórios de pacotes. • Suporte a: o IPMI (power management: DRAC, iLO, etc). o Triggers (integração com webservices) o Diversas distribuições, versões e arquiteturas de GNU/Linux. • Interfaces: o CLI (command line) o XMLRPC o WEB (Cobbler Web)
  • 6. Gerenciamento de Confguração
  • 7. Puppet • Ruby. • Modular. • XMLRPC/REST (+SSL). • Meta-linguagem para defnição de manifests/classes. o Acesso a funcões/código externos (ruby). o Herança / especialização de classes. • Classes compostas por recursos abstratos (domínio do cliente). • Interdependência + Eventos (Triggers). • iG: • nodeclassifer.py • Mercurial + Python Hooks
  • 8. Administração Centralizada
  • 9. Func • Execução de módulos/funções de maneira massiva (ad hoc). o overlord => minions. • XMLRPC (+SSL) • Arquitetura modular (fácil desenvolvimento). o Ex.: command, jboss, rpm, iptables, process, ping, etc. • Interfaces o Python API  import func.overloard.client o CLI  func 'home-ws-*.tld' call command run 'htpd -V'  func 'blig-ws-[123].tld' call hardware info
  • 10. Monitoração
  • 11. Collectd • Performátco e leve. o C. o Alta resolução/granularidade (segundos). • Plugins. o Apache, Nginx, Mysql, Bind, Varnish, RRD, Nagios, etc. • Extensões o Python o Java. o Perl. o Bash (exec). • Network o Push de dados para o servidor (passivo). o Multcast (auto-discovery). o Visualização. – RRD plugin + collectd-web.
  • 12. Integração
  • 13. Control Staton  Dashboard unifcado para as ferramentas citadas. – Python/Django + MySQL + RabbitMQ. • Facilidade/Plugins/Reaproveitamento/Performance.  Ponto único para as informações relevantes. – Dados de inventário. – WorkFlows / Requisições. – CRUDs. – Mashup (gráfcos). – Visões consolidadas/alto-nível para sites, serviços e pools.  Webservices (REST) para integração entre serviços de backend.
  • 14. Control Staton
  • 15. Control Staton

×