Πώς να γίνετε μηχανικός DevOps σε έξι μήνες ή ακόμα πιο γρήγορα. Μέρος 1. Εισαγωγή

Целевая аудитория

Είσαι προγραμματιστής που θέλει να στρέψει την καριέρα σου προς ένα πιο προηγμένο μοντέλο DevOps; Είστε κλασικός μηχανικός Ops και θα θέλατε να πάρετε μια ιδέα για το τι σημαίνει DevOps; Ή μήπως δεν είστε κανένα από τα δύο και, αφού περάσετε λίγο χρόνο εργάζεστε στον τομέα της πληροφορικής, θέλετε να αλλάξετε καριέρα και δεν έχετε ιδέα από πού να ξεκινήσετε;
Εάν ναι, τότε διαβάστε για να μάθετε πώς μπορείτε να γίνετε μηχανικός DevOps μεσαίου επιπέδου σε έξι μήνες! Τέλος, εάν ασχολείστε με το DevOps για πολλά χρόνια, θα εξακολουθήσετε να ωφελείτε πολλά από αυτήν τη σειρά άρθρων για να μάθετε πού βρίσκεται αυτή τη στιγμή η βιομηχανία ενοποίησης και αυτοματισμού και πού οδεύει.

Πώς να γίνετε μηχανικός DevOps σε έξι μήνες ή ακόμα πιο γρήγορα. Μέρος 1. Εισαγωγή

Τι είναι αυτό το θέμα;

Πρώτον, τι είναι το DevOps; Μπορείτε να γκουγκλάρετε ορισμούς και να περιπλανηθείτε σε όλη τη γλωσσολαλιά, αλλά να ξέρετε ότι οι περισσότεροι από τους ορισμούς είναι απλώς ένα συνονθύλευμα λέξεων τυλιγμένες σε μια βελτιωμένη μορφή. Επομένως, θα σας δώσω μια περίληψη όλων αυτών των ορισμών: Το DevOps είναι μια μέθοδος παροχής λογισμικού στην οποία ο πονοκέφαλος και η ευθύνη μοιράζονται μεταξύ όλων των εμπλεκομένων. Αυτό είναι όλο.

Εντάξει, αλλά τι σημαίνει αυτή η συντομογραφία; Σημαίνει ότι παραδοσιακά, οι Προγραμματιστές (τα άτομα που δημιουργούν λογισμικό) παρακινούνται να κάνουν τη δουλειά τους από κίνητρα που είναι σημαντικά διαφορετικά από εκείνα των Operations (τα άτομα που διαχειρίζονται το λογισμικό). Για παράδειγμα, ως προγραμματιστής, θέλω να δημιουργήσω όσο το δυνατόν περισσότερες νέες δυνατότητες. Άλλωστε αυτή είναι η δουλειά μου και αυτό απαιτούν οι πελάτες! Ωστόσο, αν είμαι άτομο του Ops, τότε χρειάζομαι όσο το δυνατόν λιγότερα νέα χαρακτηριστικά, γιατί κάθε νέα δυνατότητα είναι μια αλλαγή και οποιαδήποτε αλλαγή είναι γεμάτη προβλήματα. Ως αποτέλεσμα αυτής της κακής ευθυγράμμισης των κινήτρων, γεννήθηκε το DevOps.

Το DevOps προσπαθεί να συνδυάσει την ανάπτυξη και τις λειτουργίες (ενσωμάτωση και αυτοματοποίηση) σε μια ομάδα. Η ιδέα είναι ότι μια ομάδα θα μοιραστεί τώρα τόσο τον πόνο όσο και την ευθύνη (και πιθανές ανταμοιβές) της δημιουργίας, της ανάπτυξης και της δημιουργίας εσόδων από λογισμικό που αντιμετωπίζει πελάτες.

Οι καθαρολόγοι θα σας πουν ότι δεν υπάρχει τέτοιο πράγμα όπως "μηχανικός DevOps". "Το DevOps είναι μια κουλτούρα, όχι ένας ρόλος", θα σας πουν. Φυσικά, από τεχνική άποψη έχουν δίκιο, αλλά, όπως είναι Συχνά, ο όρος έχει ξεφύγει Πέρα από την αρχική του σημασία, ένας μηχανικός DevOps είναι κάτι σαν "μηχανικός συστημάτων 2.0." Με άλλα λόγια, είναι κάποιος που κατανοεί τον κύκλο ζωής ανάπτυξης λογισμικού και δημιουργεί εργαλεία και διαδικασίες ανάπτυξης λογισμικού για την επίλυση κλασικών λειτουργικών προβλημάτων.

Πώς να γίνετε μηχανικός DevOps σε έξι μήνες ή ακόμα πιο γρήγορα. Μέρος 1. Εισαγωγή

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

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

Άρνηση της ευθύνης

Τώρα ας αφήσουμε λίγο στην άκρη το ποτήρι του Kool-Aid και ας σκεφτούμε το εξής. Έχετε ακούσει την παλιά παροιμία "δεν υπάρχουν κατώτεροι μηχανικοί DevOps;" Αν όχι, τότε να ξέρετε ότι αυτό είναι ένα δημοφιλές trope στο Reddit και το StackOverflow. Τι σημαίνει όμως;

Με απλά λόγια, αυτή η φράση σημαίνει ότι χρειάζονται πολλά χρόνια εμπειρίας σε συνδυασμό με μια σταθερή κατανόηση των εργαλείων για να γίνει τελικά ένας πραγματικά αποτελεσματικός ανώτερος επαγγελματίας DevOps. Και, δυστυχώς, δεν υπάρχει συντόμευση για την επίτευξη του στόχου. Επομένως, αυτή δεν είναι μια προσπάθεια να παίξετε το σύστημα - δεν νομίζω ότι είναι πραγματικά δυνατό να προσποιηθείτε ότι είστε ανώτερος μηχανικός DevOps με μερικούς μήνες εμπειρίας στον κλάδο. Η επίτευξη μιας στέρεης κατανόησης των ταχέως μεταβαλλόμενων εργαλείων και μεθοδολογιών απαιτεί χρόνια εμπειρίας και δεν υπάρχει καμία λύση. Ωστόσο, υπάρχει ένα σχεδόν συνεπές (μοντέρνο, αν θέλετε) μενού εργαλείων και εννοιών που χρησιμοποιούν οι περισσότερες εταιρείες και γι' αυτό θα μιλήσουμε.

Και πάλι, τα εργαλεία διαφέρουν από τις δεξιότητες, οπότε ενώ μαθαίνετε τα εργαλεία, βεβαιωθείτε ότι δεν παραμελείτε τις δεξιότητές σας (έρευνα, δικτύωση, γραπτή επικοινωνία, αντιμετώπιση προβλημάτων κ.λπ.). Το πιο σημαντικό, μην ξεχνάτε αυτό που θέλουμε να βρούμε - έναν τρόπο δημιουργίας ενός πλήρως αυτοματοποιημένου ψηφιακού αγωγού που παίρνει ιδέες και τις μετατρέπει σε κομμάτια κώδικα που παράγουν έσοδα. Αυτό είναι το πιο σημαντικό συμπέρασμα από ολόκληρο το άρθρο!

Αρκετά φλυαρία, πότε μπορώ να ξεκινήσω;

Παρακάτω είναι ο οδικός χάρτης για τη θεμελιώδη γνώση του DevOps. Έχοντας κατακτήσει όλα όσα απεικονίζονται εκεί, μπορείτε με ασφάλεια και ειλικρίνεια να αποκαλείτε τον εαυτό σας μηχανικό DevOps! Ή ένας μηχανικός cloud, αν δεν σας αρέσει το όνομα "DevOps".

Πώς να γίνετε μηχανικός DevOps σε έξι μήνες ή ακόμα πιο γρήγορα. Μέρος 1. Εισαγωγή

Αυτός ο χάρτης αντιπροσωπεύει την ιδέα μου (και πιθανώς των περισσότερων ανθρώπων που εργάζονται σε αυτόν τον χώρο) για το τι πρέπει να γνωρίζει ένας ικανός μηχανικός DevOps. Ωστόσο, αυτή είναι μόνο μια άποψη, και φυσικά θα υπάρξουν και αυτοί που θα διαφωνήσουν μαζί της. Είναι εντάξει! Δεν επιδιώκουμε την τελειότητα εδώ, προσπαθούμε για μια γερή βάση πάνω στην οποία μπορούμε πραγματικά να χτίσουμε.

Πρέπει να περάσετε από αυτό το μονοπάτι σταδιακά, στρώμα προς στρώμα. Ας ξεκινήσουμε (και συνεχίζουμε!) με τις βασικές αρχές μαθαίνοντας πρώτα για τα στοιχεία με μπλε χρώμα—Linux, Python και AWS. Στη συνέχεια, εάν το επιτρέπει ο χρόνος ή η ζήτηση της αγοράς εργασίας, κάντε τα μωβ πράγματα - Golang και Google Cloud.

Ειλικρινά, το θεμελιώδες ανώτερο στρώμα είναι κάτι που θα πρέπει να μελετάτε για πάντα. Το λειτουργικό σύστημα Linux είναι πολύ περίπλοκο και χρειάζεται χρόνια για να κυριαρχήσει. Η Python απαιτεί συνεχή εξάσκηση για να παραμείνει ενημερωμένη. Το AWS εξελίσσεται τόσο γρήγορα που αυτά που γνωρίζετε σήμερα θα αποτελούν μέρος του συνολικού χαρτοφυλακίου γνώσεών σας σε ένα χρόνο από τώρα. Μόλις μάθετε τα βασικά, προχωρήστε στο πραγματικό σύνολο δεξιοτήτων. Λάβετε υπόψη ότι υπάρχουν συνολικά 6 μπλε στήλες (Διαμόρφωση, Έκδοση, Συσκευασία, Ανάπτυξη, Εκκίνηση, Παρακολούθηση), μία ανά μήνα μελέτης.

Πώς να γίνετε μηχανικός DevOps σε έξι μήνες ή ακόμα πιο γρήγορα. Μέρος 1. Εισαγωγή

Φυσικά, παρατηρήσατε την απουσία ενός σημαντικού σταδίου στον εξάμηνο αγωγό μας - δοκιμή. Σκόπιμα δεν το συμπεριέλαβα στον οδικό χάρτη γιατί η σύνταξη μιας ενότητας, των δοκιμών ενσωμάτωσης και αποδοχής δεν είναι εύκολη και παραδοσιακά πέφτει στους ώμους των προγραμματιστών. Και η παράλειψη του σταδίου «δοκιμών» εξηγείται από το γεγονός ότι ο στόχος αυτού του οδικού χάρτη είναι να κατακτηθούν οι βασικές δεξιότητες και τα εργαλεία όσο το δυνατόν γρηγορότερα. Η έλλειψη εμπειρίας δοκιμών, σύμφωνα με τον συγγραφέα, είναι μόνο ένα μικρό εμπόδιο για τη σωστή χρήση του DevOps.

Επίσης, να θυμάστε ότι δεν μαθαίνουμε μια ολόκληρη δέσμη άσχετων τεχνικών φλυαριών εδώ, αλλά μάλλον μια κατανόηση των εργαλείων που συνδυάζονται για να δημιουργήσουν μια ξεκάθαρη ιστορία. Αυτή η ιστορία αφορά τον αυτοματισμό διεργασιών από άκρο σε άκρο — μια ψηφιακή γραμμή συναρμολόγησης που κινεί κομμάτια σαν γραμμή συναρμολόγησης. Δεν θέλετε να μάθετε ένα σωρό εργαλεία και συνεχίστε να σταματάτε! Τα εργαλεία DevOps αλλάζουν γρήγορα, αλλά οι έννοιες αλλάζουν πολύ λιγότερο συχνά. Ως εκ τούτου, θα πρέπει να προσπαθήσετε να χρησιμοποιήσετε εργαλεία ως πληρεξούσιους διδασκαλίας για έννοιες υψηλότερου επιπέδου.

Εντάξει, ας σκάψουμε λίγο πιο βαθιά!

Θεμελιώδεις γνώσεις

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

Το Linux είναι όπου όλα λειτουργούν. Μπορείτε να είστε ένας καταπληκτικός επαγγελματίας DevOps, ενώ παραμένετε πλήρως μέσα στο οικοσύστημα της Microsoft; Σίγουρα μπορείς! Δεν υπάρχει νόμος που να υπαγορεύει να χρησιμοποιείτε μόνο Linux. Ωστόσο, έχετε κατά νου ότι παρά το γεγονός ότι όλα τα πράγματα στο Linux μπορούν να γίνουν στα Windows, εκεί συμβαίνει πολύ πιο οδυνηρά και με λιγότερη λειτουργικότητα. Σε αυτό το σημείο, είναι ασφαλές να υποθέσουμε ότι χωρίς να γνωρίζετε το Linux, είναι αδύνατο να γίνετε πραγματικός επαγγελματίας DevOps, επομένως το Linux είναι κάτι που πρέπει να μελετήσετε και να μάθετε.

Ειλικρινά, ο καλύτερος τρόπος για να το κάνετε αυτό είναι απλά να εγκαταστήσετε το Linux (Fedora ή Ubuntu) στο σπίτι και να το χρησιμοποιήσετε όσο το δυνατόν περισσότερο. Φυσικά θα σπάσεις πολλά πράγματα, θα κολλήσεις σε διαδικασίες δουλειάς, θα πρέπει να τα φτιάξεις όλα, αλλά θα μάθεις Linux!

Πώς να γίνετε μηχανικός DevOps σε έξι μήνες ή ακόμα πιο γρήγορα. Μέρος 1. Εισαγωγή

Παρεμπιπτόντως, οι παραλλαγές του RedHat είναι πιο κοινές στη Βόρεια Αμερική, επομένως είναι λογικό να ξεκινήσετε με το Fedora ή το CentOS. Εάν αναρωτιέστε αν πρέπει να αγοράσετε την έκδοση KDE ή Gnome, επιλέξτε KDE. Αυτό χρησιμοποιεί ο ίδιος ο Linus Torvalds.

Η Python είναι η κυρίαρχη γλώσσα back-end αυτές τις μέρες. Είναι εύκολο να ξεκινήσετε και χρησιμοποιείται ευρέως. Η Python είναι πολύ διαδεδομένη στον τομέα της τεχνητής νοημοσύνης και της μηχανικής μάθησης, οπότε αν ποτέ θελήσετε να μετακινηθείτε σε άλλο καυτό πεδίο, θα είστε πλήρως προετοιμασμένοι.

Πώς να γίνετε μηχανικός DevOps σε έξι μήνες ή ακόμα πιο γρήγορα. Μέρος 1. Εισαγωγή

Υπηρεσίες Διαδικτύου Amazon: Και πάλι, είναι αδύνατο να γίνετε έμπειρος επαγγελματίας DevOps χωρίς να έχετε πλήρη κατανόηση του πώς λειτουργεί το δημόσιο cloud. Και αν θέλετε να μάθετε περισσότερα σχετικά με αυτό, ανατρέξτε στις Υπηρεσίες Ιστού της Amazon. Είναι κορυφαίος παίκτης σε αυτόν τον τομέα υπηρεσιών και προσφέρει το πλουσιότερο σύνολο εργαλείων εργασίας.

Είναι δυνατόν να ξεκινήσετε με το Google Cloud ή το Azure; Φυσικά μπορείτε να! Αλλά θυμόμαστε την τελευταία οικονομική κρίση, πρέπει να σημειωθεί ότι το AWS είναι η πιο ασφαλής επιλογή, τουλάχιστον το 2018, καθώς σας επιτρέπει να εγγραφείτε δωρεάν έναν λογαριασμό και να ξεκινήσετε να εξερευνάτε τις δυνατότητες των υπηρεσιών cloud. Επιπλέον, η κονσόλα AWS παρέχει στον χρήστη ένα απλό και σαφές μενού για επιλογή. Τα καλά νέα είναι ότι δεν χρειάζεται να γνωρίζετε όλες τις τεχνολογίες της Amazon για να το κάνετε αυτό.

Πώς να γίνετε μηχανικός DevOps σε έξι μήνες ή ακόμα πιο γρήγορα. Μέρος 1. Εισαγωγή

Ξεκινήστε με τα εξής: VPC, EC2, IAM, S3, CloudWatch, ELB (Elastic Load Balancing κάτω από την ομπρέλα EC2) και Security Group. Αυτά τα πράγματα είναι αρκετά για να ξεκινήσετε και κάθε σύγχρονη επιχείρηση που βασίζεται στο cloud χρησιμοποιεί αυτά τα εργαλεία αρκετά ενεργά. Ο ιστότοπος εκπαίδευσης της AWS είναι ένα καλό μέρος για να ξεκινήσετε.

Σας συνιστώ να αφιερώνετε 20-30 λεπτά καθημερινά για εκμάθηση και εξάσκηση με τη γλώσσα Python, το λειτουργικό σύστημα Linux και την υπηρεσία cloud AWS εκτός από άλλα πράγματα που θα πρέπει να μάθετε. Συνολικά, πιστεύω ότι το να ξοδεύετε μια ώρα την ημέρα, πέντε φορές την εβδομάδα είναι αρκετό για να κατανοήσετε τη βιομηχανία DevOps σε 6 μήνες ή λιγότερο. Υπάρχουν συνολικά 6 βασικά συστατικά, το καθένα από τα οποία αντιστοιχεί σε ένα μήνα εκπαίδευσης. Αυτό είναι το μόνο που χρειάζεστε για να αποκτήσετε βασικές γνώσεις.
Σε επόμενα άρθρα, θα εξετάσουμε το επόμενο επίπεδο πολυπλοκότητας: πώς να αυτοματοποιήσετε πλήρως τη διαμόρφωση, την έκδοση, τη συσκευασία, την ανάπτυξη, την εκτέλεση και την παρακολούθηση του λογισμικού.

Συνέχεια πολύ σύντομα...

Μερικές διαφημίσεις 🙂

Σας ευχαριστούμε που μείνατε μαζί μας. Σας αρέσουν τα άρθρα μας; Θέλετε να δείτε πιο ενδιαφέρον περιεχόμενο; Υποστηρίξτε μας κάνοντας μια παραγγελία ή προτείνοντας σε φίλους, cloud VPS για προγραμματιστές από 4.99 $, ένα μοναδικό ανάλογο διακομιστών εισαγωγικού επιπέδου, το οποίο εφευρέθηκε από εμάς για εσάς: Όλη η αλήθεια για το VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps από 19 $ ή πώς να μοιραστείτε έναν διακομιστή; (διατίθεται με RAID1 και RAID10, έως 24 πυρήνες και έως 40 GB DDR4).

Το Dell R730xd 2 φορές φθηνότερο στο κέντρο δεδομένων Equinix Tier IV στο Άμστερνταμ; Μόνο εδώ 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 Τηλεόραση από 199$ στην Ολλανδία! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - από 99$! Διαβάστε σχετικά Πώς να χτίσετε την υποδομή Corp. κατηγορίας με τη χρήση διακομιστών Dell R730xd E5-2650 v4 αξίας 9000 ευρώ για μια δεκάρα;

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο