Workshop wiki · Greek

24 Μοντέλο Runtime για Kata και gVisor

Οι Sandbox Runtimes συγκρίνονται ως επιλογές RuntimeClass και Handler.

Workshop examples as ZIP files
Learning progress in the web app

Mark chapters as read, view reading progress and check off practice modules after enabling the optional web app. Workshop progress is calculated from chapters across all document pages. Your choices stay on this device; there is no account or server sync. Installation is not required. Withdrawing your choice in Privacy settings deletes the progress.

Reading progress0%
0%
0 / 11 chapters read
Other language versionGerman and English ↗

24 Μοντέλο Runtime για Kata και gVisor

Αυτό το παράδειγμα ανήκει στο containerd Workshop και ακολουθεί τη δομή των παραδειγμάτων Kubernetes: ένα κύριο README, αναλυτική τεκμηρίωση στα γερμανικά, αγγλικά και ελληνικά, καθώς και μικρά Artifacts που μπορούν να ελεγχθούν.

1. Στόχος

Οι Sandbox Runtimes συγκρίνονται ως επιλογές RuntimeClass και Handler.

Το παράδειγμα είναι ένα απομονωμένο Lab ή Model. Δεν τροποποιεί το Production Configuration της Runtime και γράφει τα αποτελέσματα εκτέλεσης αποκλειστικά στον φάκελο work/.

01 / 11

2. Προαπαιτούμενα

  • Linux, WSL, VM ή αντίστοιχο Test Environment.
  • python3 για επικύρωση JSON, TOML και YAML.
  • Προαιρετικά containerd, ctr, runc, nerdctl και crictl για πρόσθετα αποδεικτικά στοιχεία.
  • Μη χρησιμοποιείτε Production Nodes, Registries, Credentials ή Pull Secrets.
02 / 11

3. Αρχεία

  • README.md
  • README-EL.md
  • docs/de/README.md
  • docs/en/README.md
  • docs/el/README.md
  • run.sh
  • kubernetes/runtimeclasses.yaml
  • runtime/sandbox-runtimes.toml
03 / 11

4. Εκτέλεση

bash
cd examples/24-kata-gvisor-runtime-model
chmod +x run.sh
./run.sh
find work -maxdepth 3 -type f | sort
04 / 11

5. Αναμενόμενο αποτέλεσμα

  • Το run.sh τερματίζεται με Exit Code 0.
  • Τα TOML, JSON και YAML ελέγχονται ως προς τη σύνταξή τους.
  • Τα Shell Scripts ελέγχονται με bash -n.
  • Αν το containerd είναι διαθέσιμο τοπικά, καταγράφεται η έκδοσή του και συλλέγονται προαιρετικά στοιχεία από το ctr.
  • Όλα τα Runtime Artifacts δημιουργούνται στον φάκελο work/.
05 / 11

6. Επεξήγηση

Κατά την εργασία με το containerd πρέπει να διακρίνετε καθαρά τα επίπεδα: Host, containerd Daemon, API, Content Store, Snapshotter, Runtime, CRI, CNI και Kubernetes. Το παράδειγμα απομονώνει ένα συγκεκριμένο τμήμα τους και καθιστά σαφή τα ερωτήματα ανασκόπησης.

06 / 11

7. Συνήθη σφάλματα

Σφάλμα Αιτία Διάγνωση
Το ctr δεν εμφανίζει Kubernetes Images Λανθασμένο containerd Namespace ctr namespaces ls, ctr -n k8s.io images ls
Το Pull αποτυγχάνει Registry, TLS, Authentication ή Mirror Ελέγξτε hosts.toml, Logs και Resolver
Το Pod δεν ξεκινά CRI, CNI, Snapshotter ή Runtime Ελέγξτε crictl, journalctl και Events
Το Configuration φαίνεται σωστό αλλά αγνοείται Λανθασμένο Plugin ID ή Path Ελέγξτε containerd config dump και την έκδοση
Disk Pressure Content, Snapshots, Leases ή Logs ctr content ls, ctr snapshots ls, ctr leases ls
07 / 11

8. Θέματα ασφάλειας

  • Μην εισάγετε Production Sockets, Registry Credentials ή Cluster Endpoints σε Labs.
  • Μην παρακάμπτετε τα προβλήματα Registry TLS με skip_verify = true, εκτός αν πρόκειται για σαφώς σημειωμένο αρνητικό παράδειγμα.
  • Οι Sandbox Runtimes, το Seccomp και το AppArmor είναι πρόσθετοι έλεγχοι· δεν υποκαθιστούν τα ασφαλή Images.
  • Οι αλλαγές Runtime Configuration σε Kubernetes Nodes απαιτούν Drain, Rollback και έγκριση.
08 / 11

9. Ανασκόπηση και αποδεικτικά στοιχεία

Μια ολοκληρωμένη εργασία περιλαμβάνει τουλάχιστον:

text
work/evidence/
  tooling.txt
  result.txt
  config-review.txt
  risk-note.md
  cleanup.md

Δεν δημιουργείται κάθε αρχείο σε κάθε παράδειγμα. Σημασία έχει τα αποδεικτικά στοιχεία να συνδέονται με τον μαθησιακό στόχο και να μην περιέχουν Secrets.

09 / 11

10. Δυνατότητες επέκτασης

  • Επεκτείνετε το παράδειγμα με πραγματικό Test Registry.
  • Προσθέστε CRI Output από Lab Node.
  • Προσθέστε παραλλαγή RuntimeClass για Kata ή gVisor.
  • Προσθέστε Image Verification με Cosign ή Notation ως ξεχωριστό Lab.
  • Επικυρώστε τα αποδεικτικά στοιχεία ως προς TOML, JSON και YAML στο CI.

10 / 11

Παράρτημα παραδείγματος: αποδεικτικά στοιχεία, λειτουργία και μεταφορά

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

B.1 Ορίστε το πεδίο εφαρμογής

Ο ορισμός του πεδίου εφαρμογής είναι απαραίτητος εδώ, επειδή τα containerd Labs μπορεί διαφορετικά να μετατραπούν από ασφαλή Models σε ανεξέλεγκτες αλλαγές Nodes. Η αξιολόγηση πρέπει να διευκρινίζει αν ένα Artifact χρησιμεύει μόνο για επεξήγηση, επικυρώνεται τοπικά ή θα εφαρμοζόταν σε πραγματικό Node.

Ερώτημα Απαίτηση
Τι επηρεάζεται; Κατονομάζεται ο Host, ο Daemon, το Plugin, το Content, ο Snapshotter, η Runtime, το CRI, το CNI ή το Kubernetes.
Τι αποδεικνύεται; Ένα αρχείο ή Output στον φάκελο work/evidence/ τεκμηριώνει το εύρημα.
Τι μένει ανοικτό; Οι απαιτήσεις για πραγματικούς Nodes τεκμηριώνονται ως όριο εφαρμογής.

Σημεία ανασκόπησης:

  • Δεν υπάρχουν Production Secrets.
  • Δεν υπάρχουν αλλαγές σε Sockets ή systemd χωρίς ανασκόπηση.
  • Δεν υπάρχουν εξαιρέσεις Registry χωρίς αιτιολόγηση.
  • Δεν συγχέονται τα ctr, crictl και nerdctl.
  • Το Cleanup είναι εφικτό με διαγραφή του φακέλου work/.

B.2 Επικυρώστε τα Artifacts

Η επικύρωση των Artifacts είναι απαραίτητη εδώ, επειδή τα containerd Labs μπορεί διαφορετικά να μετατραπούν από ασφαλή Models σε ανεξέλεγκτες αλλαγές Nodes. Η αξιολόγηση πρέπει να διευκρινίζει αν ένα Artifact χρησιμεύει μόνο για επεξήγηση, επικυρώνεται τοπικά ή θα εφαρμοζόταν σε πραγματικό Node.

Ερώτημα Απαίτηση
Τι επηρεάζεται; Κατονομάζεται ο Host, ο Daemon, το Plugin, το Content, ο Snapshotter, η Runtime, το CRI, το CNI ή το Kubernetes.
Τι αποδεικνύεται; Ένα αρχείο ή Output στον φάκελο work/evidence/ τεκμηριώνει το εύρημα.
Τι μένει ανοικτό; Οι απαιτήσεις για πραγματικούς Nodes τεκμηριώνονται ως όριο εφαρμογής.

Σημεία ανασκόπησης:

  • Δεν υπάρχουν Production Secrets.
  • Δεν υπάρχουν αλλαγές σε Sockets ή systemd χωρίς ανασκόπηση.
  • Δεν υπάρχουν εξαιρέσεις Registry χωρίς αιτιολόγηση.
  • Δεν συγχέονται τα ctr, crictl και nerdctl.
  • Το Cleanup είναι εφικτό με διαγραφή του φακέλου work/.

B.3 Ονομάστε το επίπεδο Runtime

Η ονομασία του επιπέδου Runtime είναι απαραίτητη εδώ, επειδή τα containerd Labs μπορεί διαφορετικά να μετατραπούν από ασφαλή Models σε ανεξέλεγκτες αλλαγές Nodes. Η αξιολόγηση πρέπει να διευκρινίζει αν ένα Artifact χρησιμεύει μόνο για επεξήγηση, επικυρώνεται τοπικά ή θα εφαρμοζόταν σε πραγματικό Node.

Ερώτημα Απαίτηση
Τι επηρεάζεται; Κατονομάζεται ο Host, ο Daemon, το Plugin, το Content, ο Snapshotter, η Runtime, το CRI, το CNI ή το Kubernetes.
Τι αποδεικνύεται; Ένα αρχείο ή Output στον φάκελο work/evidence/ τεκμηριώνει το εύρημα.
Τι μένει ανοικτό; Οι απαιτήσεις για πραγματικούς Nodes τεκμηριώνονται ως όριο εφαρμογής.

Σημεία ανασκόπησης:

  • Δεν υπάρχουν Production Secrets.
  • Δεν υπάρχουν αλλαγές σε Sockets ή systemd χωρίς ανασκόπηση.
  • Δεν υπάρχουν εξαιρέσεις Registry χωρίς αιτιολόγηση.
  • Δεν συγχέονται τα ctr, crictl και nerdctl.
  • Το Cleanup είναι εφικτό με διαγραφή του φακέλου work/.

B.4 Ελέγξτε τη σχέση με το Kubernetes

Ο έλεγχος της σχέσης με το Kubernetes είναι απαραίτητος εδώ, επειδή τα containerd Labs μπορεί διαφορετικά να μετατραπούν από ασφαλή Models σε ανεξέλεγκτες αλλαγές Nodes. Η αξιολόγηση πρέπει να διευκρινίζει αν ένα Artifact χρησιμεύει μόνο για επεξήγηση, επικυρώνεται τοπικά ή θα εφαρμοζόταν σε πραγματικό Node.

Ερώτημα Απαίτηση
Τι επηρεάζεται; Κατονομάζεται ο Host, ο Daemon, το Plugin, το Content, ο Snapshotter, η Runtime, το CRI, το CNI ή το Kubernetes.
Τι αποδεικνύεται; Ένα αρχείο ή Output στον φάκελο work/evidence/ τεκμηριώνει το εύρημα.
Τι μένει ανοικτό; Οι απαιτήσεις για πραγματικούς Nodes τεκμηριώνονται ως όριο εφαρμογής.

Σημεία ανασκόπησης:

  • Δεν υπάρχουν Production Secrets.
  • Δεν υπάρχουν αλλαγές σε Sockets ή systemd χωρίς ανασκόπηση.
  • Δεν υπάρχουν εξαιρέσεις Registry χωρίς αιτιολόγηση.
  • Δεν συγχέονται τα ctr, crictl και nerdctl.
  • Το Cleanup είναι εφικτό με διαγραφή του φακέλου work/.

B.5 Καταγράψτε τα όρια ασφάλειας

Η καταγραφή των ορίων ασφάλειας είναι απαραίτητη εδώ, επειδή τα containerd Labs μπορεί διαφορετικά να μετατραπούν από ασφαλή Models σε ανεξέλεγκτες αλλαγές Nodes. Η αξιολόγηση πρέπει να διευκρινίζει αν ένα Artifact χρησιμεύει μόνο για επεξήγηση, επικυρώνεται τοπικά ή θα εφαρμοζόταν σε πραγματικό Node.

Ερώτημα Απαίτηση
Τι επηρεάζεται; Κατονομάζεται ο Host, ο Daemon, το Plugin, το Content, ο Snapshotter, η Runtime, το CRI, το CNI ή το Kubernetes.
Τι αποδεικνύεται; Ένα αρχείο ή Output στον φάκελο work/evidence/ τεκμηριώνει το εύρημα.
Τι μένει ανοικτό; Οι απαιτήσεις για πραγματικούς Nodes τεκμηριώνονται ως όριο εφαρμογής.

Σημεία ανασκόπησης:

  • Δεν υπάρχουν Production Secrets.
  • Δεν υπάρχουν αλλαγές σε Sockets ή systemd χωρίς ανασκόπηση.
  • Δεν υπάρχουν εξαιρέσεις Registry χωρίς αιτιολόγηση.
  • Δεν συγχέονται τα ctr, crictl και nerdctl.
  • Το Cleanup είναι εφικτό με διαγραφή του φακέλου work/.

B.6 Τεκμηριώστε το Rollback

Η τεκμηρίωση του Rollback είναι απαραίτητη εδώ, επειδή τα containerd Labs μπορεί διαφορετικά να μετατραπούν από ασφαλή Models σε ανεξέλεγκτες αλλαγές Nodes. Η αξιολόγηση πρέπει να διευκρινίζει αν ένα Artifact χρησιμεύει μόνο για επεξήγηση, επικυρώνεται τοπικά ή θα εφαρμοζόταν σε πραγματικό Node.

Ερώτημα Απαίτηση
Τι επηρεάζεται; Κατονομάζεται ο Host, ο Daemon, το Plugin, το Content, ο Snapshotter, η Runtime, το CRI, το CNI ή το Kubernetes.
Τι αποδεικνύεται; Ένα αρχείο ή Output στον φάκελο work/evidence/ τεκμηριώνει το εύρημα.
Τι μένει ανοικτό; Οι απαιτήσεις για πραγματικούς Nodes τεκμηριώνονται ως όριο εφαρμογής.

Σημεία ανασκόπησης:

  • Δεν υπάρχουν Production Secrets.
  • Δεν υπάρχουν αλλαγές σε Sockets ή systemd χωρίς ανασκόπηση.
  • Δεν υπάρχουν εξαιρέσεις Registry χωρίς αιτιολόγηση.
  • Δεν συγχέονται τα ctr, crictl και nerdctl.
  • Το Cleanup είναι εφικτό με διαγραφή του φακέλου work/.

B.7 Καθαρίστε τα αποδεικτικά στοιχεία

Ο καθαρισμός των αποδεικτικών στοιχείων είναι απαραίτητος εδώ, επειδή τα containerd Labs μπορεί διαφορετικά να μετατραπούν από ασφαλή Models σε ανεξέλεγκτες αλλαγές Nodes. Η αξιολόγηση πρέπει να διευκρινίζει αν ένα Artifact χρησιμεύει μόνο για επεξήγηση, επικυρώνεται τοπικά ή θα εφαρμοζόταν σε πραγματικό Node.

Ερώτημα Απαίτηση
Τι επηρεάζεται; Κατονομάζεται ο Host, ο Daemon, το Plugin, το Content, ο Snapshotter, η Runtime, το CRI, το CNI ή το Kubernetes.
Τι αποδεικνύεται; Ένα αρχείο ή Output στον φάκελο work/evidence/ τεκμηριώνει το εύρημα.
Τι μένει ανοικτό; Οι απαιτήσεις για πραγματικούς Nodes τεκμηριώνονται ως όριο εφαρμογής.

Σημεία ανασκόπησης:

  • Δεν υπάρχουν Production Secrets.
  • Δεν υπάρχουν αλλαγές σε Sockets ή systemd χωρίς ανασκόπηση.
  • Δεν υπάρχουν εξαιρέσεις Registry χωρίς αιτιολόγηση.
  • Δεν συγχέονται τα ctr, crictl και nerdctl.
  • Το Cleanup είναι εφικτό με διαγραφή του φακέλου work/.

B.8 Περιορίστε τη μεταφορά

Ο περιορισμός της μεταφοράς είναι απαραίτητος εδώ, επειδή τα containerd Labs μπορεί διαφορετικά να μετατραπούν από ασφαλή Models σε ανεξέλεγκτες αλλαγές Nodes. Η αξιολόγηση πρέπει να διευκρινίζει αν ένα Artifact χρησιμεύει μόνο για επεξήγηση, επικυρώνεται τοπικά ή θα εφαρμοζόταν σε πραγματικό Node.

Ερώτημα Απαίτηση
Τι επηρεάζεται; Κατονομάζεται ο Host, ο Daemon, το Plugin, το Content, ο Snapshotter, η Runtime, το CRI, το CNI ή το Kubernetes.
Τι αποδεικνύεται; Ένα αρχείο ή Output στον φάκελο work/evidence/ τεκμηριώνει το εύρημα.
Τι μένει ανοικτό; Οι απαιτήσεις για πραγματικούς Nodes τεκμηριώνονται ως όριο εφαρμογής.

Σημεία ανασκόπησης:

  • Δεν υπάρχουν Production Secrets.
  • Δεν υπάρχουν αλλαγές σε Sockets ή systemd χωρίς ανασκόπηση.
  • Δεν υπάρχουν εξαιρέσεις Registry χωρίς αιτιολόγηση.
  • Δεν συγχέονται τα ctr, crictl και nerdctl.
  • Το Cleanup είναι εφικτό με διαγραφή του φακέλου work/.

B.9 Ολοκληρώστε την ανασκόπηση

Η ολοκλήρωση της ανασκόπησης είναι απαραίτητη εδώ, επειδή τα containerd Labs μπορεί διαφορετικά να μετατραπούν από ασφαλή Models σε ανεξέλεγκτες αλλαγές Nodes. Η αξιολόγηση πρέπει να διευκρινίζει αν ένα Artifact χρησιμεύει μόνο για επεξήγηση, επικυρώνεται τοπικά ή θα εφαρμοζόταν σε πραγματικό Node.

Ερώτημα Απαίτηση
Τι επηρεάζεται; Κατονομάζεται ο Host, ο Daemon, το Plugin, το Content, ο Snapshotter, η Runtime, το CRI, το CNI ή το Kubernetes.
Τι αποδεικνύεται; Ένα αρχείο ή Output στον φάκελο work/evidence/ τεκμηριώνει το εύρημα.
Τι μένει ανοικτό; Οι απαιτήσεις για πραγματικούς Nodes τεκμηριώνονται ως όριο εφαρμογής.

Σημεία ανασκόπησης:

  • Δεν υπάρχουν Production Secrets.
  • Δεν υπάρχουν αλλαγές σε Sockets ή systemd χωρίς ανασκόπηση.
  • Δεν υπάρχουν εξαιρέσεις Registry χωρίς αιτιολόγηση.
  • Δεν συγχέονται τα ctr, crictl και nerdctl.
  • Το Cleanup είναι εφικτό με διαγραφή του φακέλου work/.

B.10 Εκτελέστε το Cleanup

Η εκτέλεση του Cleanup είναι απαραίτητη εδώ, επειδή τα containerd Labs μπορεί διαφορετικά να μετατραπούν από ασφαλή Models σε ανεξέλεγκτες αλλαγές Nodes. Η αξιολόγηση πρέπει να διευκρινίζει αν ένα Artifact χρησιμεύει μόνο για επεξήγηση, επικυρώνεται τοπικά ή θα εφαρμοζόταν σε πραγματικό Node.

Ερώτημα Απαίτηση
Τι επηρεάζεται; Κατονομάζεται ο Host, ο Daemon, το Plugin, το Content, ο Snapshotter, η Runtime, το CRI, το CNI ή το Kubernetes.
Τι αποδεικνύεται; Ένα αρχείο ή Output στον φάκελο work/evidence/ τεκμηριώνει το εύρημα.
Τι μένει ανοικτό; Οι απαιτήσεις για πραγματικούς Nodes τεκμηριώνονται ως όριο εφαρμογής.

Σημεία ανασκόπησης:

  • Δεν υπάρχουν Production Secrets.
  • Δεν υπάρχουν αλλαγές σε Sockets ή systemd χωρίς ανασκόπηση.
  • Δεν υπάρχουν εξαιρέσεις Registry χωρίς αιτιολόγηση.
  • Δεν συγχέονται τα ctr, crictl και nerdctl.
  • Το Cleanup είναι εφικτό με διαγραφή του φακέλου work/.

B.11 Ολοκλήρωση

Ένα παράδειγμα ολοκληρώνεται όταν το Script εκτελείται επιτυχώς, όλα τα Artifacts του Model είναι συντακτικά έγκυρα, κατονομάζεται το επίπεδο Runtime που επηρεάζεται και τα αποδεικτικά στοιχεία δεν περιέχουν εμπιστευτικά δεδομένα.

11 / 11

CTR · Orthevs Academy

31 modules as one continuous learning path.

The sequence remains unchanged: from the lab skeleton through technical foundations and operating models to final troubleshooting. The technical directory names are deliberately preserved.

Orthevs – Engineering the foundation for what comes next.

Orthevs as an app

Install Orthevs

The Orthevs web app can be installed on supported mobile devices and desktop browsers.

iPhone and iPad

Open Orthevs in Safari. Tap Share, then Add to Home Screen. Enable Open as Web App if offered, then tap Add.

Android

For the web app, open the browser menu and choose Install app or Add to Home screen. Confirm the installation.

Desktop browser

Open the browser menu or the install icon in the address bar, then choose Install app or Add to Dock.

Web app installation depends on your browser. If no install prompt appears, follow the browser steps shown above.