Βήμα 1: Εγκατάσταση του Ansible
Βήμα 2: Ρύθμιση κλειδιών SSH
Βήμα 3: Test Ansible
Το Ansible είναι ένα σύστημα διαχείρισης παραμέτρων. Η διαχείριση διαμόρφωσης επιτρέπει την αυτόματη ανάπτυξη, διαμόρφωση και κεντρική διαχείριση των εφαρμογών. Αυτό είναι βολικό εάν πρέπει να αναπτύξετε την εφαρμογή σας σε πολλούς διακομιστές χωρίς να χρειάζεται να το κάνετε με μη αυτόματο τρόπο σε όλους τους διακομιστές σας. Μπορείτε επίσης να προσθέσετε πανομοιότυπους διακομιστές στο σύμπλεγμα σας. Θα μπορούσατε, για παράδειγμα, να ρυθμίσετε έναν εξισορροπητή/cluster/failover φορτίου.
Το Ansible παρέχει διαχείριση διαμόρφωσης, ώστε να μπορείτε να προσθέτετε πανομοιότυπους διακομιστές στο σύμπλεγμα σας πολύ εύκολα. Μπορείτε επίσης να κάνετε κεντρική διαχείριση για όλους τους διακομιστές σας σε ένα μέρος. Μπορείτε να εκτελέσετε ένα apt-get updateσε όλους τους διακομιστές ταυτόχρονα!
Προσωπικά, προτιμώ το Ansible γιατί κάνει τη δουλειά χωρίς να χρειάζεται να εγκαταστήσετε με μη αυτόματο τρόπο λογισμικό σε όλους τους διακομιστές σας. Κάνει ανάπτυξη και διαχείριση μέσω SSH. Το SSH είναι ένα τυπικό μέσο για τη διαχείριση διακομιστή, αλλά ένα μειονέκτημα εδώ είναι ότι πρέπει να ενεργοποιήσετε το SSH. Κάποιοι μπορεί να θεωρήσουν ότι αποτελεί κίνδυνο ασφάλειας, αν και το Ansible λειτουργεί με κλειδιά SSH, τα οποία είναι πιο ασφαλή.
Σε αυτό το σεμινάριο θα δούμε πώς μπορούμε να εγκαταστήσουμε το Ansible στο Ubuntu 14.04.
Βήμα 1: Εγκατάσταση του Ansible
Μπορείτε να εγκαταστήσετε το Ansible με:
apt-get install ansible
Πρέπει να βάλετε όλους τους διακομιστές που θέλετε να διαχειριστείτε με το Ansible στο /etc/ansible/hostsαρχείο.
Θα χρειαστεί να σχολιάσετε όλες τις γραμμές. Μεταβείτε στην τελευταία γραμμή του hostsαρχείου για να δημιουργήσετε μια κατηγορία. Ας υποθέσουμε ότι έχετε ένα σύμπλεγμα διακομιστών ιστού και βάσεων δεδομένων. Θα μπορούσατε να δημιουργήσετε δύο ξεχωριστές κατηγορίες: webκαι db. Εάν θέλετε να κάνετε μια αλλαγή σε όλους τους διακομιστές βάσης δεδομένων, θα μπορούσατε να χρησιμοποιήσετε dbως επιλογή, ώστε να επηρεάζονται μόνο όλοι οι διακομιστές βάσης δεδομένων και όχι άλλοι διακομιστές, όπως οι διακομιστές ιστού σας στην webκατηγορία.
Παράδειγμα:
[web]
localhost ansible_ssh_host=127.0.0.1
web1 ansible_ssh_host=192.168.2.2
web2 ansible_ssh_host=0.0.0.0
[db]
db1 ansible_ssh_host=192.168.2.3
db2 ansible_ssh_host=192.168.2.4
db3 ansible_ssh_host=192.168.2.5
db4 ansible_ssh_host=192.168.2.6
Μορφή: name ansible_ssh_host=ip
Σημειώστε ότι εάν χρησιμοποιείτε το Ansible 2.0, το ssh_τμήμα έχει καταργηθεί. Αντί για χρήση ansible_host.
nameείναι απλώς ένα όνομα που αναφέρεται στον διακομιστή σας, ipείναι η πραγματική IP.
Αυτό λέει Ansible ότι έχετε 3 διακομιστές web σχετικά με τις διευθύνσεις IP 127.0.0.1, 192.168.2.2και 0.0.0.0και 4 εξυπηρετητές βάσεων δεδομένων σχετικά με τις διευθύνσεις IP 192.168.2.3-6.
Βήμα 2: Ρύθμιση κλειδιών SSH
Το Ansible λειτουργεί με κλειδιά SSH. Εάν το κλειδί SSH στους κόμβους δεν είναι το ίδιο με τον διακομιστή Ansible, θα εμφανιστεί ένα σφάλμα. Επομένως, πρέπει να δημιουργήσουμε ένα κλειδί SSH.
ssh-keygen
Τώρα προσθέστε το κλειδί SSH στους κόμβους σας. Εάν όλοι οι κόμβοι σας βρίσκονται στο Vultr, μεταβείτε στον διαχειριστή κλειδιών Vultr SSH και προσθέστε το δημόσιο κλειδί σας. Μπορείτε να το βρείτε εδώ:
cat ~/.ssh/id_rsa.pub
Στη συνέχεια, κατά την ανάπτυξη του διακομιστή σας, επιλέξτε το κλειδί SSH στην ενότητα "Κλειδιά SSH".
Βήμα 3: Test Ansible
Για να δείτε εάν μπορείτε να κάνετε ping σε όλους τους διακομιστές σας στο hostsαρχείο, μπορείτε να χρησιμοποιήσετε την ακόλουθη εντολή:
ansible -m ping all
Αυτό επιβεβαιώνει εάν οι διακομιστές σας είναι συνδεδεμένοι ή όχι.
Μπορείτε επίσης να εκτελέσετε μια εντολή:
ansible web -m command -a 'shutdown -h now'
Μόλις εκτελέσαμε την εντολή shutdown -h nowσε όλους τους διακομιστές της webκατηγορίας.
Σε αυτό το σημείο, το Ansible είναι ρυθμισμένο και έτοιμο για χρήση. Φαίνεται αρκετά απλό, σωστά; Λοιπόν, δεν έχουμε καλύψει ακόμα το πιο ισχυρό χαρακτηριστικό του Ansible: τα playbooks. Μάθετε περισσότερα για τα βιβλία παιχνιδιών σε αυτόν τον οδηγό .