Ρύθμιση του Ansible για Διαχείριση διαμόρφωσης στο Ubuntu 14.04: Δημιουργία βιβλίων

Ρύθμιση του Ansible για Διαχείριση διαμόρφωσης στο Ubuntu 14.04: Δημιουργία βιβλίων

Τα Playbook στο Ansible είναι αυτό που κάνει το Ansible τόσο εύχρηστο. Τα Playbook επιτρέπουν την εκτέλεση εργασιών ρουτίνας με πολλές ενότητες. Πότε πρέπει να χρησιμοποιούμε playbooks;

Ας ρίξουμε μια ματιά σε μια εργασία ρουτίνας συντήρησης: την ενημέρωση των διακομιστών σας. Δεν θα χρειαστεί να χρησιμοποιήσουμε ένα playbook για αυτό, δεδομένου ότι είναι μόνο μία εντολή: apt-get update. Θα μπορούσαμε να χρησιμοποιήσουμε μόνο μία εντολή για να ενημερώσουμε το λογισμικό σε όλους τους διακομιστές μας. Ωστόσο, για την ανάπτυξη κάτι σαν διακομιστή ιστού ή βάσης δεδομένων, χρειάζεται περισσότερη δουλειά: όχι μόνο μία εντολή. Τα Playbooks είναι η αρχή για αυτήν την περίπτωση. Σας επιτρέπουν να χρησιμοποιείτε πολλαπλές λειτουργικές μονάδες, οι οποίες είναι εντολές που μπορούν να εκτελεστούν σε έναν διακομιστή. Για παράδειγμα, υπάρχουν λειτουργικές μονάδες για την αντιγραφή αρχείων και την εκτέλεση εντολών φλοιού μέσω SSH.

Πώς χρησιμοποιούμε λοιπόν τα playbooks; Ας αρχίσουμε!

Βήμα 1: Δημιουργία .ymlαρχείου YAML ( ).

Τα Ansible playbook γράφονται ως .ymlαρχεία. Το Ansible δεν μπορεί να ερμηνεύσει άλλες μορφές. Ένα παράδειγμα βιβλίου παιχνιδιού Ansible μοιάζει με αυτό:

---
- hosts: webservers
  vars:
    http_port: 80
    max_clients: 200
  remote_user: root
  tasks:
  - name: ensure apache is at the latest version
    yum: pkg=httpd state=latest
  - name: write the apache config file
    template: src=/srv/httpd.j2 dest=/etc/httpd.conf
    notify:
    - restart apache
  - name: ensure apache is running (and enable it at boot)
    service: name=httpd state=started enabled=yes
  handlers:
    - name: restart apache
      service: name=httpd state=restarted

(Λήψη από την τεκμηρίωση της Ansible)

Βήμα 2: Κατανόηση των βιβλίων: εργασίες και χειριστές

Όπως μπορείτε να δείτε, υπάρχουν πολλές ενότητες σε αυτό το βιβλίο. Πρώτα θα δείτε τη hosts:γραμμή. Αυτό καθορίζει σε ποιους κεντρικούς υπολογιστές θα πρέπει να εκτελεστεί το playbook. Μπορείτε επίσης να δείτε ότι έχουμε ορίσει μερικές μεταβλητές που μπορούν να προσπελαστούν και να χρησιμοποιηθούν σε όλο το βιβλίο παιχνιδιού. Στη συνέχεια, θα δείτε μια σειρά από εργασίες. Αυτές οι εργασίες θα μπορούσαν να ονομαστούν κάτι σαν "Εγκατάσταση Apache", για παράδειγμα. Η δεύτερη εργασία στο παράδειγμα εγγράφει στη διαμόρφωση του Apache. Στη συνέχεια θα δείτε τα εξής:

    notify:
    - restart apache

Αυτό λέει μια εργασία για την εκτέλεση ενός συγκεκριμένου χειριστή. Σε αυτήν την περίπτωση, αναφέρεται στον χειριστή restart apache, ο οποίος βρίσκεται στο κάτω μέρος του βιβλίου παιχνιδιού:

  handlers:
    - name: restart apache
      service: name=httpd state=restarted

Οι χειριστές είναι βολικοί επειδή, λαμβάνοντας το παράδειγμα, μπορεί να θέλετε να επανεκκινήσετε το Apache πολλές φορές. Σε αυτήν την περίπτωση, δεν χρειάζεται να επαναλαμβάνετε τη δημιουργία μιας εργασίας για κάθε φορά που χρειάζεται να κάνετε επανεκκίνηση του Apache, αλλά μπορείτε απλώς να ανατρέχετε στον ίδιο χειριστή κάθε φορά.

Βήμα 3: Εκτέλεση βιβλίων

Ας υποθέσουμε ότι θέλετε να αναπτύξετε έναν διακομιστή Apache. Λοιπόν, όπως μπορείτε να δείτε, μόλις δημιουργήσαμε ένα βιβλίο παιχνιδιού για αυτό. Η εκτέλεση βιβλίων αναπαραγωγής μπορεί να γίνει χρησιμοποιώντας την ansible-playbookεντολή. Για παράδειγμα, εάν επρόκειτο να εκτελέσουμε αυτό το βιβλίο αναπαραγωγής σε όλους τους διακομιστές της webserversκατηγορίας (θα χρειαστεί να έχετε αυτήν την κατηγορία στο /etc/ansible/hostsαρχείο σας ), θα εκτελούσατε την ακόλουθη εντολή δεδομένου ότι το όνομα του αρχείου του βιβλίου αναπαραγωγής σας είναι apache.yml:

ansible-playbook -i webservers apache.yml

Συγχαρητήρια! Τώρα έχετε εκτελέσει ένα playbook σε όλους τους διακομιστές της webserversκατηγορίας σας . Τώρα θα πρέπει απλώς να περιμένετε να ολοκληρωθεί η ανάπτυξη και θα δείτε ότι το Apache έχει εγκατασταθεί και διαμορφωθεί με επιτυχία σε αυτούς τους διακομιστές.


Δημιουργία ιστολογίου Jekyll στο Ubuntu 16.04

Δημιουργία ιστολογίου Jekyll στο Ubuntu 16.04

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Jekyll είναι μια εξαιρετική εναλλακτική λύση στο WordPress για blogging ή κοινή χρήση περιεχομένου. Δεν απαιτεί βάσεις δεδομένων και είναι πολύ εύκολο

Πώς να εγκαταστήσετε το Squid Proxy στο CentOS

Πώς να εγκαταστήσετε το Squid Proxy στο CentOS

Το Squid είναι ένα δημοφιλές, δωρεάν πρόγραμμα Linux που σας επιτρέπει να δημιουργήσετε έναν διακομιστή μεσολάβησης web προώθησης. Σε αυτόν τον οδηγό, θα δείτε πώς να εγκαταστήσετε το Squid στο CentOS για να σας μετατρέψει

Πώς να εγκαταστήσετε το Memcached στο Ubuntu 14.04

Πώς να εγκαταστήσετε το Memcached στο Ubuntu 14.04

Το Memcached είναι ένα σύστημα βάσης δεδομένων υψηλής απόδοσης που μπορεί να βοηθήσει στην υπερφόρτιση της εφαρμογής σας. Είναι πολύ γρήγορο καθώς δεν γράφει στο δίσκο, αλλά αντίθετα t

Εγκατάσταση του InfluxDB στο Ubuntu 14

Εγκατάσταση του InfluxDB στο Ubuntu 14

Εισαγωγή Το InfluxDB είναι μια βάση δεδομένων ανοιχτού κώδικα, κατανεμημένης χρονολογικής σειράς, χωρίς εξωτερικές εξαρτήσεις. Ναι, διαβάσατε την παρ. χωρίς εξωτερικές εξαρτήσεις

Ρύθμιση Fail2ban Ubuntu x64

Ρύθμιση Fail2ban Ubuntu x64

Το Fail2ban είναι ένα πρόγραμμα που παρακολουθεί τη δραστηριότητα σύνδεσης στον διακομιστή σας και αποκλείει τις προσβλητικές διευθύνσεις IP. Από προεπιλογή, θα μπλοκάρει τις διευθύνσεις IP για 10 λεπτά

Ρύθμιση του Red5 Media Server στο Ubuntu 16.04

Ρύθμιση του Red5 Media Server στο Ubuntu 16.04

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Red5 είναι ένας διακομιστής πολυμέσων ανοιχτού κώδικα που υλοποιείται σε Java που σας επιτρέπει να εκτελείτε εφαρμογές Flash πολλών χρηστών, όπως η ζωντανή ροή

Πώς να εγκαταστήσετε το Vanilla Forum στο Ubuntu 16.04

Πώς να εγκαταστήσετε το Vanilla Forum στο Ubuntu 16.04

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Vanilla forum είναι μια εφαρμογή φόρουμ ανοιχτού κώδικα γραμμένη σε PHP. Είναι πλήρως προσαρμόσιμο, εύκολο στη χρήση και υποστηρίζει εξωτερικά

Πώς να εγκαταστήσετε το Kanboard στο Ubuntu 18.04 LTS

Πώς να εγκαταστήσετε το Kanboard στο Ubuntu 18.04 LTS

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Εισαγωγή Το Kanboard είναι ένα δωρεάν και ανοιχτού κώδικα πρόγραμμα λογισμικού διαχείρισης έργων που έχει σχεδιαστεί για να διευκολύνει και να οπτικοποιήσει

Πώς να εγκαταστήσετε το Kanboard στο Debian 9

Πώς να εγκαταστήσετε το Kanboard στο Debian 9

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Εισαγωγή Το Kanboard είναι ένα δωρεάν και ανοιχτού κώδικα πρόγραμμα λογισμικού διαχείρισης έργων που έχει σχεδιαστεί για να διευκολύνει και να οπτικοποιήσει

Πώς να εγκαταστήσετε το Tiny Tiny RSS Reader σε ένα FreeBSD 11 FAMP VPS

Πώς να εγκαταστήσετε το Tiny Tiny RSS Reader σε ένα FreeBSD 11 FAMP VPS

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Tiny Tiny RSS Reader είναι ένα δωρεάν και ανοιχτού κώδικα πρόγραμμα ανάγνωσης και συγκέντρωσης ειδήσεων (RSS/Atom) που φιλοξενείται από τον εαυτό του και έχει σχεδιαστεί για

Πώς να εγκαταστήσετε το Gitea στο Debian 9

Πώς να εγκαταστήσετε το Gitea στο Debian 9

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Gitea είναι ένα εναλλακτικό ανοιχτού κώδικα, αυτο-φιλοξενούμενο σύστημα ελέγχου έκδοσης που υποστηρίζεται από το Git. Το Gitea είναι γραμμένο στα Golang και είναι

Πώς να εγκαταστήσετε το Wiki.js στο FreeBSD 11

Πώς να εγκαταστήσετε το Wiki.js στο FreeBSD 11

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Wiki.js είναι μια δωρεάν και ανοιχτού κώδικα, σύγχρονη εφαρμογή wiki που βασίζεται σε Node.js, MongoDB, Git και Markdown. Ο πηγαίος κώδικας του Wiki.js είναι δημόσιος

Πώς να εγκαταστήσετε το Gitea στο Ubuntu 18.04

Πώς να εγκαταστήσετε το Gitea στο Ubuntu 18.04

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Gitea είναι ένα εναλλακτικό ανοιχτού κώδικα, αυτο-φιλοξενούμενο σύστημα ελέγχου έκδοσης που τροφοδοτείται από το git. Το Gitea είναι γραμμένο στα Golang και είναι

Πώς να εγκαταστήσετε το Thelia 2.3 στο Debian 9

Πώς να εγκαταστήσετε το Thelia 2.3 στο Debian 9

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Thelia είναι ένα εργαλείο ανοιχτού κώδικα για τη δημιουργία ιστοσελίδων ηλεκτρονικού επιχειρείν και τη διαχείριση διαδικτυακού περιεχομένου γραμμένου σε PHP. Πηγαίος κώδικας Thelia i

Πώς να εγκαταστήσετε το Microweber στο CentOS 7

Πώς να εγκαταστήσετε το Microweber στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Microweber είναι ένα ανοικτού κώδικα μεταφοράς και απόθεσης CMS και ηλεκτρονικό κατάστημα. Ο πηγαίος κώδικας Microweber φιλοξενείται στο GitHub. Αυτός ο οδηγός θα σας δείξει

Πώς να εγκαταστήσετε το MODX Revolution σε ένα Ubuntu 16.04 LAMP VPS

Πώς να εγκαταστήσετε το MODX Revolution σε ένα Ubuntu 16.04 LAMP VPS

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το MODX Revolution είναι ένα γρήγορο, ευέλικτο, επεκτάσιμο, δωρεάν και ανοιχτού κώδικα, εταιρικό Σύστημα Διαχείρισης Περιεχομένου (CMS) γραμμένο i

Πώς να εγκαταστήσετε το Vanilla Forum στο CentOS 7

Πώς να εγκαταστήσετε το Vanilla Forum στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Vanilla forum είναι μια εφαρμογή φόρουμ ανοιχτού κώδικα γραμμένη σε PHP. Είναι πλήρως προσαρμόσιμο, εύκολο στη χρήση και υποστηρίζει εξωτερικά

Πώς να εγκαταστήσετε το Mattermost 4.1 στο CentOS 7

Πώς να εγκαταστήσετε το Mattermost 4.1 στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Mattermost είναι μια εναλλακτική λύση ανοιχτού κώδικα, που φιλοξενείται από τον εαυτό της στην υπηρεσία ανταλλαγής μηνυμάτων Slack SAAS. Με άλλα λόγια, με το Mattermost, μπορείτε περίπου

Πώς να εγκαταστήσετε το dotCMS στο Ubuntu 16.04

Πώς να εγκαταστήσετε το dotCMS στο Ubuntu 16.04

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το DotCMS είναι ένα ανοιχτού κώδικα, εταιρικό σύστημα διαχείρισης περιεχομένου γραμμένο σε Java. Περιέχει σχεδόν κάθε χαρακτηριστικό που απαιτείται

Πώς να εγκαταστήσετε το Pagekit 1.0 CMS σε ένα FreeBSD 11 FAMP VPS

Πώς να εγκαταστήσετε το Pagekit 1.0 CMS σε ένα FreeBSD 11 FAMP VPS

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Pagekit 1.0 CMS είναι ένα όμορφο, αρθρωτό, επεκτάσιμο και ελαφρύ, δωρεάν και ανοιχτού κώδικα Σύστημα Διαχείρισης Περιεχομένου (CMS) με

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Η Τεχνητή Νοημοσύνη δεν είναι στο μέλλον, είναι εδώ ακριβώς στο παρόν Σε αυτό το blog Διαβάστε πώς οι εφαρμογές Τεχνητής Νοημοσύνης έχουν επηρεάσει διάφορους τομείς.

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Είστε επίσης θύμα των επιθέσεων DDOS και έχετε μπερδευτεί σχετικά με τις μεθόδους πρόληψης; Διαβάστε αυτό το άρθρο για να λύσετε τις απορίες σας.

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Μπορεί να έχετε ακούσει ότι οι χάκερ κερδίζουν πολλά χρήματα, αλλά έχετε αναρωτηθεί ποτέ πώς κερδίζουν τέτοια χρήματα; ας συζητήσουμε.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Θέλετε να δείτε επαναστατικές εφευρέσεις της Google και πώς αυτές οι εφευρέσεις άλλαξαν τη ζωή κάθε ανθρώπου σήμερα; Στη συνέχεια, διαβάστε στο blog για να δείτε τις εφευρέσεις της Google.

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Η ιδέα των αυτοκινούμενων αυτοκινήτων να βγαίνουν στους δρόμους με τη βοήθεια της τεχνητής νοημοσύνης είναι ένα όνειρο που έχουμε εδώ και καιρό. Όμως, παρά τις πολλές υποσχέσεις, δεν φαίνονται πουθενά. Διαβάστε αυτό το blog για να μάθετε περισσότερα…

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Καθώς η Επιστήμη εξελίσσεται με γρήγορους ρυθμούς, αναλαμβάνοντας πολλές από τις προσπάθειές μας, αυξάνονται και οι κίνδυνοι να υποβάλλουμε τον εαυτό μας σε μια ανεξήγητη Ιδιότητα. Διαβάστε τι σημαίνει η μοναδικότητα για εμάς.

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Οι μέθοδοι αποθήκευσης των δεδομένων εξελίσσονται μπορεί να είναι από τη γέννηση των Δεδομένων. Αυτό το ιστολόγιο καλύπτει την εξέλιξη της αποθήκευσης δεδομένων με βάση ένα infographic.

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Διαβάστε το ιστολόγιο για να μάθετε διαφορετικά επίπεδα στην Αρχιτεκτονική Μεγάλων Δεδομένων και τις λειτουργίες τους με τον απλούστερο τρόπο.

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

Σε αυτόν τον ψηφιακό κόσμο, οι έξυπνες οικιακές συσκευές έχουν γίνει κρίσιμο μέρος της ζωής. Ακολουθούν μερικά εκπληκτικά οφέλη των έξυπνων οικιακών συσκευών σχετικά με το πώς κάνουν τη ζωή μας να αξίζει και να απλοποιείται.

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Πρόσφατα, η Apple κυκλοφόρησε το macOS Catalina 10.15.4 μια συμπληρωματική ενημέρωση για την επιδιόρθωση προβλημάτων, αλλά φαίνεται ότι η ενημέρωση προκαλεί περισσότερα προβλήματα που οδηγούν σε bricking των μηχανών mac. Διαβάστε αυτό το άρθρο για να μάθετε περισσότερα