Wie wir den gesamten Serverlebenszyklus automatisiert haben

Hallo Habr! Ich heiße Alexey Nazarov . Ich beschäftige mich mit der Automatisierung in der Abteilung für die Verwaltung von Infrastruktursystemen im Nationalen Zahlungskartensystem (NSPK JSC) und möchte ein wenig über unsere internen Produkte erzählen, die uns bei der Entwicklung helfen.



Wenn Sie den Beitrag über unsere Infrastruktur noch nicht gelesen haben , ist es Zeit! Nachdem ich diesen Beitrag gelesen habe, möchte ich über einige der internen Produkte sprechen, die wir entwickelt und implementiert haben.



Bild



Unser Unternehmen hat wie jedes andere seine eigenen Vorschriften und Geschäftsprozesse. Eine davon ist die, nach der wir auf Anfrage des Jira ServiceDesk Server oder Serverstände erstellen. Der Server hat einen funktionalen Administrator, d.h. Inhaber. Server haben auch einen Status (Test, Produktiv, UAT usw.). Aufgrund des Status und anderer Merkmale müssen sich die Server in ihrem Segment, Rechenzentrum, Datenspeicher, Netzwerk usw. befinden. Um einen Server zu erstellen, müssen Sie zunächst: einen Server in VMware erstellen, seinen Namen, seine IP-Adresse, DNS und andere wichtige Parameter festlegen und dann das Ansible-Playbook ausführen.



Entwicklungsgeschichte



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 . , - .

:



Bild



, , .



Bild



:



  • ( , , )
  • , , /


Bild







:



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.
  • . :


Bild



, DitNet, . .





DitNet . .

Gitlab . Ansible-playbook, Gitlab CI . Pipeline:



Bild



pipeline , unit-. , , .

Ansible-playbook Ansible Tower (AWX) , .



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







  • … !


P.S. ! !




All Articles