Επίλυση Όλων Των Προβλημάτων Των Παραθύρων Και Άλλων Προγραμμάτων

Ubuntu στο σύννεφο: Ξεκινώντας με το juju

Αυτό το απόσπασμα είναι από το βιβλίο, Ubuntu Unleashed: Έκδοση 2013 από τον Μάθιου Χέλμκε, εκδ. Pearson/SAMS, Δεκ 2012, ISBN 0672336243 πνευματικά δικαιώματα 2013 από Pearson Education, Inc. Για περισσότερες πληροφορίες, επισκεφθείτε www.informit.com/title/0672336243

Το Juju έχει περιγραφεί ως APT για το σύννεφο. Το APT κάνει καταπληκτική δουλειά στην εγκατάσταση, τη διαμόρφωση και την εκκίνηση περίπλοκων στοίβων και υπηρεσιών λογισμικού, αλλά αρκεί όλα αυτά να συμβαίνουν μόνο σε ένα σύστημα. Ο Juju επεκτείνει αυτήν την ικανότητα σε πολλά μηχανήματα. Συχνά, οι διακομιστές Linux έχουν ρυθμιστεί για παρόμοιες εργασίες. Πολλαπλές φυσικές μηχανές μπορούν να αναπτυχθούν με παρόμοιες διαμορφώσεις για να λειτουργούν μεταξύ τους σε ένα δίκτυο, ίσως για κατανομή φορτίου ή πλεονασμό για την αποφυγή διακοπής λειτουργίας σε περίπτωση βλάβης ή υπερφόρτωσης. Οι διαχειριστές συστημάτων είναι κύριοι στη δημιουργία και ενορχήστρωση αυτών των δικτύων. Ωστόσο, για να γίνει αυτό παραδοσιακά απαιτεί τη ρύθμιση κάθε μηχανής ξεχωριστά, τη διαμόρφωση των ρυθμίσεων λογισμικού του και ούτω καθεξής.



Εργαλεία έχουν εμφανιστεί με την πάροδο των ετών για να βοηθήσουν σε αυτό το σπουδαίο έργο, όπως ο Chef και το Puppet. Το Juju λειτουργεί για τους διακομιστές ό, τι κάνουν οι διαχειριστές πακέτων για μεμονωμένα συστήματα. Σας δίνει τη δυνατότητα να αναπτύξετε υπηρεσίες γρήγορα και εύκολα σε πολλούς διακομιστές, απλοποιώντας τη διαδικασία διαμόρφωσης και έχει σχεδιαστεί ειδικά με διακομιστές cloud. Όπως και με τις συνταγές του Σεφ, αυτές οι υπηρεσίες αναπτύσσονται χρησιμοποιώντας τύπους που τυποποιούν την επικοινωνία, για παράδειγμα, και που μπορεί να έχουν γραφτεί από διαφορετικά άτομα.



Αυτό που κάνει το Juju διαφορετικό από τον Chef και το Puppet είναι ότι οι φόρμουλες Juju, που ονομάζονται γούρια , ενθυλάκωση υπηρεσιών, καθορίζοντας όλους τους τρόπους που χρειάζονται οι υπηρεσίες για να εκθέσουν ή να καταναλώσουν δεδομένα διαμόρφωσης προς ή από άλλες υπηρεσίες. Αυτό μπορεί να γίνει με πολλούς τρόπους στη γοητεία Juju, συμπεριλαμβανομένων μέσω σεναρίων κελύφους ή χρησιμοποιώντας τον ίδιο τον σεφ σε σόλο λειτουργία. Επίσης, η Juju ενορχηστρώνει την παροχή παρακολουθώντας τους διαθέσιμους πόρους της (όπως μηχανές EC2, Eucalyptus ή OpenStack) και προσθέτοντας ή αφαιρώντας τους ανάλογα με την περίπτωση.

Ξεκινώντας

Ξεκινήστε εγκαθιστώντας το Juju σε διακομιστή:



matthew@wolfram~$: sudo apt-get install juju

Στη συνέχεια, πρέπει να κάνετε εκκίνηση του συστήματος, διαμορφώνοντάς το ώστε να χρησιμοποιεί είτε έναν πόρο cloud, όπως Amazon Web Services ή EC2 ή το τοπικό σας περιβάλλον (εάν χρησιμοποιείτε τοπικό μηχάνημα για ανάπτυξη και δοκιμές). Οι συγκεκριμένες πληροφορίες που εισάγετε εδώ θα διαφέρουν, αλλά η αρχική εντολή είναι πάντα η ίδια:

matthew@wolfram~$: juju bootstrap

Την πρώτη φορά που εκτελείται, δημιουργεί ένα αρχείο, | _+_ |, το οποίο μοιάζει με το ακόλουθο:

~/.juju/environments/yaml

Το προηγούμενο δείγμα ελήφθη απευθείας από την επίσημη τεκμηρίωση Juju. Το δικό σας θα φαίνεται διαφορετικό σε ορισμένα σημεία και επίσης πρέπει να προσαρμοστεί κατάλληλα με τις ρυθμίσεις σας. Για παράδειγμα, εάν χρησιμοποιείτε το Amazon AWS, πιθανότατα θα θέλετε να προσθέσετε γραμμές σε αυτό το αρχείο με το κλειδί πρόσβασης AWS και το μυστικό κλειδί, έτσι ώστε ο Juju να έχει πρόσβαση και να χρησιμοποιεί τον λογαριασμό σας Amazon AWS. Επειδή ο τυπικός χρήστης Juju είναι τύπος DevOps ή SysAdmin που κάνει αυτό το είδος χειροκίνητα για λίγο, θα ξεπεράσουμε αυτό το βήμα και θα προχωρήσουμε.

Το Bootstrapping διαρκεί λίγα λεπτά. Εάν θέλετε να ελέγξετε την κατάσταση της ανάπτυξης Juju, εισαγάγετε

πώς να δημιουργήσετε αντίγραφα ασφαλείας του android σας
default: sample environments: sample: type: ec2 control-bucket: juju-faefb490d69a41f0a3616a4808e0766b admin-secret: 81a1e7429e6847c4941fda7591246594 default-series: precise juju-origin: ppa ssl-hostname-verification: true 

Βλέπετε κάτι παρόμοιο με το ακόλουθο (και πάλι από τα επίσημα έγγραφα juju):

matthew@wolfram~$: juju status

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

machines: 0: agent-state: running dns-name: ec2-50-16-107-102.compute-1.amazonaws.com instance-id: i-130c9168 instance-state: running services: 

Τώρα έρχεται το διασκεδαστικό κομμάτι, η ανάπτυξη μονάδων υπηρεσιών. Επιλέξαμε ένα απλό για το δείγμα μας: την ανάπτυξη ενός ιστολογίου Wordpress στον διακομιστή μας με όλες τις απαραίτητες υπηρεσίες. Αυτό γίνεται χρησιμοποιώντας γούρια , τα οποία είναι προσυσκευασμένα στοιχεία εγκατάστασης και διαμόρφωσης για συγκεκριμένες υπηρεσίες.

Ετσι δουλευει:

matthew@wolfram~$: juju debug-log

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

matthew@wolfram~$: juju deploy mysql matthew@wolfram~$: juju deploy wordpress

Τώρα, αν ελέγξετε την κατάστασή σας όπως εμφανίστηκε νωρίτερα, θα δείτε κάτι σαν αυτό:

matthew@wolfram~$: juju add-relation wordpress mysql

Τώρα, εκθέστε την υπηρεσία Wordpress στον κόσμο, ώστε να μπορείτε να συνδεθείτε με αυτήν εκτός του διακομιστή:

ενσωμάτωση google t t mobile
machines: 0: agent-state: running dns-name: localhost instance-id: local instance-state: running services: mysql: charm: cs:precise/mysql-3 relations: db: - wordpress units: mysql/0: agent-state: started machine: 2 public-address: 192.168.122.165 wordpress: charm: cs:precise/wordpress-3 exposed: false relations: db: - mysql units: wordpress/0: agent-state: started machine: 1 public-address: 192.168.122.166 

Και τόσο απλά, η εγκατάστασή σας είναι έτοιμη. Χρησιμοποιώντας τη δημόσια διεύθυνση που εμφανίζεται νωρίτερα στο μήνυμα κατάστασης, ανοίξτε το 192.168.122.166 στο πρόγραμμα περιήγησής σας και πρέπει να μεταβείτε στη σελίδα διαμόρφωσης του Wordpress.

Τι θα συμβεί εάν ξεκινήσετε να λειτουργεί το ιστολόγιό σας στο Wordpress και μετά ξαφνικά γίνει δημοφιλές; Σε μια παραδοσιακή ρύθμιση, θα χρειαστεί να επανεγκαταστήσετε τον βαρύτερο εξοπλισμό και να μεταφέρετε τη βάση δεδομένων. ΟΧΙ εδω. Αντ 'αυτού, προσθέτετε μονάδες:

matthew@wolfram~$: juju expose wordpress

Αυτό δημιουργεί μια νέα παρουσία Wordpress, ενώνει τη σχέση με την υπάρχουσα παρουσία Wordpress, ανακαλύπτει σε αυτήν τη διαμόρφωση ότι σχετίζεται με μια συγκεκριμένη βάση δεδομένων MySQL και επίσης σχετίζεται με αυτήν. Αυτό είναι. Μια εντολή και τελειώσατε!

Όταν ένα περιβάλλον που έχει δημιουργηθεί juju δεν χρειάζεται πλέον, υπάρχει μόνο μία εντολή για έκδοση:

matthew@wolfram~$: juju add-unit wordpress

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

Γούρια

Οι γοητείες καθορίζουν τον τρόπο με τον οποίο οι υπηρεσίες θα αναπτυχθούν και θα ενσωματωθούν και πώς αντιδρούν στα γεγονότα. Ο Juju ενορχηστρώνει όλα αυτά με βάση τις οδηγίες στα γούρια. Οι γοητείες δημιουργούνται χρησιμοποιώντας αρχεία μεταδεδομένων απλού κειμένου. Αυτά τα αρχεία, με την επέκταση .yaml, περιγράφουν τις λεπτομέρειες που απαιτούνται για την ανάπτυξη. Αυτά είναι τα υποστηριζόμενα πεδία σε μια γοητεία:

  • όνομα - Το όνομα της γοητείας.

  • περίληψη - Περιγραφή μίας γραμμής.

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

  • περιγραφή - Μια μακρά περιγραφή της γοητείας και των χαρακτηριστικών της.

  • παρέχει - Σχέσεις που διατίθενται από αυτή τη γοητεία.

  • απαιτεί - Σχέσεις που πρέπει να υπάρχουν ήδη για να λειτουργήσει αυτή η γοητεία.

  • συνομηλίκους - Σχέσεις που συνεργάζονται με αυτή τη γοητεία.

    πώς να χρησιμοποιήσετε το rsa securid

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

matthew@wolfram~$: juju destroy-environment

Και το Wordpress:

name: mysql summary: 'A pretty popular database' maintainer: 'Juju Charmers ' provides: db: mysql 

Probσως το πιο μπερδεμένο μέρος μιας γοητείας για τους περισσότερους νεοφερμένους είναι οι σχέσεις. Τα προηγούμενα παραδείγματα μπορεί να βοηθήσουν να ξεκαθαρίσουν λίγο αυτά. Όπως μπορείτε να δείτε, υπάρχουν υποπεδία που χρησιμοποιούνται με σχέσεις που καθορίζουν τον τρόπο λειτουργίας της σχέσης. Ακολουθεί μια λίστα με τα διαθέσιμα υποπεδία για σχέσεις:

  • διεπαφή - Ο τύπος σχέσης, όπως http ή mysql. Οι υπηρεσίες θα επιτρέπεται να χρησιμοποιούν μόνο διεπαφές που αναφέρονται εδώ για αλληλεπίδραση με άλλες υπηρεσίες.

  • όριο - Ο μέγιστος αριθμός σχέσεων αυτού του είδους που θα δημιουργηθούν με άλλες υπηρεσίες.

  • προαιρετικός - Δηλώνει εάν απαιτείται η σχέση. Μια τιμή του ψευδής σημαίνει ότι δεν είναι προαιρετικό.

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

Υπάρχει επίσης ένας τρόπος να ειδοποιήσετε μια μονάδα υπηρεσιών για αλλαγές που συμβαίνουν στον κύκλο ζωής της ή στο μεγαλύτερο κατανεμημένο περιβάλλον. Που ονομάζεται γάντζοι , αυτά είναι εκτελέσιμα αρχεία που μπορούν να αναζητήσουν το περιβάλλον, να κάνουν τις επιθυμητές αλλαγές στο τοπικό μηχάνημα και να αλλάξουν τις ρυθμίσεις σχέσης. Τα Hooks υλοποιούνται τοποθετώντας το εκτελέσιμο αρχείο στον κατάλογο hooks του καταλόγου charm. Ο Juju εκτελεί το άγκιστρο με βάση το όνομα αρχείου του, όταν συμβεί το αντίστοιχο συμβάν. Οι γάντζοι είναι προαιρετικοί. Για παράδειγμα, ένα γάντζο με τίτλο εγκαθιστώ θα λειτουργούσε μόνο μία φορά κατά τη διάρκεια της ζωής της μονάδας υπηρεσιών, όταν δημιουργήθηκε για πρώτη φορά, και μπορεί να ελέγξει εάν πληρούνται οι εξαρτήσεις του πακέτου. Γάντζοι με τίτλους όπως αρχή ή να σταματήσει μπορεί να εκτελεστεί όταν η υπηρεσία έχει ξεκινήσει ή τελειώσει. Υπάρχουν δυνατότητες δημιουργίας γάντζων για σχέσεις, ανοίγματος και κλεισίματος θυρών και πολλά άλλα.

Υπάρχουν πολλές γοητείες που έχουν ήδη γραφτεί και είναι διαθέσιμες από το Ubuntu Juju Charm Browser (ο σύνδεσμος παρατίθεται στους πόρους). Μπορείτε να αναπτύξετε γρήγορα έναν διακομιστή ενσωμάτωσης Jenkins ή έναν σκλάβο, μια βάση δεδομένων ή έναν κόμβο Hadoop, ένα παράδειγμα MediaWiki, έναν διακομιστή παιχνιδιών Minecraft και πολλούς άλλους χρησιμοποιώντας ήδη γραπτές και - διαθέσιμες γοητείες. Μάλλον έτσι θα αλληλεπιδρούν οι περισσότεροι αναγνώστες με τα γούρια.

Αν θέλετε να δοκιμάσετε τις δυνάμεις σας στη συγγραφή και τη δημιουργία γοητείας για υπηρεσίες, μπορείτε. Πολύ περισσότερες λεπτομέρειες είναι διαθέσιμες στη διεύθυνση https://juju.ubuntu.com/docs/write-charm.html για να σας βοηθήσουν να μάθετε τη διαδικασία, τη σημασιολογία και πώς να συμπεριλάβετε τη γοητεία σας στο Charm Store.

Αυτή η ιστορία, «Ubuntu in the cloud: Ξεκινώντας με το juju» δημοσιεύτηκε αρχικά από τονITworldΕ

Επιλογή Συντάκτη

Apache OpenOffice 4 εναντίον LibreOffice 4.1

Όχι τόσο γρήγορα, το LibreOffice - το OpenOffice έχει μια δική του λαμπερή, νέα και βελτιωμένη μεγάλη κυκλοφορία.

Πώς και γιατί οι χρήστες της Apple πρέπει να μεταβούν στο DuckDuckGo για αναζήτηση

Οι χρήστες της Apple που ενδιαφέρονται για το απόρρητο μετακινούνται στο DuckDuckGo για αναζήτηση. Αυτές οι συμβουλές θα σας ξεκινήσουν με αυτό.

Νέα πράγματα Amazon Alexa Internet-of-Things: AI τρελάθηκε;

Η Amazon διαθέτει δύο νέα καλούδια Alexa, για όλες τις απαιτήσεις καταναλωτισμού. Υπάρχει μια φορητή έκδοση του Echo, που ονομάζεται Amazon Tap και ένα mini Echo, το οποίο η Amazon ονομάζει Echo Dot ...

Η Apple στην Κίνα συνιστά τη χρήση επίσημων προσαρμογέων ισχύος για iPhone

Η Apple συμβουλεύει τους πελάτες της στην Κίνα να χρησιμοποιούν τους επίσημους προσαρμογείς USB της εταιρείας κατά την επαναφόρτιση των συσκευών τους, καθώς η αστυνομία συνέχισε τις έρευνες την Παρασκευή για τον θάνατο από ηλεκτροπληξία μιας τοπικής γυναίκας που μπορεί να συνδέεται με iPhone.

Το Google Photos προσφέρει απεριόριστο δωρεάν χώρο αποθήκευσης στο cloud για φωτογραφίες και βίντεο

Στο σημερινό συνέδριο προγραμματιστή Google I/O, η Google ανακοίνωσε το Google Photos, το οποίο έχει σχεδιαστεί για να βοηθά τους χρήστες να οργανώνουν, να αποθηκεύουν, να επεξεργάζονται και να μοιράζονται τις φωτογραφίες και τα βίντεό τους.