Como automatizamos todo o ciclo de vida do servidor

Olá, Habr! Meu nome é Alexey Nazarov . Atuo na área de automação no departamento de administração de sistemas de infraestrutura do Sistema Nacional de Cartões de Pagamentos (NSPK JSC) e gostaria de contar um pouco sobre nossos produtos internos que nos auxiliam no desenvolvimento.



Se você ainda não leu o post sobre nossa infraestrutura, está na hora! Depois de ler este post, gostaria de falar sobre alguns dos produtos internos que desenvolvemos e implementamos.



imagem



Nossa empresa, como qualquer outra, possui regulamentos e processos de negócios próprios. Um deles é aquele segundo o qual criamos servidores ou stand de servidores a pedido do Jira ServiceDesk. O servidor possui um administrador funcional, ou seja, proprietário. Os servidores também têm um status (Teste, Produtivo, UAT, etc.). Devido a status e outras características, os servidores devem estar localizados em seu segmento, data center, armazenamento de dados, rede, etc. Portanto, para criar um servidor, primeiro você precisa: criar um servidor no VMware, definir seu nome, ip, dns e outros parâmetros importantes e, em seguida, executar o ansible-playbook.



História do desenvolvimento



2015 . , . - c , . 1- : , , .. 1- . , . 1-.



excel-. ip phpIPAM https://phpipam.net/. phpIPAM — open source . . 700.



: , Windows, Linux. , .



. , . . :



  1. , , ...
  2. Vcenter
  3. bash- ansible-playbook’
  4. excel-
  5. ip phpIPAM
  6. ,


, . .



. phpIPAM . . , excel, .



Python, - Django. CMDB . . ? …





. 5000 . , - .

:



imagem



, , .



imagem



:



  • ( , , )
  • , , /


imagem







:



1) ip phpIPAM

2) Jira ServiceDesk ( )

3) dcTrack (https://www.sunbirddcim.com/)



1) REST API Zabbix

2) REST API

3) 1 Active Directory , , , . , , , .



DitNet



10 . , - PCI-DSS.



json , VMware. json rsync ftps — .



, . bashsible, ansible , molecule (https://molecule.readthedocs.io/), VMware . VMware ( 900).



. Distributed Switch «test2», 192.168.1.0|24_test2. , json phpIPAM VMware.



:



1) DitNet VMware (, , , .). json



2) VMware



3) , Jira ServiceDesk jql- «». VMware (. ). , .





4) «», Jira ServiceDesk « »



5) json (, dns, ip ..) ( )



6) DitNet . ( : « »)



7) DitNet 5 Celery beat, ,



8) Celery worker :



a. VMware ( pyvmomi)

b. gitlab

c. Ansible-playbook ( https://docs.ansible.com/ansible/latest/dev_guide/developing_api.html)

d. Molecule

e.



9) . – Jira ServiceDesk. - , Vmware Ansible.



Ditnet :



  • . Ansible setup. . Windows Linux.
  • SNMP . , BIOS, IPMI ..
  • Freeipa (HBAC, SUDO ), Active Directory.
  • . :


imagem



, DitNet, . .





DitNet . .

Gitlab . Ansible-playbook, Gitlab CI . Pipeline:



imagem



pipeline , unit-. , , .

Ansible-playbook Ansible Tower (AWX) , .



DitNet docker, . docker-compose. docker-compose services systemd.







  • … !


P.S. ! !




All Articles