ΠΠ΄ΡΠ°Π²Π΅ΠΉΡΠ΅! ΠΠ°Π·Π²Π°ΠΌ ΡΠ΅ Π‘Π΅ΡΠ³Π΅ΠΉ ΠΈ ΡΡΠΌ DevOps Π² Surf. DevOps ΠΎΡΠ΄Π΅Π»ΡΡ Π² Surf Π½Π΅ ΡΠ°ΠΌΠΎ, ΡΠ΅ ΡΠ΅ Π³ΡΠΈΠΆΠΈ Π·Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΡΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΈΡΠ΅ ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠΈ, Π½ΠΎ ΡΡΡΠΎ ΡΠ°ΠΊΠ° Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΠ·ΡΠ»Π΅Π΄Π²Π° ΠΈ Π²Π½Π΅Π΄ΡΡΠ²Π° ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΊΠ°ΠΊΡΠΎ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π°ΡΠ° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°, ΡΠ°ΠΊΠ° ΠΈ Π² ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
ΠΠΎ-Π΄ΠΎΠ»Ρ ΡΠ΅ Π²ΠΈ ΡΠ°Π·ΠΊΠ°ΠΆΠ° ΠΌΠ°Π»ΠΊΠΎ Π·Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π² ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ½ΠΈΡ ΡΡΠ΅ΠΊ Π·Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ, Ρ ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ²Π°Ρ ΠΌΠ΅ ΠΏΡΠΈ ΠΏΡΠΎΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΡΠ° CentOS 8 ΠΈ ΠΊΠ°ΠΊΠ²ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ²Π° CRI-O ΠΈ ΠΊΠ°ΠΊ Π±ΡΡΠ·ΠΎ Π΄Π° Π½Π°ΡΡΡΠΎΠΈΡΠ΅ Ρ Π½Π΅Π³ΠΎΠ²Π° ΠΏΠΎΠΌΠΎΡ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½Π° ΡΡΠ΅Π΄Π° Π·Π° Kubernetes.

ΠΠ°ΡΠΎ Docker Π»ΠΈΠΏΡΠ²Π° Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° CentOS 8
Π‘Π»Π΅Π΄ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π³ΠΎΠ»Π΅ΠΌΠΈ Π²Π΅ΡΡΠΈΠΈ RHEL 8 ΠΈΠ»ΠΈ CentOS 8 Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π½Π΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈ, ΡΠ΅ Π² ΡΠ΅Π·ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΠΈ ΠΎΡΠΈΡΠΈΠ°Π»Π½ΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π»ΠΈΠΏΡΠ²Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Docker, ΠΊΠΎΠ΅ΡΠΎ ΠΈΠ΄Π΅ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎ Π·Π°ΠΌΠ΅ΡΡΠ²Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Podman, Buildah (Π½Π°Π»ΠΈΡΠ½ΠΈ Π² Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅) ΠΈ CRI-O. Π’ΠΎΠ²Π° Π΅ ΡΠ²ΡΡΠ·Π°Π½ΠΎ Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠΈΡΠ΅, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½ΠΈ, ΠΌΠ΅ΠΆΠ΄Ρ Π΄ΡΡΠ³ΠΎΡΠΎ, ΠΎΡ Red Hat Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Open Container Initiative (OCI).
Π¦Π΅Π»ΡΠ° Π½Π° OCI, ΠΊΠΎΡΡΠΎ Π΅ ΡΠ°ΡΡ ΠΎΡ The Linux Foundation, Π΅ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈ ΠΈΠ½Π΄ΡΡΡΡΠΈΠ°Π»Π½ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠΈ Π·Π° ΡΠΎΡΠΌΠ°ΡΠΈ ΠΈ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΡΡΠ΅Π΄ΠΈ Π·Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π΄Π° ΡΠ΅ΡΠ°Π²Π°Ρ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π·Π°Π΄Π°ΡΠΈ. ΠΡΡΠ²ΠΎ, Π΄Π° Π½Π΅ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠ°Ρ Π½Π° ΡΠΈΠ»ΠΎΡΠΎΡΠΈΡΡΠ° Π½Π° Linux (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ°ΡΡΡΠ°, Π² ΠΊΠΎΡΡΠΎ Π²ΡΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΡΠ°ΠΌΠΎ Π΅Π΄Π½ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, Π΄ΠΎΠΊΠ°ΡΠΎ Docker ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ²Π° Π½Π΅ΡΠΎ ΠΊΠ°ΡΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π²ΡΠΈΡΠΊΠΎ Π² Π΅Π΄Π½ΠΎ). ΠΠ° Π²ΡΠΎΡΠΎ ΠΌΡΡΡΠΎ, Π΄Π° ΠΎΡΡΡΡΠ°Π½ΡΡ Π²ΡΠΈΡΠΊΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΡΠΈ Π² ΡΠΎΡΡΡΠ΅ΡΠ°. DockerΠΠ° ΡΡΠ΅ΡΠΎ ΠΌΡΡΡΠΎ, Π΄Π° Π±ΡΠ΄Π°Ρ Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΈ Ρ Π±ΠΈΠ·Π½Π΅Ρ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡΡΠ°, ΠΏΠΎΡΡΠ°Π²Π΅Π½ΠΈ ΠΎΡ Π²ΠΎΠ΄Π΅ΡΠΈΡΠ΅ ΡΡΡΠ³ΠΎΠ²ΡΠΊΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ Π·Π° ΡΠ°Π·Π³ΡΡΡΠ°Π½Π΅, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Red Hat OpenShift).
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΡΡΠΈ Docker ΠΈ ΠΏΡΠ΅Π΄ΠΈΠΌΡΡΠ²Π°ΡΠ° Π½Π° Π½ΠΎΠ²ΠΈΡ ΡΠΎΡΡΡΠ΅Ρ Π²Π΅ΡΠ΅ Π±ΡΡ Π° Π΄ΠΎΡΡΠ° ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈ Π² , Π° Π·Π° ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° Π²ΡΠΈΡΠΊΠΎ, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π½ΠΎ Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° OCI, ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ½ΠΈΡΠ΅ ΠΌΡ ΠΎΡΠΎΠ±Π΅Π½ΠΎΡΡΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ Π·Π°ΠΏΠΎΠ·Π½Π°Π΅ΡΠ΅ Ρ ΠΎΡΠΈΡΠΈΠ°Π»Π½Π°ΡΠ° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ ΡΡΠ°ΡΠΈΠΈΡΠ΅ ΠΊΠ°ΠΊΡΠΎ ΠΎΡ ΡΠ°ΠΌΠΈΡ Red Hat (Π½Π΅ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ° Π² Red Hat blog), ΡΠ°ΠΊΠ° ΠΈ Π² Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΈΡΠ΅ .
ΠΠ°ΠΆΠ½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈ ΠΊΠ°ΠΊΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ ΠΈΠΌΠ°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Π½Π° ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π½ΠΈΡ ΡΡΠ΅ΠΊ:
- Podman β Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈΡΠ΅ ΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ Π½Π° ΠΎΠ±ΡΠ°Π·ΠΈ ΡΡΠ΅Π· ΠΏΡΠΎΡΠ΅ΡΠ° runC;
- Buildah β ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ ΠΈ ΠΊΠ°ΡΠ²Π°Π½Π΅ Π² ΡΠ΅Π³ΠΈΡΡΡΡ Π½Π° ΠΎΠ±ΡΠ°Π·ΠΈ;
- CRI-O β ΠΈΠ·ΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½Π° ΡΡΠ΅Π΄Π° Π·Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΠΎΡΠΊΠ΅ΡΡΡΠ°ΡΠΈΡ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Kubernetes).
Π‘ΠΌΡΡΠ°ΠΌ, ΡΠ΅ Π·Π° ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°ΡΠ° ΡΡ Π΅ΠΌΠ° Π½Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Π½Π° ΡΡΠ΅ΠΊΠ°, Π΅ ΡΠ΅Π»Π΅ΡΡΠΎΠ±ΡΠ°Π·Π½ΠΎ Π΄Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ ΡΡΠΊ ΡΡ Π΅ΠΌΠ°ΡΠ° Π½Π° Π²ΡΡΠ·ΠΊΠΈΡΠ΅. Kubernetes Ρ runC ΠΈ Π½ΠΈΡΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΈΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° CRI-O:

CRI-O ΠΈ Kubernetes ΡΠ΅ ΠΏΡΠΈΠ΄ΡΡΠΆΠ°Ρ ΠΊΡΠΌ Π΅Π΄ΠΈΠ½ ΠΈ ΡΡΡ ΡΠΈΠΊΡΠ» Π½Π° ΠΈΠ·Π΄Π°Π²Π°Π½Π΅ ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° (ΠΌΠ°ΡΡΠΈΡΠ°ΡΠ° Π½Π° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠ°: ΠΌΠ°ΠΆΠΎΡΠ½ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Kubernetes ΠΈ CRI-O ΡΡcoΠΏΠ°Π΄Π°Ρ), Π° ΡΠΎΠ²Π°, ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π½Π°ΡΠΎΠΊΠΈΡΠ΅ Π·Π° ΠΏΡΠ»Π½ΠΎ ΠΈ Π²ΡΠ΅ΡΡΡΠ°Π½Π½ΠΎ ΡΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΡΠΎΠ·ΠΈ ΡΡΠ΅ΠΊ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅, Π½ΠΈ Π΄Π°Π²Π° ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π° ΠΎΡΠ°ΠΊΠ²Π°ΠΌΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎ ΠΏΠΎΡΡΠΈΠΆΠΈΠΌΠ° ΡΡΠ°Π±ΠΈΠ»Π½ΠΎΡΡ Π² ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΠΏΡΠΈ Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ ΡΡΠ΅Π½Π°ΡΠΈΠΈ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ (ΡΡΠΊ Π΄ΠΎΠΏΡΠΈΠ½Π°ΡΡ ΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»Π½Π°ΡΠ° Π»Π΅ΠΊΠΎΡΠ° CRI-O Π² ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ Docker ΠΏΠΎΡΠ°Π΄ΠΈ ΡΠ΅Π»Π΅Π½Π°ΡΠΎΡΠ΅Π½ΠΎΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ°).
ΠΡΠΈ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Kubernetes ΠΏΠΎ "ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΈΡ Π½Π°ΡΠΈΠ½" (ΡΠΏΠΎΡΠ΅Π΄ OCI, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅) Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° CRI-O Π½Π° CentOS 8 ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ°Ρ ΠΌΠ΅ Ρ ΠΌΠ°Π»ΠΊΠΈ Π·Π°ΡΡΡΠ΄Π½Π΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΠΎΠ±Π°ΡΠ΅ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΏΡΠ΅ΠΎΠ΄ΠΎΠ»ΡΡ ΠΌΠ΅. Π©Π΅ ΡΠ΅ ΡΠ°Π΄Π²Π°ΠΌ Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»Ρ Ρ Π²Π°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π·Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°, ΠΊΠΎΠΈΡΠΎ ΠΎΠ±ΡΠΎ Π²Π·Π΅ΡΠΎ ΡΠ΅ ΠΎΡΠ½Π΅ΠΌΠ°Ρ Π½Π΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 10 ΠΌΠΈΠ½ΡΡΠΈ.
ΠΠ°ΠΊ Π΄Π° ΡΠ°Π·Π²Π΅ΡΠ½Π΅ΠΌ Kubernetes Π½Π° CentOS 8 Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ΅Π΄Π° CRI-O
ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ: Π½Π°Π»ΠΈΡΠΈΠ΅ Π½Π° ΠΏΠΎΠ½Π΅ Π΅Π΄ΠΈΠ½ Ρ ΠΎΡΡ (2 ΡΠ΄ΡΠ°, 4 GB RAM, ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Ρ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ 15 GB) Ρ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π° CentOS 8 (ΠΏΡΠ΅ΠΏΠΎΡΡΡΠΈΡΠ΅Π»Π½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΈΠ·Π±Π΅ΡΠ΅ ΠΏΡΠΎΡΠΈΠ» "Π‘ΡΡΠ²ΡΡ"), ΠΊΠ°ΠΊΡΠΎ ΠΈ Π·Π°ΠΏΠΈΡΠΈ Π·Π° Π½Π΅Π³ΠΎ Π² Π»ΠΎΠΊΠ°Π»Π½ΠΈΡ DNS (Π² ΠΊΡΠ°Π΅Π½ ΡΠ»ΡΡΠ°ΠΉ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·Π±Π΅Π³Π½Π΅ Ρ Π·Π°ΠΏΠΈΡ Π² /etc/hosts). Π Π½Π΅ Π·Π°Π±ΡΠ°Π²ΡΠΉΡΠ΅ .
ΠΡΠΈΡΠΊΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π° Ρ ΠΎΡΡΠ° ΠΈΠ·Π²ΡΡΡΠ²Π°ΠΌΠ΅ ΠΎΡ ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ root, ΠΌΠΎΠ»Ρ, Π±ΡΠ΄Π΅ΡΠ΅ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»Π½ΠΈ.
- ΠΠ° ΠΏΡΡΠ²ΠΈΡ Π΅ΡΠ°ΠΏ ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°ΠΌΠ΅ ΠΠ‘, ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΌΠ΅ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠ²Π°ΠΌΠ΅ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π·Π° CRI-O.
- ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΌΠ΅ ΠΠ‘:
dnf -y update
- Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° Π΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° Π½Π°ΡΡΡΠΎΠΈΠΌ Π·Π°ΡΠΈΡΠ½Π°ΡΠ° ΡΡΠ΅Π½Π° ΠΈ SELinux. Π’ΡΠΊ Π·Π°Π²ΠΈΡΠΈΠΌ ΠΎΡ ΡΡΠ΅Π΄Π°ΡΠ°, Π² ΠΊΠΎΡΡΠΎ ΡΠ΅ ΡΠ°Π±ΠΎΡΡΡ Π½Π°ΡΠΈΡΡ Ρ
ΠΎΡΡ ΠΈΠ»ΠΈ Ρ
ΠΎΡΡΠΎΠ²Π΅. ΠΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ»ΠΈ Π΄Π° Π½Π°ΡΡΡΠΎΠΈΡΠ΅ Π·Π°ΡΠΈΡΠ½Π°ΡΠ° ΡΡΠ΅Π½Π° ΡΡΠ³Π»Π°ΡΠ½ΠΎ ΠΏΡΠ΅ΠΏΠΎΡΡΠΊΠΈΡΠ΅ ΠΎΡ , ΠΈΠ»ΠΈ, Π°ΠΊΠΎ ΡΡΠ΅ Π² Π΄ΠΎΠ²Π΅ΡΠ΅Π½Π° ΠΌΡΠ΅ΠΆΠ° ΠΈΠ»ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π²ΡΠ½ΡΠ½Π° Π·Π°ΡΠΈΡΠ½Π° ΡΡΠ΅Π½Π°, Π΄Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°ΡΠ°ΡΠ° ΡΠ΅ Π·ΠΎΠ½Π° Π½Π° Π΄ΠΎΠ²Π΅ΡΠ΅Π½Π° ΠΈΠ»ΠΈ Π΄Π° ΠΈΠ·ΠΊΠ»ΡΡΠΈΡΠ΅ Π·Π°ΡΠΈΡΠ½Π°ΡΠ° ΡΡΠ΅Π½Π°:
firewall-cmd --set-default-zone trusted firewall-cmd --reloadΠΠ° Π΄Π° ΠΈΠ·ΠΊΠ»ΡΡΠΈΡΠ΅ Π·Π°ΡΠΈΡΠ½Π°ΡΠ° ΡΡΠ΅Π½Π°, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π°:
systemctl disable --now firewalldSELinux ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ ΠΈΠ»ΠΈ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΡΠ΅Π²Π΅Π΄Π΅Π½ Π² ΡΠ΅ΠΆΠΈΠΌ "permissive":
setenforce 0 sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
- ΡΠ΅ Π·Π°ΡΠ΅Π΄ΠΈΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ ΡΠ΄ΡΠΎΠ²ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ, ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΠΌ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎΡΠΎ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄ΡΠ»Π° "br_netfilter" ΠΏΡΠΈ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°:
modprobe overlay modprobe br_netfilter echo "br_netfilter" >> /etc/modules-load.d/br_netfilter.conf dnf -y install iproute-tc
- ΠΠ° Π΄Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΠΌΠ΅ ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈ Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°ΠΌΠ΅ ΡΡΠ°ΡΠΈΠΊΠ° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ, ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΈΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ:
cat > /etc/sysctl.d/99-kubernetes-cri.conf <<EOF net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward = 1 net.bridge.bridge-nf-call-ip6tables = 1 EOFΠ©Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠΈΠΌ Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ:
sysctl --system
- Π©Π΅ Π·Π°Π΄Π°Π΄Π΅ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠ°ΡΠ° Π²Π΅ΡΡΠΈΡ CRI-O (Π³Π»Π°Π²Π½Π° Π²Π΅ΡΡΠΈΡ CRI-O, ΠΊΠ°ΠΊΡΠΎ Π²Π΅ΡΠ΅ Π±Π΅ΡΠ΅ ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΎ, ΡΡΠ²ΠΏΠ°Π΄Π° Ρ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Kubernetes), ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π°ΡΠ° ΡΡΠ°Π±ΠΈΠ»Π½Π° Π²Π΅ΡΡΠΈΡ Kubernetes Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅ 1.18:
export REQUIRED_VERSION=1.18Π©Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ:
dnf -y install 'dnf-command(copr)' dnf -y copr enable rhcontainerbot/container-selinux curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/CentOS_8/devel:kubic:libcontainers:stable.repo curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable:cri-o:$REQUIRED_VERSION.repo https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable:cri-o:$REQUIRED_VERSION/CentOS_8/devel:kubic:libcontainers:stable:cri-o:$REQUIRED_VERSION.repo
- Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΌΠ΅ CRI-O:
dnf -y install cri-oΠΠ±ΡΡΠ½Π΅ΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΡΡΠ²ΠΈΡ Π½ΡΠ°Π½Ρ, ΠΊΠΎΠΉΡΠΎ ΡΡΠ΅ΡΠ°ΠΌΠ΅ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡΡΠ°: Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΅ Π΄Π° ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠ°ΠΌΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° CRI-O ΠΏΡΠ΅Π΄ΠΈ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ»ΡΠ³Π°ΡΠ°, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ conmon ΠΈΠΌΠ° ΡΠ°Π·Π»ΠΈΡΠ½ΠΎ ΠΎΡ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΎΡΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅:
sed -i 's//usr/libexec/crio/conmon//usr/bin/conmon/' /etc/crio/crio.confΠ‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΠΌΠ΅ ΠΈ ΡΡΠ°ΡΡΠΈΡΠ°ΠΌΠ΅ Π΄Π΅ΠΌΠΎΠ½Π° CRI-O:
systemctl enable --now crioΠΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ ΡΡΠ°ΡΡΡΠ° Π½Π° Π΄Π΅ΠΌΠΎΠ½Π°:
systemctl status crio
- ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΌΠ΅ ΠΠ‘:
- ΠΠ½ΡΡΠ°Π»Π°ΡΠΈΡ ΠΈ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Kubernetes.
- Π©Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ:
cat < /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-$basearch enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg exclude=kubelet kubeadm kubectl EOFΠ‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΌΠ΅ Kubernetes (Π²Π΅ΡΡΠΈΡ 1.18, ΠΊΠ°ΠΊΡΠΎ Π²Π΅ΡΠ΅ Π±Π΅ΡΠ΅ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΎ ΠΏΠΎ-Π³ΠΎΡΠ΅):
dnf install -y kubelet-1.18* kubeadm-1.18* kubectl-1.18* --disableexcludes=kubernetes
- ΠΡΠΎΡΠΈΡΡ Π²Π°ΠΆΠ΅Π½ Π½ΡΠ°Π½Ρ: ΡΡΠΉ ΠΊΠ°ΡΠΎ Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π΄Π΅ΠΌΠΎΠ½ Docker, Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π΄Π΅ΠΌΠΎΠ½ CRI-O, ΠΏΡΠ΅Π΄ΠΈ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Kubernetes Π΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΈΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΡΠ°ΠΉΠ» /var/lib/kubelet/config.yaml, ΠΊΠ°ΡΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠ°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ:
mkdir /var/lib/kubelet cat < /var/lib/kubelet/config.yaml apiVersion: kubelet.config.k8s.io/v1beta1 kind: KubeletConfiguration cgroupDriver: systemd EOF
- Π’ΡΠ΅ΡΠΈΡΡ Π²Π°ΠΆΠ΅Π½ ΠΌΠΎΠΌΠ΅Π½Ρ, Ρ ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ²Π°ΠΌΠ΅ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡΡΠ°: Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ ΡΠΊΠ°Π·Π°Ρ
ΠΌΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡ Π΄ΡΠ°ΠΉΠ²Π΅Ρ cgroup, ΠΈ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΡΠ΅Π· Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ ΠΏΡΠ΅Π΄Π°Π²Π°ΠΌΠ΅ kubelet Π΅ ΠΎΡΡΠ°ΡΡΠ»Π° (ΠΊΠ°ΠΊΡΠΎ Π΅ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΎ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ°), Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈ Π² ΡΠ°ΠΉΠ»Π°, ΠΈΠ½Π°ΡΠ΅ Π½Π°ΡΠΈΡΡ ΠΊΠ»ΡΡΡΠ΅Ρ Π½ΡΠΌΠ° Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½:
cat /dev/null > /etc/sysconfig/kubelet cat < /etc/sysconfig/kubelet KUBELET_EXTRA_ARGS=--container-runtime=remote --cgroup-driver=systemd --container-runtime-endpoint='unix:///var/run/crio/crio.sock' EOF
- Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΠΌΠ΅ Π΄Π΅ΠΌΠΎΠ½Π° kubelet:
sudo systemctl enable --now kubeletΠΠ° Π΄Π° Π½Π°ΡΡΡΠΎΠΈΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π½Π° ΡΠ°Π²Π½ΠΈΠ½Π° ΠΈΠ»ΠΈ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊ Π²ΡΠ·Π»ΠΈ Π·Π° ΠΌΠΈΠ½ΡΡΠΈ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ .
- Π©Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ:
- ΠΡΠ΅ΠΌΠ΅ Π΅ Π΄Π° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΌΠ΅ Π½Π°ΡΠΈΡ ΠΊΠ»ΡΡΡΠ΅Ρ.
- ΠΠ° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΊΠ»ΡΡΡΠ΅ΡΠ° ΠΈΠ·ΠΏΡΠ»Π½Π΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°:
kubeadm init --pod-network-cidr=10.244.0.0/16ΠΠ΅ Π·Π°Π±ΡΠ°Π²ΡΠΉΡΠ΅ Π΄Π° Π·Π°ΠΏΠΈΡΠ΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° Π·Π° ΠΏΡΠΈΡΡΠ΅Π΄ΠΈΠ½ΡΠ²Π°Π½Π΅ ΠΊΡΠΌ ΠΊΠ»ΡΡΡΠ΅ΡΠ° βkubeadm join β¦β, ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π² ΠΊΡΠ°Ρ Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π°, ΠΈΠ»ΠΈ ΠΏΠΎΠ½Π΅ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΡΠΎΠΊΠ΅Π½ΠΈ.
- ΠΠ° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΌΠ΅ ΠΏΠ»ΡΠ³ΠΈΠ½ (CNI) Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ Pod ΠΌΡΠ΅ΠΆΠ°. ΠΡΠ΅ΠΏΠΎΡΡΡΠ²Π°ΠΌ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Calico. ΠΠΎΠΆΠ΅ Π±ΠΈ ΠΏΠΎ-ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΈΡΡ Flannel ΠΈΠΌΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡΠ° Ρ nftables, Π° ΠΈ Calico Π΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π°ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° CNI, ΠΊΠΎΡΡΠΎ Π΅ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ°Π½Π° ΠΈ Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΠ΅ΡΡΠ²Π°Π½Π° ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Kubernetes:
kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f https://docs.projectcalico.org/v3.15/manifests/calico.yaml
- ΠΠ° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ½Π° Π²ΡΠ·Π΅Π» ΠΊΡΠΌ Π½Π°ΡΠΈΡ ΠΊΠ»ΡΡΡΠ΅Ρ, ΡΡ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ Π½Π°ΡΡΡΠΎΠ΅Π½Π° ΡΠΏΠΎΡΠ΅Π΄ ΡΠΎΡΠΊΠΈΡΠ΅ ΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ 1 ΠΈ 2, ΠΈΠ»ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ , ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ΠΎΡ ΠΈΠ·Ρ
ΠΎΠ΄Π° βkubeadm init β¦β, ΠΊΠΎΡΡΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ
ΠΌΠ΅ Π½Π° ΠΏΡΠ΅Π΄ΠΈΡΠ½ΠΈΡ Π΅ΡΠ°ΠΏ:
kubeadm join $CONTROL_PLANE_ADDRESS:6443 --token $TOKEN --discovery-token-ca-cert-hash $TOKEN_HASH
- Π©Π΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ, ΡΠ΅ Π½Π°ΡΠΈΡΡ ΠΊΠ»ΡΡΡΠ΅Ρ Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΠΈ Π΅ Π·Π°ΠΏΠΎΡΠ½Π°Π» ΡΠ°Π±ΠΎΡΠ°:
kubectl --kubeconfig=/etc/kubernetes/admin.conf get pods -A
ΠΠΎΡΠΎΠ²ΠΎ! ΠΠ΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ°Π·ΠΏΠΎΠ»Π°Π³Π°ΡΠ΅ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΡΠΎΠ²Π°Ρ Π½Π° Π²Π°ΡΠΈΡ K8s ΠΊΠ»ΡΡΡΠ΅Ρ.
- ΠΠ° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΊΠ»ΡΡΡΠ΅ΡΠ° ΠΈΠ·ΠΏΡΠ»Π½Π΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°:
ΠΠ°ΠΊΠ²ΠΎ Π½ΠΈ ΡΠ°ΠΊΠ° Π½Π°ΠΏΡΠ΅Π΄
ΠΠ°Π΄ΡΠ²Π°ΠΌ ΡΠ΅, ΡΠ΅ Π³ΠΎΡΠ½Π°ΡΠ° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π²ΠΈ Π΅ ΠΏΠΎΠΌΠΎΠ³Π½Π°Π»Π° Π΄Π° ΡΠΏΠ΅ΡΡΠΈΡΠ΅ ΠΌΠ°Π»ΠΊΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈ Π½Π΅ΡΠ²ΠΈ.
ΠΠ·Ρ
ΠΎΠ΄ΡΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ΅ Π² ΠΈΠ½Π΄ΡΡΡΡΠΈΡΡΠ° ΡΠ΅ΡΡΠΎ Π·Π°Π²ΠΈΡΠΈ ΠΎΡ Π½Π°ΡΠΈΠ½Π°, ΠΏΠΎ ΠΊΠΎΠΉΡΠΎ Π³ΠΈ Π²ΡΠ·ΠΏΡΠΈΠ΅ΠΌΠ° ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΠΌΠ°ΡΠ° ΠΎΡ ΠΊΡΠ°ΠΉΠ½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ Π½Π° Π΄ΡΡΠ³ΠΎ ΡΠΎΡΡΡΠ΅ΡΠ½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π² ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π°ΡΠ°ΡΠ° Π½ΠΈΡΠ°. ΠΡΠ΅ ΠΎΡΠ΅ Π½Π΅ Π΅ ΡΡΠ²ΡΠ΅ΠΌ ΡΡΠ½ΠΎ ΠΊΠ°ΠΊΡΠ² ΡΠ΅Π·ΡΠ»ΡΠ°Ρ ΡΠ΅ Π΄ΠΎΠ²Π΅Π΄Π°Ρ ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΈΠ²ΠΈΡΠ΅ Π½Π° OCI ΠΏΡΠ΅Π· ΡΠ»Π΅Π΄Π²Π°ΡΠΈΡΠ΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ, Π½ΠΎ ΡΠ΅ ΡΠ΅ ΡΠ°Π΄Π²Π°ΠΌΠ΅ Π΄Π° ΡΠ»Π΅Π΄ΠΈΠΌ ΡΠΎΠ²Π°. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»ΠΈΡΠ΅ ΠΌΠ½Π΅Π½ΠΈΠ΅ΡΠΎ ΡΠΈ Π²Π΅Π΄Π½Π°Π³Π° Π² ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ΅.
ΠΡΡΠ°Π½Π΅ΡΠ΅ Π½Π° Π»ΠΈΠ½ΠΈΡ!
Π’Π°Π·ΠΈ ΡΡΠ°ΡΠΈΡ ΡΠ΅ ΠΏΠΎΡΠ²ΠΈ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈ:
- Π Π°Π·Π΄Π΅Π»Π° Π·Π° Container runtimes Π²
- Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° CRI-O Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ
- Π‘ΡΠ°ΡΠΈΠΈ Π² Π±Π»ΠΎΠ³ΠΎΠ²Π΅ΡΠ΅ Π½Π° Red Hat: , ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈ
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
