Χαϊδάρησ Δημήτρησ. Επιβλέπων καθηγητήσ: Ψαρράσ Νικόλαοσ

Σχετικά έγγραφα
NetMasterII ςύςτημα μόνιμησ εγκατϊςταςησ επιτόρηςη και καταγραφό ςημϊτων από αιςθητόρια και μετατροπεύσ κϊθε εύδουσ ςύςτημα ειδοπούηςησ βλϊβη

Ειςαγωγή ςτη Διαχείριςη Δικτύων

Βαςικέσ Έννοιεσ Λειτουργικών Συςτημάτων

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ PUPPET - ΑΥΤΟΜΑΤΙΣΜΟΣ ΜΑΖΙΚΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΣΥΣΤΗΜΑΤΩΝ

Βαγγϋλησ Οικονόμου Διϊλεξη 6. Δομ. Προγραμ. - Συναρτόςεισ - Διϊλεξη 6

19/10/2009. Προηγοφμενη βδομάδα... Σήμερα Γεωγραφικά Συςτήματα Πληροφοριϊν Χωρικά Μοντζλα Δεδομζνων. Δομή του μαθήματοσ

Περιεκτικότητα ςε θρεπτικϊ ςτοιχεύα Ικανότητα ανταλλαγόσ κατιόντων Οξύτητα εδϊφουσ (ph)

Δίκτυα Η/Υ ςτην Επιχείρηςη

Βαγγϋλησ Οικονόμου Διϊλεξη 5 ΠΙΝΑΚΕΣ. Δομ. Προγραμ. - Διϊλεξη 5 1

22/11/2009. Προηγοφμενη βδομάδα... Δεδομζνα απο Δευτερεφουςεσ πηγζσ. Αυτή την βδομάδα...

Φοιτητόσ : Κουκϊρασ Παραςκευϊσ ΑΜ : 06/3059 Ίδρυμα/Τμόμα : Αλεξϊνδρειο Τεχνολογικό Εκπαιδευτικό Ιδρυμα/Πληροφορικόσ

Δίκτυα Η/Υ ςτην Επιχείρηςη

19/10/2009. Γεωγραφικά Συςτήματα Πληροφοριϊν Spatial Operations. Σήμερα... Τφποι ερωτήςεων (Queries)

Στο λογιςμικό (software) περιλαμβϊνονται όλα τα προγράμματα του υπολογιςτό. Το Λογιςμικό χωρύζετε ςε δύο μεγϊλεσ κατηγορύεσ:

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ ΘΕΜΑ Α Α1 Μονάδες 10 Μονάδες 4 ΤΕΛΟΣ 1ΗΣ ΣΕΛΙΔΑΣ

Πίνακασ τεχνικών και λειτουργικών προδιαγραφών. Πλόρεσ ελληνικό περιβϊλλον (interface) για Διαχειριςτϋσ, Εκπαιδευτϋσ, Εκπαιδευόμενουσ

Θέκα: Γεκηνπξγία θνηλσληθνύ δηθηύνπ κε βάζε ην ππεξεζηνζηξεθέο κνληέιν Παλεπηζηήκην Πεηξαηά, Τκήκα Ψεθηαθώλ Σπζηεκάησλ Σπληάθηεο: Καινγεξόπνπινο

«ΕΙΔΙΚΑ ΘΕΜΑΣΑ ΣΟΝ ΠΡΟΓΡΑΜΜΑΣΙΜΟ ΤΠΟΛΟΓΙΣΩΝ» ΚΕΦΑΛΑΙΟ 3: ΑΝΤΙΚΕΙΜΕΝΑ ΚΑΙ ΜΕΘΟΔΟΙ

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ. Δωδϋκατη Διϊλεξη Έλεγχοσ Συςτόματοσ

«ΕΙΔΙΚΑ ΘΕΜΑΣΑ ΣΟΝ ΠΡΟΓΡΑΜΜΑΣΙΜΟ ΤΠΟΛΟΓΙΣΩΝ» Κεφϊλαιο2: Βαςικϊ ςτοιχεύα τησ γλώςςασ

EETT Δημόςια Διαβούλευςη ςχετικά με την εκχώρηςη δικαιώματων χρήςησ ραδιοςυχνοτήτων ςτη Ζώνη 27,5 29,5 GHz

Επιςκόπηςη Τεχνολογιών Διαδικτύου

Εννοιολογικόσ προςδιοριςμόσ εξωτερικόσ και εςωτερικόσ επικοινωνύασ Μορφϋσ εςωτερικόσ επικοινωνύασ Τρόποι επικοινωνύασ με τισ διϊφορεσ ομϊδεσ κοινού

Παθήςεισ του θυροειδή ςε άτομα με ςύνδρομο Down: Πληροφορίεσ για γονείσ και δαςκάλουσ. Τι είναι ο θυροειδήσ αδένασ;

Ο ΟΓΙΚΟΣ ΦΑΡΤΗΣ ΤΟΥ ΣΑΚΦΑΡΩΓΗ ΓΙΑΒΗΤΗ ΣΤΗΝ ΔΛΛΑΓΑ

Εντολζς του Λειτουργικοφ Συστήματος UNIX

Αναφϋρεται ςτουσ μηχανιςμούσ ελϋγχου δϋςμευςησ των πόρων.

Πανεπιςτήμιο Πελοποννήςου Τμήμα Επιςτήμησ και Τεχνολογίασ Τηλεπικοινωνιών. Λειτουργικά Συςτήματα Προγραμματιςμόσ Συςτήματοσ. Μνήμη

Μαθηματικϊ. Β' Ενιαύου Λυκεύου. (μϊθημα κοινού κορμού) Υιλοςοφύα - κοπού

Τεχνικόσ Μαγειρικόσ Τϋχνησ Αρχιμϊγειρασ (Chef) Β Εξϊμηνο

Βαγγϋλησ Οικονόμου Διϊλεξη 4. Δομ. Προγραμ. - Διϊλεξη 4

Καθηγητόσ Γ. Σιώμκοσ Γ. Τςιϊμησ

ΠΡΩΣΟ ΕΣ ΑΚΗΕΩΝ ΓΙΑ ΣΟ ΜΑΘΗΜΑ ΠΟΟΣΙΚΗ ΑΝΑΛΤΗ ΔΙΟΙΚΗΣΙΚΩΝ ΑΠΟΥΑΕΩΝ

Επικοινωνύα. twitter: tatsis_kostas Τηλϋφωνο: Ώρεσ ςυνεργαςύασ: κλειδύ: did2009

ΕΠΠΑΙΚ Θεςςαλονύκησ, /02/2011

Ειςαγωγό ςτο Ιnternet. χολό Θετικών Επιςτημών, Σμόμα Βιολογύασ, Πανεπιςτόμιο Πατρών

Οδηγόσ πουδών

BLOCKCHAIN ΚΑΙ CONSENSUS

ΗΛΕΚΣΡΟΝΙΚΗ ΕΠΙΚΟΙΝΩΝΙΑ ΣΟΤ ΦΟΛΕΙΟΤ ΠΡΟ ΣΟΤ ΓΟΝΕΙ. - Θέςη υπεύθυνου προςώπου για την ςυμπλήρωςη του ερωτηματολογίου: Ερωτηματολόγιο

Τρίπολη Μάιος Γρηγόριος Σπυράκης MPA, Ph.D

Διομότιμα Συςτόματα (P2P systems) To ςύςτημα Pastry

Όγδοη Διϊλεξη Case Study

1.ΕΘΝΙΚΕ ΚΑΙ ΠΟΛΙΣΙΣΙΚΕ ΠΑΡΑΔΟΕΙ ΓΙΑ ΣΟΝ ΣΟΚΕΣΟ

Πανεπιςτήμιο Πελοποννήςου Τμήμα Επιςτήμησ και Τεχνολογίασ Τηλεπικοινωνιών. Λειτουργικά Συςτήματα Προγραμματιςμόσ Συςτήματοσ.

Αρχϋσ του NCTM. Αρχϋσ του NCTM. Αρχϋσ του NCTM. Διδακτικό Μαθηματικών ΙΙ. Μϊθημα 9 ο Αξιολόγηςη

ΜΕΣΑΠΣΤΦΙΑΚΗ ΕΡΓΑΙΑ ΕΠΕΞΕΡΓΑΙΑ ΒΙΝΣΕΟ ΜΕ ΦΡΗΗ DSP

«ΑΞΙΟΛΟΓΗΗ ΤΠΗΡΕΙΩΝ ςτισ ΚΙΝΗΣΕ ΤΚΕΤΕ: ΕΣΙΑΗ Ε ΘΕΜΑΣΑ ΚΙΝΗΣΗ ΔΙΑΚΤΒΕΡΝΗΗ»

Πανεπιςτήμιο Πελοποννήςου Τμήμα Επιςτήμησ και Τεχνολογίασ Τηλεπικοινωνιών. Διαχείριςη και Αςφϊλεια Δικτύων. Πιςτοποίηςη Χ.509

Νέο Πρόγραμμα Σπουδών του Νηπιαγωγείου. Δρ Ζωή Καραμπατζάκη, Σχολική Σύμβουλος 21 ης Περιφέρειας Π.Α.

Μαθηματικϊ Γ' Ενιαύου Λυκεύου (μϊθημα κατεύθυνςησ)

Τϋταρτη Διϊλεξη Μοντϋλα Διαδικαςύασ Λογιςμικού Μϋροσ Β

Επιμέλεια: Σαλμάν Λέιλα Επιβλέποντεσ Καθηγητέσ: Γουδήρασ Δημήτριοσ Πλατςίδου Μαρία

Θεωρύεσ Μϊθηςησ και ΤΠΕ Συμπεριφοριςμόσ

Για παρϊδειγμα, μια πλοόγηςη ςτη βιβλιοθόκη τησ Ανώτατησ χολόσ Καλών Σεχνών:

ΤΕΙ ΑΜΘ-Σχολό Διούκηςησ και Οικονομύασ-Τμόμα Λογιςτικόσ και Χρηματοοικονομικόσ

Η Διαύρεςη 134:5. Η Διαύρεςη 134:5. Διδακτική Μαθηματικών ΙΙ

Άδειες Χρήσης. Διδακτική Μαθηματικών I. Πρόσθεση-αφαίρεση. Διδάσκων: Επίκουρος Καθ. Κ. Τάτσης

Αβεβαιότητεσ ςτον υπολογιςμό τησ δόςησ των επαγγελματικά εκτιθεμένων ςε ιοντίζουςα ακτινοβολία

Η Ενεργειακό Συνεταιριςτικό Εταιρύα Καρδύτςασ εύναι αςτικόσ ςυνεταιριςμόσ που η ςύςταςη και λειτουργύα του διϋπεται από το Ν.

ΕΛΕΓΦΟ ΕΜΠΟΡΕΤΜΑΣΨΝ ΣΕΦΝΙΚΟ ΜΑΓΕΙΡΙΚΗ ΣΕΦΝΗ ΑΡΦΙΜΑΓΕΙΡΑ (CHEF)

Πειραιώσ 211, Σαύροσ Διονυςύα γούρου

Τρύτη Διϊλεξη Μοντϋλα Διαδικαςύασ Λογιςμικού Μϋροσ Α

Θεωρύεσ Μϊθηςησ και ΤΠΕ Εποικοδομιςμόσ

Πανεπιςτόμιο Θεςςαλύασ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΣΙΑ Αρ. Πρωτ η Τγειον. Περιφ. ΑΣΣΙΚΗ Γ. Ν. Α. Γ. ΓΕΝΝΗΜΑΣΑ Αθήνα 18/04/2016

Με τον όρο <<ΚΡΙΗ>>, περιγράφεται ςυνήθωσ μια απρόβλεπτη κατάςταςη, η οποία χαρακτηρίζεται από ένταςη και αναςφάλεια και μπορεί να αφορά το άτομο,

Κυκλοφορία και Ποιότητα Αέρα ςτη Θεςςαλονίκη Ν. Μουςιόπουλοσ

ΣΕΦΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΤΣΙΚΟ ΙΔΡΤΜΑ ΚΑΒΑΛΑ

ενθαρρύνοντασ τη ςυνέχιςη των προβλημάτων

Ο τύτλοσ και μόνο, εύναι αρκετόσ για να δηλώςει την διαφορετικότητα τησ αναπτυςςόμενησ αλυςύδασ ZIO PEPPE Pizza al metro. Όλα ξεκύνηςαν το 1996 ςτη

ΘΕΜΑ: Ζγκριςη προγράμματοσ ΤΟΠΕΚΟ ΔΕΛΤΙΟ ΤΥΠΟΥ

ΑΝΑΛΤΕΙ / 12. Οικονομικό κρύςη και μϋθοδοι αναζότηςησ εργαςύασ

ΓΕΩΡΓΙΟ Ν. ΚΟΝΣΟ ΕΠΙΣΗΜΟΝΙΚΟ ΤΝΕΡΓΑΣΗ ΠΑ.ΠΕΙ.

Αναλύοντασ την ολοκληρωμϋνη φροντύδα του ρευματοπαθούσ. Κατερύνα Κουτςογιϊννη ύλλογοσ Ρευματοπαθών Κρότησ

ΕΤΜΘΙΕΡ ΑΝΘΜΞΛΗΡΗΡ ΑΟΞΕΚΕΡΛΑΩΜ ΛΗΤΑΜΩΜ ΑΜΑΖΗΗΡΗΡ ΛΕ ΒΑΡΗ ΗΜ ΘΡΞΠΘΑ ΞΣ ΤΠΗΡΗ

ΔΙΑΣΡΟΦΗ ΚΑΣΑ ΣΗ ΔΙΑΡΚΕΙΑ ΣΟΤ ΘΗΛΑΜΟΤ ΣΖΕΛΑΛΗ ΑΝΑΣΑΙΑ ΜΑΙΑ ΙΠΠΟΚΡΑΣΕΙΟ Γ.Π.Ν.Θ.

Θεςμική Αναμόρφωςη τησ Προ-πτωχευτικήσ Διαδικαςίασ Εξυγίανςησ Επιχειρήςεων

Παραμετρικι Ανάλυςθ και φγκριςθ Μοντζλων υςτθμάτων Κυψελϊν Καυςίμου

ΚΕΣΥΠ Λαμύασ. Δ. Καλοδόμοσ Ε. Κατςύγιαννη. Κύπρου didefth.gr/kesyp/ ΚΕΣΥΠ ΛΑΜΙΑΣ 2015 Ε.ΚΑΤΣΙΓΙΑΝΝΗ

ΔΤΝΑΣΟΣΗΣΕ ΚΑΙ ΠΡΟΟΠΣΙΚΕ ΣΩΝ ΕΠΑΓΓΕΛΜΑΣΩΝ

Characteristic of Internet Background Radiation

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ. Ενδϋκατη Διϊλεξη Καταςκευό Λογιςμικού

ΠΣΤΦΙΑΚΗ ΕΡΓΑΙΑ. Ανϊπτυξη δομημϋνων λύςεων λογιςμικού με χρόςη Python

ΠΕΡΙΣΕΡΙ, 05/08/2013 ΠΡΟΚΗΡΤΞΗ ΠΡΟΛΗΨΗ ΠΡΟΩΠΙΚΟΤ

Δημιουργύα ενόσ Business Plan

ΑΡΧΗ 1Η ΕΛΙΔΑ ΘΕΜΑ A Α. Μονάδεσ 10 Μονάδεσ 5 Μονάδεσ 4 4 Ε. 1 Μονάδεσ 2 Ε. 2 Μονάδεσ 5 ΣΕΛΟ 1Η ΕΛΙΔA

Γεώργιοσ Μυλωνϊσ 6328

Βαγγϋλησ Οικονόμου Διϊλεξη 6. Διμόρφωςη Πλϊτουσ - Διϊλεξη 6

Αθανϊςιοσ Κουλουμβϊκοσ Αςτρονομικό Εταιρύα Πϊτρασ ΩΡΙΩΝ 28/4/2010

Χρύςα Χατζόγλου. Αναπλ. Καθηγότρια Φυςιολογύασ Πανεπιςτημύου Θεςςαλύασ

ΣΕΦΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΤΣΙΚΟ ΙΔΡΤΜΑ ΚΑΒΑΛΑ ΦΟΛΗ ΣΕΦΝΟΛΟΓΙΚΩΝ ΕΥΑΡΜΟΓΩΝ ΣΜΗΜΑ ΒΙΟΜΗΦΑΝΙΚΗ ΠΛΗΡΟΥΟΡΙΚΗ

Πανεπιςτήμιο Πελοποννήςου Τμήμα Επιςτήμησ και Τεχνολογίασ Τηλεπικοινωνιών. Διαχείριςη και Αςφάλεια Δικτύων. Κρυπτογραφία

ΚΕΥΑΛΑΙΟ 2 Σο εςωτερικό του υπολογιςτό

Ενημερωτικό Σημεύωμα για το Ειδικό Καθεςτώσ τησ Επιχειρηματικότητασ των Νϋων του Επενδυτικού Νόμου 3908/2011, για το ϋτοσ 2011

ΠΡΟΓΡΑΜΜΑ ΕΠΙΚΑΙΡΟΠΟΙΗΗ ΓΝΩΕΩΝ ΑΠΟΦΟΙΣΩΝ ΑΕΙ «ΠΡΑΚΣΙΚΗ ΒΑΙΜΕΝΗ Ε ΕΝΔΕΙΞΕΙ ΣΗ ΝΟΗΛΕΤΣΙΚΗ»

Θϋμα: Άνιςη μεταχεύριςη των ανθρώπων με τετραπληγύα, απώλεια ακοόσ ό ϐραςησ ςτο νϋο νομοςχϋδιο ΕΑΕ.

Η κατανομή των ηπείρων και των θαλασσών Ωκεανοί και θάλασσες

ΘΕΜΑΣΙΚΗ ΕΝΟΣΗΣΑ: ΠΑΘΟΛΟΓΙΚΗ ΝΟΗΛΕΤΣΙΚΗ

ΒΑΙΛΙΚΗ ΑΓΑΘΑΓΓΕΛΟΤ. Επιβλϋπων: Γιώργοσ Γιαννόσ, Καθηγητόσ ΕΜΠ Αθόνα, Ιούλιοσ 2016

Επιταχυντϋσ Σωματιδύων

Transcript:

Χαϊδάρησ Δημήτρησ Επιβλέπων καθηγητήσ: Ψαρράσ Νικόλαοσ

Αυτοματιςμόσ Στην αγορϊ υπϊρχει αυξανόμενη τϊςη για την αυτοματοπούηςη των διαδικαςιών. Επύςησ, δύνεται μεγϊλη ςημαςύα ςτη δυνατότητα μαζικόσ διαχεύριςησ των ρυθμύςεων διαφόρων εφαρμογών, που εκτελούνται ςε όμοια ό ανόμοια ςυςτόματα.

Τα Πλεονεκτήματα Συνέπεια. Μεύωςη των λαθών που προϋρχονται από ανθρώπινο παρϊγοντα. Αποδοτικότητα. Λόγω τησ ύπαρξησ αυτοματιςμών. Κεντρικό διαχεύριςη. Διαθεςιμότητα. Μεύωςη του downtime. Ελάττωςη του κόςτουσ.

SysAdmin

SysAdmin

SysAdmin

SysAdmin

Puppet Agent Puppet Master

Τη δύναμη τησ αυτοματοπούηςησ των επαναλαμβανόμενων εργαςιών με ςυνϋπεια μεταξύ των εξυπηρετητών. Την ευκολύα ανϊπτυξησ νϋων εφαρμογών. Τη προςφορϊ ενεργόσ διαχεύριςησ τησ υποδομόσ.

Οριςμόσ

user { 'dchaidaris': ensure => present, gid => 'sysadmin', home => '/mnt/home/dchaidaris', user { 'dchaidaris': ensure => present, gid => 'staff', home => '/home/dchaidaris', user { 'dchaidaris': ensure => present, gid => 'sysadmin', home => '/mnt/home/dchaidaris',

Δοκιμή #puppet agent t --noop

Εφαρμογή

Αναφορά

Ποιοι Χρηςιμοποιοφν Το Puppet.

Εφαρμογή

Puppet Master master2.example.com 5.172.196.152 Puppet Agent agent1.example.com 5.172.196.144

Puppet Master master2.example.com 5.172.196.152 C:\Windows\System32\drivers\etc\hosts 5.172.196.144 wordpress.example.com 5.172.196.152 wordpress2.example.com Puppet Agent agent1.example.com 5.172.196.144

Hiera Κατϊ την ςυγγραφό κώδικα εύναι προβληματικό η ςυνύπαρξη των δεδομϋνων που χρηςιμοποιούνται ςτη ρύθμιςη των κλϊςεων με τον κώδικα Puppet. Λύςη εύναι ο διαχωριςμόσ των δεδομϋνων ρυθμύςεων και η αποθόκευςη τουσ ςε μια εξωτερικό πηγό δεδομϋνων. Αυτό τον ρόλο ϋχει το Hiera.

Προςφζρει Την εύκολη διαχεύριςη νϋων nodes, αποτρϋποντασ την επανϊληψη των ύδιων παραμϋτρων με την χρόςη προκαθοριςμϋνων τιμών για κϊποιουσ Agents. Ευκολύα ςτη χρόςη και εφαρμογό νϋων module που βρύςκονται διαθϋςιμα ςτο διαδύκτυο για λόψη. Ευκολύα ςτην δημιουργύα και διαμούραςη ςτο διαδύκτυο νϋων modules.

Δημιουργία ενόσ profile (1/3) #/etc/puppet/modules/profiles/manifests/wordpress.pp class profiles::wordpress { ## Hiera lookups $site_name = hiera('profiles::wordpress::site_name') $wordpress_user_password = hiera('profiles::wordpress::wordpress_user_password') $wordpress_root_password = hiera('profiles::wordpress::mysql_root_password') $wordpress_db_host = hiera('profiles::wordpress::wordpress_db_host') $wordpress_db_name = hiera('profiles::wordpress::wordpress_db_name') $wordpress_db_password = hiera('profiles::wordpress::wordpress_db_password') $wordpress_user = hiera('profiles::wordpress::wordpress_user') $wordpress_group = hiera('profiles::wordpress::wordpress_group') $wordpress_docroot = hiera('profiles::wordpress::wordpress_docroot') $wordpress_port = hiera('profiles::wordpress::wordpress_port')

Δημιουργία ενόσ profile (2/3) ## Create user group { 'wordpress': ensure => present, name => $wordpress_group, user { 'wordpress': ensure => present, gid => $wordpress_group, password => $wordpress_user_password, name => $wordpress_user, home => $wordpress_docroot, ## Configure mysql class { 'mysql::server': root_password => $wordpress_root_password, class { 'mysql::bindings': php_enable => true,

Δημιουργία ενόσ profile (3/3) ## Configure apache include apache include apache::mod::php apache::vhost { $site_name: port => $wordpress_port, docroot => $wordpress_docroot, ## Configure wordpress class { '::wordpress': install_dir => $wordpress_docroot, db_name => $wordpress_db_name, db_host => $wordpress_db_host, db_password => $wordpress_db_password,

/etc/puppet/hiera.yaml --- :backends: - yaml :hierarchy: - "node/%{::fqdn" - "location/%{::location" - "role/%{::role" - common :yaml: :datadir: /etc/puppet/hieradata :merge_behavior: deeper Η ιεραρχύα βαςύζεται ςε τρεισ δυναμικϋσ πηγϋσ δεδομϋνων και ςε μια ςτατικό πηγό.

Ανάθεςη τιμών για τον master2.example.com #/etc/puppet/hieradata/node/master2.example.com.yaml profiles::wordpress::site_name: 'wordpress2.example.com' profiles::wordpress::wordpress_user_password: 'wordpress2' profiles::wordpress::mysql_root_password: 'password' profiles::wordpress::wordpress_db_host: 'localhost' profiles::wordpress::wordpress_db_name: 'wordpress2' profiles::wordpress::wordpress_db_password: 'wordpress2' profiles::wordpress::wordpress_user: 'wordpress2' profiles::wordpress::wordpress_group: 'wordpress2' profiles::wordpress::wordpress_docroot: '/var/www/wordpress2' profiles::wordpress::wordpress_port: '80'

Ανάθεςη τιμών για όλουσ του υπόλοιπουσ #/etc/puppet/hieradata/common.yaml profiles::wordpress::site_name: 'wordpress.example.com' profiles::wordpress::wordpress_user_password: 'wordpress' profiles::wordpress::mysql_root_password: 'password' profiles::wordpress::wordpress_db_host: 'localhost' profiles::wordpress::wordpress_db_name: 'wordpress' profiles::wordpress::wordpress_db_password: 'wordpress' profiles::wordpress::wordpress_user: 'wordpress' profiles::wordpress::wordpress_group: 'wordpress' profiles::wordpress::wordpress_docroot: '/var/www/wordpress' profiles::wordpress::wordpress_port: '80'

Ανάθεςη κλάςεων #/etc/puppet/environments/production/manifests/site.pp node 'master2.example.com' { include profiles::wordpress node 'agent1.example.com' { include profiles::wordpress

Version - Control Το Git εύναι ϋνα ςύςτημα ελϋγχου διανεμόμενησ ϋκδοςησ και διαχεύριςησ πηγαύου κώδικα (SCM) με ϋμφαςη ςτην ταχύτητα, ςτην ακεραιότητα των δεδομϋνων και ςτην υποςτόριξη για κατανεμημϋνεσ μη γραμμικϋσ ροϋσ εργαςύασ. Ενςωμϊτωςη του με το Puppet. Δημιουργύα των branches development, testing, production. https://github.com/go2jimmys/puppet

Το Λειτουργικό Μοντζλο Deployment Configuration Language & Resource Abstraction Transactional Layer Ανϊπτυξη. Η γλώςςα διαχεύριςησ Puppet και το αφαιρετικό επύπεδο των resources. Το επύπεδο ςυναλλαγών.

Συναλλαγζσ Συλλογό γεγονότων (Hostname, IP, OS κτλπ), χρηςιμοποιώντασ το Facter. Αποςτολό τουσ ςτον Master μαζύ με αύτηςη καταλόγου. Δημιουργύα του καταλόγου ςτον Master για τον ςυγκεκριμϋνο Agent, ϋπειτα από μια διαδικαςύα ταξικόσ διαλογόσ και μεταγλώττιςησ Puppet κώδικα. Αποςτολό του καταλόγου ςτον Agent. Εφαρμογό των προσ εκτϋλεςη ενεργειών, που περιγρϊφονται ςτον κατϊλογο. Αναφορϊ τησ προόδου ςτον Master.

Indepotency Ένα περιβϊλλον υφύςταται αλλαγϋσ από το Puppet μόνο όταν απαιτούνται. Όταν δεν υπϊρχουν διαθϋςιμεσ ρυθμύςεισ προσ εφαρμογό για ϋναν Puppet Αgent ό όταν ϋχουν όδη εφαρμοςτεύ οι προβλεπόμενεσ ρυθμύςεισ, το Puppet δεν πραγματοποιεύ οποιαδόποτε αλλαγό ό ενϋργεια. Η ιδιότητα αυτό ονομϊζεται indepotency (ταυτοδύναμη ςυμπεριφορά). Βαςικό χαρακτηριςτικό του Puppet γιατύ παρϊγεται το ύδιο αποτϋλεςμα ανεξϊρτητα από το πλόθοσ των εκτελϋςεων.

Μοντζλο Ανάπτυξησ Πελϊτη εξυπηρετητό (Client Server) Αυτόνομο (Stand-Alone)

Διαδικαςία Πιςτοποίηςησ 1. Ο Αgent παρϊγει ϋνα ιδιωτικό κλειδύ που χρηςιμοποιεύ για την δημιουργύα του CSR (certificate signing request). 2. Το CSR αποςτϋλλεται μϋςω κρυπτογραφημϋνησ ςύνδεςησ SSL από τον Agent ςτον Master. 3. Ο Agent αναμϋνει την υπογραφό και την επιςτροφό του CSR από τον Master. 4. (Η ςύνδεςη τερματύζεται, αν δεν οριςτεύ η επιλογό waitforcert ςτον Master.) 5. Το πιςτοποιητικό του νϋου Agent υπογρϊφεται ςτον Master. 6. Η διαδικαςύα ολοκληρώνεται με επαναςύνδεςη του Agent ςτον Master.

Η Γλώςςα Διαχείριςησ Puppet Το Puppet χρηςιμοποιεύ μια δηλωτικό γλώςςα. Με αυτόν, περιγρϊφεται η επιθυμητό κατϊςταςη ενόσ ςυςτόματοσ. Όχι τα βόματα εκτϋλεςησ για την πραγματοπούηςησ μιασ εργαςύασ. Τα αρχεύα που περιϋχουν κώδικα Puppet, ονομϊζονται Manifest.

Η Γλώςςα Διαχείριςησ Puppet (ςυνζχεια) Resources file service Package Etc. Classes Use once. Support inheritance. Defines Use many Support arguments.

Κλάςεισ Εύναι ςυλλογϋσ από Resources. Χρηςιμοποιούνται κυρύωσ για την ομαδοπούηςη των Resources, που ςχετύζονται με μια ςυγκεκριμϋνη εφαρμογό (Apache, Postfix, SSH, etc). Οι κλϊςεισ διαφοροποιούνται ςε δύο κατηγορύεσ: Σε όςεσ δεν δέχονται παραμϋτρουσ. Σε όςεσ δέχονται παραμϋτρουσ.

Μια κλάςη δίχωσ παραμζτρουσ class base::linux { file { '/etc/passwd': owner => 'root', group => 'root', mode => '0644', file { '/etc/shadow': owner => 'root', group => 'root', mode => '0440', Ονομαςύα κλϊςησ Resource τύπου αρχεύου Attributes

Μια κλάςη με παραμζτρουσ # Μια κλάζη με παραμέηροσς. Τίθεηαι προκαθοριζμένη ηιμή ζηην παράμεηρο $version. class apache ($version = 'latest') { package {'httpd': ensure => $version, # Γίνεηαι τρήζη ηης παραμέηροσ before => File['/etc/httpd.conf'], file {'/etc/httpd.conf': ensure => file, owner => 'httpd', content => template('apache/httpd.conf.erb'), # Αρτείο Template από ένα module service {'httpd': ensure => running, enable => true, subscribe => File['/etc/httpd.conf'],

Ανάθεςη κλάςεων Οι κλϊςεισ χαρακτηρύζονται ωσ Singletons. Το Puppet επιτρϋπει την δόλωςη μόνο ενόσ resource ύδιου τύπου με το ύδιο όνομα για ϋναν Agent. Διαφορετικϊ, προκαλεύται ςφϊλμα κατϊ την μεταγλώττιςη καταλόγου και διακοπό τησ εκτϋλεςησ του Puppet. Υπϊρχουν τρεισ διαφορετικού τρόποι ανϊθεςησ κλϊςεων ςτουσ Agent Nodes: Include-like ςυμπεριφορϊ Resource-like ςυμπεριφορϊ Με χρόςη ενόσ ENC (External Node Classifier)

Include-Like ςυμπεριφορά Χρόςη των ςυναρτόςεων include, require, contain και hiera_include. Η επαναλαμβανόμενη ανϊθεςη τησ ύδιασ κλϊςησ ςε ϋναν Agent δεν παρϊγει ςφϊλμα κατϊ τη μεταγλώττιςη. Προτεινόμενη μϋθοδοσ ανϊθεςησ κλϊςεων.

Include-Like ςυμπεριφορά Για τον προςδιοριςμό των τιμών των παραμϋτρων μιασ κλϊςησ, το Puppet εκτελεύ τα παρακϊτω βόματα επαναληπτικϊ για κϊθε παρϊμετρο: 1. Αναζότηςη τησ τιμόσ τησ παραμϋτρου ςε μια εξωτερικό πηγό δεδομϋνων χρηςιμοποιώντασ το μοντϋλο <class name>::<parameter name>. 2. Σε περύπτωςη αδυναμύασ εύρεςησ τησ ςε εξωτερικό πηγό, γύνεται χρόςη τησ προκαθοριςμϋνησ τιμόσ τησ παραμϋτρου (Που δηλώνεται κατϊ τον οριςμό τησ κλϊςησ). 3. Αποτυχύα τησ μεταγλώττιςησ με μόνυμα ςφϊλματοσ ςε περύπτωςη αδυναμύασ εύρεςησ τησ τιμόσ τησ παραμϋτρου.

Include-Like Παράδειγμα node 'web.example.com { include base::linux include base::linux # Το αποηέλεζμα είναι ηο ίδιο αθού η κλάζη εκηελείηαι μια θορά από ηον μεηαγλωηηιζηή. include base::linux, apache # Καλείηαι λίζηα κλάζεων $my_classes = ['base::linux', 'apache'] include $my_classes # Καλείηαι πίνακας ποσ περιέτει κλάζεις

Resource-Like ςυμπεριφορά Η επαναλαμβανόμενη ανϊθεςη τησ ύδιασ κλϊςησ ςε ϋναν Agent, υποχρεωτικϊ δεν επιτρέπεται. Σε περύπτωςη πολλαπλόσ δόλωςησ προκαλεύται ςφϊλμα κατϊ την μεταγλώττιςη του κώδικα. Κατϊ την κλόςη μιασ κλϊςησ με την παραπϊνω μϋθοδο, υπϊρχει η δυνατότητα αντικατϊςταςησ των παραμϋτρων τησ κλϊςησ κατϊ την μεταγλώττιςη.

Resource-Like ςυμπεριφορά Για τον προςδιοριςμό των τιμών των παραμϋτρων μιασ κλϊςησ, το Puppet εκτελεύ τα παρακϊτω βόματα επαναληπτικϊ για κϊθε παρϊμετρο: 1. Χρηςιμοποιεύ τα ορύςματα τησ κλϊςησ για να αντικαταςτόςει την τιμό τησ παραμϋτρου. 2. Αναζότηςη τησ τιμόσ τησ παραμϋτρου ςε μια εξωτερικό πηγό δεδομϋνων χρηςιμοποιώντασ το μοντϋλο <class name>::<parameter name>. 3. Σε περύπτωςη αδυναμύασ εύρεςησ τησ με κϊποια από τισ παραπϊνω μεθόδουσ, γύνεται χρόςη τησ προκαθοριςμϋνησ τιμόσ τησ παραμϋτρου (Που δηλώνεται κατϊ τον οριςμό τησ κλϊςησ). 4. Αποτυχύα τησ μεταγλώττιςησ με μόνυμα ςφϊλματοσ ςε περύπτωςη αδυναμύασ εύρεςησ τησ τιμόσ τησ παραμϋτρου.

Resource-Like Παράδειγμα # /etc/puppet/modules/webserver/manifests/params.pp class webserver::params { $packages = $operatingsystem? { /(?i-mx:ubuntu debian)/ => 'apache2', /(?i-mx:centos fedora redhat)/ => 'httpd', $vhost_dir = $operatingsystem? { /(?i-mx:ubuntu debian)/ => '/etc/apache2/sites-enabled', /(?i-mx:centos fedora redhat)/ => '/etc/httpd/conf.d', # /etc/puppet/modules/webserver/manifests/init.pp class webserver( $packages = $webserver::params::packages, $vhost_dir = $webserver::params::vhost_dir ) inherits webserver::params { package { $packages: ensure => present file { 'vhost_dir': path => $vhost_dir, ensure => directory, mode => '0750', owner => 'www-data', group => 'root',