Εγκατάσταση και Διαχείριση Prefect Workflow Orchestrator µε Χρήση Infrastructure as Code Μεθοδολογιών

Loading...
Thumbnail Image

Journal Title

Journal ISSN

Volume Title

Publisher

DOI

Abstract

Οι υποδομές λογισμικού εκτείνονται σήμερα σε πολλές εικονικές μηχανές και σε περισσότερα από ένα περιβάλλοντα, όπως ανάπτυξης, δοκιμών και παραγωγής. Όταν στήνονται και συντηρούνται με χειροκίνητες επεμβάσεις, τα βήματα δεν καταγράφονται πουθενά, κάθε μηχανή και κάθε περιβάλλον καταλήγει λίγο διαφορετικό από τα υπόλοιπα, και οι διαφορές συσσωρεύονται σε απόκλιση διαμόρφωσης, που κάνει τις εκδόσεις ασταθείς και τα σφάλματα δύσκολα αναπαραγώγιμα. Η παρούσα διπλωματική εργασία εξετάζει το Infrastructure as Code (IaC), δηλαδή την περιγραφή της υποδομής σε κώδικα που δηλώνει την επιθυμητή κατάσταση του συστήματος, και τις αρχές του: τη δηλωτική περιγραφή, την ταυτοδυναμία και τη διατήρηση όλων σε έλεγχο εκδόσεων. Αναλύει τα πλεονεκτήματά του έναντι της χειροκίνητης διαχείρισης: όλα τα περιβάλλοντα παράγονται από τον ίδιο κώδικα, μια αλλαγή γράφεται μία φορά και εφαρμόζεται παντού, ο κώδικας τεκμηριώνει το σύστημα, και η επανεκτέλεσή του ελέγχει ότι το σύστημα συμφωνεί με αυτόν. Για να δοκιμαστεί το IaC στην πράξη, επιλέχθηκε ο ενορχηστρωτής ροών εργασίας Prefect. Εργαλεία αυτής της κατηγορίας εκτελούν ETL flows, ροές MLOps και data pipelines μεγάλου όγκου δεδομένων, και κλιμακώνονται με την προσθήκη εικονικών μηχανών, οπότε η εγκατάστασή τους είναι κατάλληλη περίπτωση μελέτης. Σε ιδιωτικό cloud OpenStack, το OpenTofu δημιουργεί από τον ίδιο κώδικα τις εικονικές μηχανές, το δίκτυο και την ομάδα ασφαλείας των περιβαλλόντων dev, staging και prod. Το Ansible, μέσω δυναμικού inventory που διαβάζει τις εξόδους του OpenTofu, εγκαθιστά τον διακομιστή του Prefect με HTTPS και έλεγχο ταυτοποίησης, καθώς και τους workers, και καταχωρίζει τα Prefect flows. Η λειτουργία του συστήματος επαληθεύεται με ένα ETL flow, του οποίου τα Prefect tasks εκτελούνται ταυτόχρονα, ενώ οι εκτελέσεις του κατανέμονται παράλληλα στους workers. Κάθε περιβάλλον στήνεται από το μηδέν αποκλειστικά από τον κώδικα του αποθετηρίου, από τον οποίο περνά και κάθε μεταγενέστερη αλλαγή.

Description

Citation

Endorsement

Review

Supplemented By

Referenced By