Επιστροφή στο blog

Εξερευνώντας το CloudSigma PaaS: Πώς να αποκτήσετε πρόσβαση σε εφαρμογή Kubernetes μέσω Δημόσιας IP

Εξερευνώντας το CloudSigma PaaS: Πώς να αποκτήσετε πρόσβαση σε εφαρμογή Kubernetes μέσω Δημόσιας IP

CloudSigma PaaS επιτρέπει στους χρήστες να εκθέτουν τις εφαρμογές τους χρησιμοποιώντας μια δημόσια διεύθυνση IP. Αυτή η διεύθυνση πρέπει να συνδεθεί σε έναν κόμβο από το Kubernetes cluster περιβάλλον. Υπάρχουν δύο τρόποι για να το επιτύχετε αυτό στο περιβάλλον CloudSigma PaaS:

  • Ο ένας τρόπος είναι να συνδέσετε τη δημόσια IP σε έναν αποκλειστικό load balancer.1-Public IP for Access to Kubernetes Application in Jelastic PaaS
  • Ένας άλλος τρόπος είναι να συνδέσετε τη δημόσια IP σε έναν Worker κόμβο από το Kubernetes.

Σε αυτόν τον οδηγό, θα σας καθοδηγήσουμε για το πώς να αποκτήσετε πρόσβαση στην εφαρμογή Kubernetes χρησιμοποιώντας οποιαδήποτε από αυτές τις προσεγγίσεις.

Ρύθμιση ενός αποκλειστικού Load Balancer για πρόσβαση στην εφαρμογή Kubernetes

Αρχικά, θα μάθουμε πώς να ρυθμίζουμε έναν dedicated load balancer για πρόσβαση στην εφαρμογή:

  1. Μεταβείτε στο CloudSigma Marketplace για να εντοπίσετε και να εγκαταστήσετε το Kubernetes cluster. Στη συνέχεια, αναπτύξτε την εφαρμογή σας. Ως παράδειγμα, θα αναπτύξουμε το Jakarta EE Cargo Tracker.
  2. Δίπλα στο Kubernetes cluster σας, βρείτε και κάντε κλικ στο Change Environment Topology. Στο παράθυρο που ανοίγει στην οθόνη σας, προσθέστε έναν κόμβο Dedicated Load Balancer. Στη συνέχεια, συνδέστε μια δημόσια διεύθυνση IP σε αυτόν ως εξής:

2-Public IP Jelastic PaaS

Στο παράδειγμά μας, χρησιμοποιήσαμε τον NGINX load balancer κόμβο. Υπάρχουν πολλοί άλλοι διαθέσιμοι load balancers, συμπεριλαμβανομένων των HAProxy, LS Web ADC, και Varnish. Μπορείτε να επιλέξετε όποιον προτιμάτε να χρησιμοποιήσετε.

Όταν ολοκληρώσετε την τροποποίηση της τοπολογίας, οι αλλαγές που εφαρμόστηκαν θα μοιάζουν με αυτό:

3-Public IP for Access to Kubernetes Application in Jelastic PaaS

4-Public IP for Access to Kubernetes Application in Jelastic PaaS

3. Το επόμενο βήμα είναι να δημιουργήσετε μια εγγραφή A για ένα custom domain. Θα χρησιμοποιήσετε την ίδια δημόσια διεύθυνση IP που χρησιμοποιήσατε στα προηγούμενα βήματα. Σε αυτό το παράδειγμα, θα χρησιμοποιήσουμε το cargo-tracker.cloudsigma.website:

5-Public IP for Access to Kubernetes Application in Jelastic PaaS

4. Τώρα μπορούμε να συνδέσουμε το custom domain μας στο K8s cluster. Για να το κάνουμε αυτό, θα στείλουμε ένα αίτημα για την έκδοση ενός έμπιστου Let’s Encrypt SSL πιστοποιητικού:

  • Περάστε το ποντίκι πάνω από το Load Balancer και κάντε κλικ στο Add-Ons.
  • Βρείτε και εγκαταστήστε το Let’s Encrypt Free SSL:

6-Public IP for Access in Jelastic PaaS-02

  • Στη διαμόρφωση, εισαγάγετε το custom domain name σας και, στη συνέχεια, κάντε κλικ στο Install. Στη δική μας περίπτωση, το domain name είναι το εξής:

7-Public IP for Access to Kubernetes Application in Jelastic PaaS-

Τελικά, έχουμε πλέον κάνει την εφαρμογή μας προσβάσιμη χρησιμοποιώντας το custom domain https://cargo-tracker.cloudsigma.website. Έχουμε επίσης κρυπτογραφήσει την κίνηση στην εφαρμογή μας με ένα έγκυρο και έμπιστο πιστοποιητικό Let’s Encrypt SSL.

Απόκτηση πρόσβασης στην εφαρμογή χρησιμοποιώντας τη δημόσια διεύθυνση IP του Kubernetes Worker Node

Στη συνέχεια, θα εξετάσουμε την εναλλακτική προσέγγιση που μπορείτε να ακολουθήσετε για να κάνετε την εφαρμογή διαθέσιμη εκτός του Kubernetes cluster. Ουσιαστικά, θα μάθουμε πώς να συνδέσουμε μια δημόσια διεύθυνση IP σε έναν worker κόμβο στο Kubernetes cluster, προκειμένου να κάνουμε την εφαρμογή άμεσα προσβάσιμη:

8-Public IP for Access to Kubernetes Application in Jelastic PaaS

Ας συνεχίσουμε με το ίδιο παράδειγμα που σας δείξαμε προηγουμένως. Θα χρησιμοποιήσουμε το ίδιο cluster στο οποίο αναπτύξαμε την εφαρμογή Cargo Tracker. Δείτε πώς να προχωρήσετε:

1. Κάντε κλικ στο Change Environment Topology. Προσθέστε τη δημόσια διεύθυνση IP στον worker κόμβο:

9.1-Public IP for Access in Jelastic PaaS

2. Στη συνέχεια, δημιουργήστε μια εγγραφή A για το custom domain σας και αντιστοιχίστε τη στην IP που μόλις προσθέσατε. Βεβαιωθείτε ότι χρησιμοποιείτε ένα domain name διαφορετικό από αυτό που χρησιμοποιήθηκε στο προηγούμενο κεφάλαιο. Για παράδειγμα, θα χρησιμοποιήσουμε το ακόλουθο domain name: cargo-tracker-worker.cloudsigma.website:

9.2-Public IP for Access to Kubernetes Application in Jelastic PaaS

3. Περάστε το ποντίκι πάνω από το Control Plane ή τον Master κόμβο και κάντε κλικ στο Add-Ons. Εντοπίστε και εγκαταστήστε το Certificate Manager. Αυτό θα εγκαταστήσει έναν ελεγκτή cert-manager μαζί με έναν ελεγκτή εισόδου NGINX με τύπο υπηρεσίας LoadBalancer. Ο τελευταίος περιέχει τη διεύθυνση IP που σχετίζεται με τον worker κόμβο σας. Θα εξυπηρετεί τους πόρους κλάσης εισόδου «nginx-cert»:

10-Public IP for Access to Kubernetes Application in Jelastic PaaS-01

4. Στο συγκεκριμένο πεδίο, εισαγάγετε το domain name της προτίμησής σας και κάντε κλικ στο Apply:

11-Public IP for Access to Kubernetes Application in Jelastic PaaS

5. Κατά τη διάρκεια της εγκατάστασης, το πρόσθετο εγκαθιστά επίσης μια δοκιμαστική εφαρμογή που ονομάζεται helloworld-cert. Μπορείτε απλά να διαγράψετε τους πόρους που χρησιμοποιεί με αυτές τις εντολές:

Αυτές οι εντολές πρέπει να εισαχθούν και να εκτελεστούν χρησιμοποιώντας SSH (SFTP) ή το Web SSH Gate του Control Plane ή του Master Node. Περάστε το ποντίκι πάνω από τον κόμβο και κάντε κλικ στο Web SSH επιλογή δίπλα του για να αποκτήσετε πρόσβαση στην πύλη.

Η άλλη επιλογή είναι να περάσετε το ποντίκι πάνω από το Control Plane ή Master Node και να κάνετε κλικ στο Config. Από εδώ, μεταβείτε στο SFTP/SSH Gate και ακολουθήστε τις οδηγίες που δίνονται.

6. Για να τερματίσουμε την κίνηση SSL της εφαρμογής και να διαχειριστούμε τη δρομολόγηση προς την υπηρεσία cargo-tracker, πρέπει να δημιουργήσουμε έναν πόρο ingress που ονομάζεται cargo-tracker-worker. Ας υποθέσουμε ότι χρησιμοποιούμε το cargo-tracker-worker-ingress.yaml. Μπορείτε να χρησιμοποιήσετε έναν επεξεργαστή κειμένου όπως το vi για να δημιουργήσετε ένα αρχείο και στη συνέχεια να επικολλήσετε τον ακόλουθο κώδικα:

Μετά από αυτό,  προχωρήστε ως εξής:

7. Όταν δημιουργήσετε αυτό το ingress, ο Certificate Manager θα εκδώσει αυτόματα ένα πιστοποιητικό Let’s Encrypt SSL για το νέο σας όνομα τομέα. Δώστε στο σύστημα ένα ή δύο λεπτά προτού ελέγξετε αν η εφαρμογή σας είναι διαθέσιμη στο νέο προσαρμοσμένο όνομα τομέα, το οποίο είναι https://cargo-tracker-worker.cloudsigma.website στη δική μας περίπτωση.

Και ορίστε! Ακολουθώντας αυτά τα βήματα, έχετε εκθέσει την εφαρμογή σας χρησιμοποιώντας δύο διαφορετικές προσεγγίσεις. Ως αποτέλεσμα, θα δείτε δύο ingresses. Για εμάς, είναι:

  • cargo-tracker

Αυτό το ingress εξυπηρετεί την κίνηση της εφαρμογής που έρχεται μέσω της δημόσιας IP του αποκλειστικού σας load balancer.

  • cargo-tracker-worker

Αυτό το ingress έχει ρυθμιστεί να εξυπηρετεί την κίνηση της εφαρμογής που ρέει απευθείας από την IP που είναι συνδεδεμένη στον κόμβο εργασίας (worker node) του K8s.

Δείτε πώς θα εμφανίζονται:

12-Public IP for Access in Jelastic PaaS

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

Μπορείτε να δώσετε στο CloudSigma’s PaaS μια δοκιμή με τη δωρεάν δοκιμή 7 ημερών ή να επικοινωνήσετε μαζί μας εάν θέλετε να σας παρέχουμε περισσότερες λεπτομέρειες και μια παρουσίαση της πλατφόρμας. 

Δοκιμάστε Δωρεάν για 7 ημέρες

author

Zhenya Mocheva

Συγγραφέας · CloudSigma

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

Σχόλια

Δεν υπάρχουν σχόλια ακόμα. Γράψτε το πρώτο.