
Me likey.
In sfarsit am impresia ca s-au prins si astia de la DC Comics cum sa faca un film cu super eroi care sa nu suga. Sper ca Justice League sa fie la fel de bun sau poate chiar mai bun ca au loc de povesti pe acolo.

Me likey.
In sfarsit am impresia ca s-au prins si astia de la DC Comics cum sa faca un film cu super eroi care sa nu suga. Sper ca Justice League sa fie la fel de bun sau poate chiar mai bun ca au loc de povesti pe acolo.
De anul trecut am trecut incet, incet spre DevOps. Mai bag si pe security, da mai rar in ultima vreme.
Doar Ops n-am mai facut de ceva vreme si evident, ca m-am mai ramolit un pic pe partea asta. Iar cu Dev-ul din DevOps o lalai in Python, ca e bun pentru a programa chestii de sistem.
Pentru un client nou, am avut de facut un server de deployment pentru niste servere fizice astfel incat sa bagi serverul poaspat scos din cutie in priza, sa-l conectezi la retea si 15min mai tarziu sa-l ai instalat. Bine, depinde de viteza mirror-ului asta, ca prin unele tari merge intrnetul de zici ca’l aduc cu galeata.
Ca si distro am folosit Ubuntu 16.04 LTS pentru ca $reasons.
Partea usoara e sa instalezi un server de TFTP si un server de DHCP care sa aloce IP-uri si sa spuna la clienti cum se cheama fisierul pentru BOOTP.
Ca si server de deployment am folosit tot un Ubuntu 16.04, sa fie instalarea intre prieteni sa mearga bine si fara probleme :))
Si pentru ca multe servere, evident ceva care sa faca orchestrare si management. Si ca ziceam mai sus ca o lalai cu Python, SaltStack a fost raspunsul.
Asa ca, cum se face sa deployezi multe servere fizice in vremea lui AWS, GCP si Azure:
filename "pxelinux.0";
systemctl enable isc-dhcp-server si systemctl start isc-dhcp-server.
Ziceam mai sus ca inainte de reboot, pot da comenzi in sistemul nou instalat sa-l configurez cumva inainte sa porneasca prima oara.
d-i preseed/late_command string \ in-target wget -P /tmp/ -t 0 -c http://A.B.C.D/myscript.sh; \ in-target chmod +x /tmp/myscript.sh; \ in-target /tmp/myscript.sh; \ in-target wget -P /tmp/ https://repo.saltstack.com/apt/ubuntu/16.04/amd64/latest/SALTSTACK-GPG-KEY.pub; \ in-target apt-key add /tmp/SALTSTACK-GPG-KEY.pub; \ /bin/echo "dev.raid.speed_limit_max = 1000000" >> /target/etc/sysctl.conf; \ /bin/echo "deb http://repo.saltstack.com/apt/ubuntu/16.04/amd64/latest xenial main" > /target/etc/apt/sources.list.d/saltstack.list; \ in-target apt-get update; \ in-target apt-get install -y salt-minion
Se pot da comenzi succesive in late_command. Ce trebuie stiut:
Ziceam ca pentru orchestrare si configurare am mers pe SaltStack. Eu pentru ca are minioni, colegul de proiect ca i s-a luat de Puppet. Bine, nici eu nu m-am omorat dupa Puppet ca e scris in Ruby.
Cine a facut SaltStack asta a fost inteligent si minionii daca n-au nici o configuratie, o sa incerce sa se lege la salt.domain.name. Si asta inseamna ca tot ce trebuie sa am este un salt-master instalat si configurat acolo un pic, configurat DNS-ul atfel incat salt.domain.com sa bata la un serverul pe care ruleaza salt-master si, dupa ce fiecare masina fizica se rebuteaza, minionul se va conecta automat la salt-master. Magie adevarata.
salt-key –accept-all este raspunsul la intrebarea cum confirm ca minionii inregistrati sunt ai mei :)