ΠΠ΄ΡΠ°Π²ΠΎ! ΠΠ°Ρ ΡΠ΅ Π²ΠΈΠΊΠ°ΠΌ Π‘Π΅ΡΠ³Π΅Ρ, ΡΠ°Ρ ΡΡΠΌ DevOps Π²ΠΎ Surf. ΠΠ΄Π΄Π΅Π»ΠΎΡ DevOps Π²ΠΎ Surf ΠΈΠΌΠ° Π·Π° ΡΠ΅Π» Π½Π΅ ΡΠ°ΠΌΠΎ Π΄Π° Π²ΠΎΡΠΏΠΎΡΡΠ°Π²ΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΠΏΠΎΠΌΠ΅ΡΡ ΡΠΏΠ΅ΡΠΈΡΠ°Π»ΠΈΡΡΠΈΡΠ΅ ΠΈ Π΄Π° Π³ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ° ΡΠ°Π±ΠΎΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠΈ, ΡΡΠΊΡ ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎ Π΄Π° Π³ΠΈ ΠΈΡΡΡΠ°ΠΆΡΠ²Π° ΠΈ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ° ΡΠ΅ΠΊΠΎΠ²Π½ΠΈΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ Π²ΠΎ ΡΠΎΠΏΡΡΠ²Π΅Π½Π°ΡΠ° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° ΠΈ Π²ΠΎ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅.
ΠΠΎΠ΄ΠΎΠ»Ρ ΡΠ΅ Π·Π±ΠΎΡΡΠ²Π°ΠΌ ΠΌΠ°Π»ΠΊΡ Π·Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π²ΠΎ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΡΠΊΠΈΠΎΡ ΠΎΡΠ°ΠΊ Π·Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅ΡΠΈ ΡΠΎ ΠΊΠΎΠΈ Π½Π°ΠΈΠ΄ΠΎΠ²ΠΌΠ΅ Π΄ΠΎΠ΄Π΅ΠΊΠ° ΡΠ° ΠΏΡΠΎΡΡΡΠ²Π°Π²ΠΌΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ°ΡΠ° CentOS 8 ΠΈ Π·Π° ΡΠΎΠ° ΡΡΠΎ Π΅ ΡΠΎΠ° CRI-O ΠΈ ΠΊΠ°ΠΊΠΎ Π±ΡΠ·ΠΎ Π΄Π° ΠΏΠΎΡΡΠ°Π²ΠΈΡΠ΅ ΠΈΠ·Π²ΡΡΠ½Π° ΠΎΠΊΠΎΠ»ΠΈΠ½Π° Π·Π° ΠΡΠ±Π΅ΡΠ½Π΅ΡΠΈ.
ΠΠΎΡΡΠΎ Docker Π½Π΅ Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ Π²ΠΎ CentOS 8?
ΠΠΎ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ΡΠΎ Π½Π° Π½Π°ΡΠ½ΠΎΠ²ΠΈΡΠ΅ Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΈΠ·Π΄Π°Π½ΠΈΡΠ° Π ΠΠ 8 ΠΈΠ»ΠΈ CentOS 8 Π½Π΅ ΠΌΠΎΠΆΠ΅ Π° Π΄Π° Π½Π΅ ΡΠ΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈ: ΠΎΠ²ΠΈΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΠΈ ΠΎΡΠΈΡΠΈΡΠ°Π»Π½ΠΈ ΡΠΊΠ»Π°Π΄ΠΈΡΡΠ° Π½Π΅ ΡΠ° ΡΠΎΠ΄ΡΠΆΠ°Ρ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° ΠΏΡΠΈΡΡΠ°Π½ΠΈΡΠ΅Π½ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊ, ΠΊΠΎΠΈ ΠΈΠ΄Π΅ΠΎΠ»ΠΎΡΠΊΠΈ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎ Π³ΠΈ Π·Π°ΠΌΠ΅Π½ΡΠ²Π°Π°Ρ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΠΠΎΠ΄ΠΌΠ°Π½, ΠΠΈΠ»Π΄Π°Ρ (ΠΏΡΠΈΡΡΡΠ½ΠΎ Π²ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ°ΡΠ° ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΎ) ΠΈ CRI-O. ΠΠ²Π° ΡΠ΅ Π΄ΠΎΠ»ΠΆΠΈ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΡΠ½Π°ΡΠ° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΡΡΠ°Π½Π΄Π°ΡΠ΄ΠΈΡΠ΅ ΡΠ°Π·Π²ΠΈΠ΅Π½ΠΈ, ΠΌΠ΅ΡΡ Π΄ΡΡΠ³ΠΎΡΠΎ, ΠΎΠ΄ Red Hat ΠΊΠ°ΠΊΠΎ Π΄Π΅Π» ΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ Open Container Initiative (OCI).
Π¦Π΅Π»ΡΠ° Π½Π° OCI, ΠΊΠΎΡΠ° Π΅ Π΄Π΅Π» ΠΎΠ΄ Π€ΠΎΠ½Π΄Π°ΡΠΈΡΠ°ΡΠ° ΠΠΈΠ½ΡΠΊΡ, Π΅ Π΄Π° ΡΠΎΠ·Π΄Π°Π΄Π΅ ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈ ΠΈΠ½Π΄ΡΡΡΡΠΈΡΠΊΠΈ ΡΡΠ°Π½Π΄Π°ΡΠ΄ΠΈ Π·Π° ΡΠΎΡΠΌΠ°ΡΠΈ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅ΡΠΈ ΠΈ ΡΠ°Π±ΠΎΡΠ½ΠΈ Π²ΡΠ΅ΠΌΠΈΡΠ° ΠΊΠΎΠΈ ΡΠ΅ΡΠ°Π²Π°Π°Ρ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΎΠ΄Π΅Π΄Π½Π°Ρ. ΠΡΠ²ΠΎ, ΡΠΈΠ΅ Π½Π΅ Π±Π΅Π° Π²ΠΎ ΡΠΏΡΠΎΡΠΈΠ²Π½ΠΎΡΡ ΡΠΎ ΡΠΈΠ»ΠΎΠ·ΠΎΡΠΈΡΠ°ΡΠ° Π½Π° Linux (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎ Π΄Π΅Π»ΠΎΡ Π΄Π΅ΠΊΠ° ΡΠ΅ΠΊΠΎΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° ΡΡΠ΅Π±Π° Π΄Π° ΠΈΠ·Π²ΡΡΠΈ Π΅Π΄Π½Π° Π°ΠΊΡΠΈΡΠ°, ΠΈ ΠΏΡΠΈΡΡΠ°Π½ΠΈΡΠ΅Π½ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊ Π΅ Π΅Π΄Π΅Π½ Π²ΠΈΠ΄ Π½Π° ΡΠ΅-Π²ΠΎ-Π΅Π΄Π½ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡΠ°). ΠΡΠΎΡΠΎ, ΡΠΈΠ΅ Π±ΠΈ ΠΌΠΎΠΆΠ΅Π»Π΅ Π΄Π° Π³ΠΈ ΠΎΡΡΡΡΠ°Π½Π°Ρ ΡΠΈΡΠ΅ ΠΏΠΎΡΡΠΎΠ΅ΡΠΊΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠΈ Π²ΠΎ ΡΠΎΡΡΠ²Π΅ΡΠΎΡ ΠΏΡΠΈΡΡΠ°Π½ΠΈΡΠ΅Π½ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊ. Π’ΡΠ΅ΡΠΎ, ΡΠΈΠ΅ Π±ΠΈ Π±ΠΈΠ»Π΅ ΡΠ΅Π»ΠΎΡΠ½ΠΎ ΠΊΠΎΠΌΠΏΠ°ΡΠΈΠ±ΠΈΠ»Π½ΠΈ ΡΠΎ Π΄Π΅Π»ΠΎΠ²Π½ΠΈΡΠ΅ Π±Π°ΡΠ°ΡΠ° Π½Π° Π²ΠΎΠ΄Π΅ΡΠΊΠΈΡΠ΅ ΠΊΠΎΠΌΠ΅ΡΡΠΈΡΠ°Π»Π½ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ Π·Π° ΡΠ°ΡΠΏΠΎΡΠ΅Π΄ΡΠ²Π°ΡΠ΅, ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΠΈ ΡΠ΅ΡΠ²ΠΈΡΠΈΡΠ°ΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅ΡΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, Red Hat OpenShift).
ΠΠ³ΡΠ°Π½ΠΈΡΡΠ²Π°ΡΠ° ΠΏΡΠΈΡΡΠ°Π½ΠΈΡΠ΅Π½ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊ Π° ΠΏΡΠ΅Π΄Π½ΠΎΡΡΠΈΡΠ΅ Π½Π° Π½ΠΎΠ²ΠΈΠΎΡ ΡΠΎΡΡΠ²Π΅Ρ Π²Π΅ΡΠ΅ ΡΠ΅ Π΄Π΅ΡΠ°Π»Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈ Π²ΠΎ
ΠΠ°ΠΆΠ½ΠΎ Π΅ Π΄Π° ΡΠ΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈ ΠΊΠ°ΠΊΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ ΠΈΠΌΠ°Π°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Π½Π° ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΎΡ ΠΎΡΠ°ΠΊ:
- ΠΠΎΠ΄ΠΌΠ°Π½ β Π΄ΠΈΡΠ΅ΠΊΡΠ½Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅ΡΠΈΡΠ΅ ΠΈ ΡΠΊΠ»Π°Π΄ΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠ»ΠΈΠΊΠΈ ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠ΅ΡΠΎΡ runC;
- ΠΠΈΠ»Π΄Π°Ρ β ΡΠΊΠ»ΠΎΠΏΡΠ²Π°ΡΠ΅ ΠΈ ΠΏΠΎΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠ»ΠΈΠΊΠΈ Π²ΠΎ ΡΠ΅Π³ΠΈΡΡΠ°ΡΠΎΡ;
- CRI-O β ΠΈΠ·Π²ΡΡΠ½Π° ΡΡΠ΅Π΄ΠΈΠ½Π° Π·Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΠΎΡΠΊΠ΅ΡΡΡΠ°ΡΠΈΡΠ° Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅ΡΠΈ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, Kubernetes).
ΠΠΈΡΠ»Π°ΠΌ Π΄Π΅ΠΊΠ° Π·Π° Π΄Π° ΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ ΠΎΠΏΡΡΠ°ΡΠ° ΡΠ΅ΠΌΠ° Π½Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΠΏΠΎΠΌΠ΅ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Π½Π° ΠΎΡΠ°ΠΊΠΎΡ, ΠΏΡΠ΅ΠΏΠΎΡΠ°ΡΠ»ΠΈΠ²ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ Π΄ΠΈΡΠ°Π³ΡΠ°ΠΌ Π·Π° ΠΏΠΎΠ²ΡΠ·ΡΠ²Π°ΡΠ΅ ΠΎΠ²Π΄Π΅ ΠΡΠ±Π΅ΡΠ½Π΅ΡΠΈ c ΡΠ°Π±ΠΎΡΠΈ C ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π½Π° Π½ΠΈΡΠΊΠΎ Π½ΠΈΠ²ΠΎ ΡΠΎ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ CRI-O:
CRI-O ΠΈ ΠΡΠ±Π΅ΡΠ½Π΅ΡΠΈ ΠΏΡΠΈΠ΄ΡΠΆΡΠ²Π°ΡΡΠ΅ ΡΠ΅ Π΄ΠΎ ΠΈΡΡΠΈΠΎΡ ΡΠΈΠΊΠ»ΡΡ Π½Π° ΠΎΡΠ»ΠΎΠ±ΠΎΠ΄ΡΠ²Π°ΡΠ΅ ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° (ΠΌΠ°ΡΡΠΈΡΠ°ΡΠ° Π·Π° ΠΊΠΎΠΌΠΏΠ°ΡΠΈΠ±ΠΈΠ»Π½ΠΎΡΡ Π΅ ΠΌΠ½ΠΎΠ³Ρ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½Π°: Π³Π»Π°Π²Π½ΠΈΡΠ΅ Π²Π΅ΡΠ·ΠΈΠΈ ΠΡΠ±Π΅ΡΠ½Π΅ΡΠΈ ΠΈ CRI-O ΡΠ΅ ΡΠΎΠ²ΠΏΠ°ΡΠ°Π°Ρ), Π° ΡΠΎΠ°, Π·Π΅ΠΌΠ°ΡΡΠΈ Π³ΠΎ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ ΡΠΎΠΊΡΡΠΎΡ Π½Π° ΡΠ΅Π»ΠΎΡΠ½ΠΎ ΠΈ ΡΠ΅ΠΎΠΏΡΠ°ΡΠ½ΠΎ ΡΠ΅ΡΡΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΠΎΠ²ΠΎΡ ΠΎΡΠ°ΠΊ ΠΎΠ΄ ΡΡΡΠ°Π½Π° Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ΅ΡΠΈΡΠ΅, Π½ΠΈ Π΄Π°Π²Π° Π·Π° ΠΏΡΠ°Π²ΠΎ Π΄Π° ΠΎΡΠ΅ΠΊΡΠ²Π°ΠΌΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π° ΠΎΡΡΠ²Π°ΡΠ»ΠΈΠ²Π° ΡΡΠ°Π±ΠΈΠ»Π½ΠΎΡΡ Π²ΠΎ ΡΠ°Π±ΠΎΡΠ΅ΡΠ΅ΡΠΎ ΠΏΠΎΠ΄ ΠΊΠ°ΠΊΠ²ΠΈ Π±ΠΈΠ»ΠΎ ΡΡΠ΅Π½Π°ΡΠΈΡΠ° Π·Π° ΡΠΏΠΎΡΡΠ΅Π±Π° (ΡΠ΅Π»Π°ΡΠΈΠ²Π½Π°ΡΠ° Π»Π΅ΡΠ½ΠΎΡΠΈΡΠ° Π΅ ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° ΠΊΠΎΡΠΈΡΠ½Π° ΠΎΠ²Π΄Π΅ CRI-O Π²ΠΎ ΡΠΏΠΎΡΠ΅Π΄Π±Π° ΡΠΎ ΠΏΡΠΈΡΡΠ°Π½ΠΈΡΠ΅Π½ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊ ΠΏΠΎΡΠ°Π΄ΠΈ Π½Π°ΠΌΠ΅ΡΠ½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΡΠ²Π°ΡΠ΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΠ°).
ΠΡΠΈ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ ΠΡΠ±Π΅ΡΠ½Π΅ΡΠΈ βΠΏΡΠ°Π²ΠΈΠ»Π΅Π½ Π½Π°ΡΠΈΠ½β Π½Π°ΡΠΈΠ½ (ΡΠΏΠΎΡΠ΅Π΄ 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 firewalld
SELinux ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ ΠΈΡΠΊΠ»ΡΡΠΈ ΠΈΠ»ΠΈ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΡΡΠ»ΠΈ Π½Π° βΠΏΠΎΠΏΡΡΡΠ»ΠΈΠ²β ΡΠ΅ΠΆΠΈΠΌ:
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, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π²Π΅ΡΠ΅ ΡΠΏΠΎΠΌΠ΅Π½Π°Π²ΠΌΠ΅, ΠΎΠ΄Π³ΠΎΠ²Π°ΡΠ°ΡΡΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±Π½Π°ΡΠ° Π²Π΅ΡΠ·ΠΈΡΠ° ΠΡΠ±Π΅ΡΠ½Π΅ΡΠΈ), ΠΎΠ΄ Π½Π°ΡΠ½ΠΎΠ²Π°ΡΠ° ΡΡΠ°Π±ΠΈΠ»Π½Π° Π²Π΅ΡΠ·ΠΈΡΠ° ΠΡΠ±Π΅ΡΠ½Π΅ΡΠΈ ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»Π½ΠΎ 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 ΠΏΡΠ΅Π΄ Π΄Π° ΡΠ° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅ ΡΡΠ»ΡΠ³Π°ΡΠ°, Π±ΠΈΠ΄Π΅ΡΡΠΈ ΠΏΠΎΡΡΠ΅Π±Π½Π°ΡΠ° Π·Π°Π΅Π΄Π½ΠΈΡΠΊΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΈΠΌΠ° ΡΠ°Π·Π»ΠΈΡΠ½Π° Π»ΠΎΠΊΠ°ΡΠΈΡΠ° ΠΎΠ΄ Π½Π°Π²Π΅Π΄Π΅Π½Π°ΡΠ°:
sed -i 's//usr/libexec/crio/conmon//usr/bin/conmon/' /etc/crio/crio.conf
Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΎ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ ΠΈ ΡΡΠ°ΡΡΡΠ²Π°ΡΠ΅ Π΄Π΅ΠΌΠΎΠ½ΠΎΡ CRI-O:
systemctl enable --now crio
ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ ΡΡΠ°ΡΡΡΠΎΡ Π½Π° Π΄Π΅ΠΌΠΎΠ½ΠΎΡ:
systemctl status crio
- ΠΡΠ΄Π΅ Π΄Π° Π³ΠΎ Π°ΠΆΡΡΠΈΡΠ°ΠΌΠ΅ ΠΠ‘:
- ΠΠ½ΡΡΠ°Π»Π°ΡΠΈΡΠ° ΠΈ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ ΠΡΠ±Π΅ΡΠ½Π΅ΡΠΈ.
- ΠΡΠ΄Π΅ Π΄Π° Π³ΠΎ Π΄ΠΎΠ΄Π°Π΄Π΅ΠΌΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΠΎ ΡΠΊΠ»Π°Π΄ΠΈΡΡΠ΅:
cat <<EOF > /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
Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΌΠ΅ ΠΡΠ±Π΅ΡΠ½Π΅ΡΠΈ (Π²Π΅ΡΠ·ΠΈΡΠ° 1.18, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π΅ ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΎ ΠΏΠΎΠ³ΠΎΡΠ΅):
dnf install -y kubelet-1.18* kubeadm-1.18* kubectl-1.18* --disableexcludes=kubernetes
- ΠΡΠΎΡΠ°ΡΠ° Π²Π°ΠΆΠ½Π° Π½ΠΈΡΠ°Π½ΡΠ°: Π±ΠΈΠ΄Π΅ΡΡΠΈ Π½Π΅ ΠΊΠΎΡΠΈΡΡΠΈΠΌΠ΅ Π΄Π΅ΠΌΠΎΠ½ ΠΏΡΠΈΡΡΠ°Π½ΠΈΡΠ΅Π½ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊ, Π½ΠΎ Π½ΠΈΠ΅ Π³ΠΎ ΠΊΠΎΡΠΈΡΡΠΈΠΌΠ΅ Π΄Π΅ΠΌΠΎΠ½ΠΎΡ CRI-O, ΠΏΡΠ΅Π΄ Π»Π°Π½ΡΠΈΡΠ°ΡΠ΅ ΠΈ ΠΈΠ½ΠΈΡΠΈΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡΠ° ΠΡΠ±Π΅ΡΠ½Π΅ΡΠΈ ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΈ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½ΠΈΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈ Π²ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠΊΠ°ΡΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° /var/lib/kubelet/config.yaml, ΠΎΡΠΊΠ°ΠΊΠΎ ΠΏΡΠ²ΠΎ Π³ΠΎ ΡΠΎΠ·Π΄Π°Π΄ΠΎΠ²ΡΠ΅ ΡΠ°ΠΊΠ°Π½ΠΈΠΎΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΠΌ:
mkdir /var/lib/kubelet cat <<EOF > /var/lib/kubelet/config.yaml apiVersion: kubelet.config.k8s.io/v1beta1 kind: KubeletConfiguration cgroupDriver: systemd EOF
- Π’ΡΠ΅ΡΠ°ΡΠ° Π²Π°ΠΆΠ½Π° ΡΠΎΡΠΊΠ° ΡΠΎ ΠΊΠΎΡΠ° ΡΠ΅ ΡΡΠ΅ΡΠ°Π²Π°ΠΌΠ΅ ΠΏΡΠΈ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡΠ°ΡΠ°: ΠΈ ΠΏΠΎΠΊΡΠ°Ρ ΡΠ°ΠΊΡΠΎΡ ΡΡΠΎ Π³ΠΎ Π½Π°Π²Π΅Π΄ΠΎΠ²ΠΌΠ΅ ΠΊΠΎΡΠΈΡΡΠ΅Π½ΠΈΠΎΡ Π΄ΡΠ°ΡΠ²Π΅Ρ cΠ³ΡΡΠΏΠ°, ΠΈ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ° ΠΏΡΠ΅ΠΊΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈΡΠ΅ ΠΏΠΎΠΌΠΈΠ½Π°ΡΠΈ ΠΊΡΠ±Π΅Π»Π΅Ρ Π΅ Π·Π°ΡΡΠ°ΡΠ΅Π½Π° (ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π΅ Π΅ΠΊΡΠΏΠ»ΠΈΡΠΈΡΠ½ΠΎ Π½Π°Π²Π΅Π΄Π΅Π½ΠΎ Π²ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ°), ΡΡΠ΅Π±Π° Π΄Π° Π΄ΠΎΠ΄Π°Π΄Π΅ΠΌΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈ Π²ΠΎ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ°, ΠΈΠ½Π°ΠΊΡ Π½Π°ΡΠΈΠΎΡ ΠΊΠ»Π°ΡΡΠ΅Ρ Π½Π΅ΠΌΠ° Π΄Π° ΡΠ΅ ΠΈΠ½ΠΈΡΠΈΡΠ°Π»ΠΈΠ·ΠΈΡΠ°:
cat /dev/null > /etc/sysconfig/kubelet cat <<EOF > /etc/sysconfig/kubelet KUBELET_EXTRA_ARGS=--container-runtime=remote --cgroup-driver=systemd --container-runtime-endpoint='unix:///var/run/crio/crio.sock' EOF
- Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° Π³ΠΎ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΠΌΠ΅ Π΄Π΅ΠΌΠΎΠ½ΠΎΡ ΠΊΡΠ±Π΅Π»Π΅Ρ:
sudo systemctl enable --now kubelet
ΠΠ° ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±ΡΠ²Π°ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Π½ Π°Π²ΠΈΠΎΠ½ ΠΈΠ»ΠΈ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊ ΡΠ°Π·Π»ΠΈ Π·Π° Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΌΠΈΠ½ΡΡΠΈ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΈ ΠΊΠΎΡΠΈΡΡΠΈΡΠ΅
ΡΠΎ ΠΎΠ²Π°Π° ΡΠΊΡΠΈΠΏΡΠ° .
- ΠΡΠ΄Π΅ Π΄Π° Π³ΠΎ Π΄ΠΎΠ΄Π°Π΄Π΅ΠΌΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΠΎ ΡΠΊΠ»Π°Π΄ΠΈΡΡΠ΅:
- ΠΡΠ΅ΠΌΠ΅ Π΅ Π΄Π° Π³ΠΎ ΠΈΠ½ΠΈΡΠΈΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΌΠ΅ Π½Π°ΡΠΈΠΎΡ ΠΊΠ»Π°ΡΡΠ΅Ρ.
- ΠΠ° Π΄Π° Π³ΠΎ ΠΈΠ½ΠΈΡΠΈΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΡΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΡ, ΠΈΠ·Π²ΡΡΠ΅ΡΠ΅ ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°:
kubeadm init --pod-network-cidr=10.244.0.0/16
ΠΠ°Π΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΎ Π·Π°ΠΏΠΈΡΠ΅ΡΠ΅ ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° Π·Π° ΠΏΡΠΈΠΊΠ»ΡΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΡ βkubeadm joinβ¦β, ΠΊΠΎΡ ΠΎΠ΄ Π²Π°Ρ ΡΠ΅ Π±Π°ΡΠ° Π΄Π° Π³ΠΎ ΠΊΠΎΡΠΈΡΡΠΈΡΠ΅ Π½Π° ΠΊΡΠ°ΡΠΎΡ ΠΎΠ΄ ΠΈΠ·Π»Π΅Π·ΠΎΡ, ΠΈΠ»ΠΈ Π±Π°ΡΠ΅ΠΌ Π½Π° Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΡΠ΅ ΡΠΎΠΊΠ΅Π½ΠΈ.
- ΠΡΠ΄Π΅ Π΄Π° Π³ΠΎ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΌΠ΅ ΠΏΡΠΈΠΊΠ»ΡΡΠΎΠΊΠΎΡ (CNI) Π·Π° Pod ΠΌΡΠ΅ΠΆΠ°ΡΠ°. ΠΡΠ΅ΠΏΠΎΡΠ°ΡΡΠ²Π°ΠΌ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ ΠΠΌΠ΅ΡΠΈΠΊΠ°Π½. ΠΠΎΠΆΠ΅Π±ΠΈ ΠΏΠΎΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΎ Π€Π»Π°Π½Π΅Π» ΠΈΠΌΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΡΠΎ ΠΊΠΎΠΌΠΏΠ°ΡΠΈΠ±ΠΈΠ»Π½ΠΎΡΡΠ° ΡΠΎ nftables, Π΄Π° ΠΈ ΠΠΌΠ΅ΡΠΈΠΊΠ°Π½ - Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π°ΡΠ° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° CNI ΠΏΡΠ΅ΠΏΠΎΡΠ°ΡΠ°Π½Π° ΠΈ ΡΠ΅Π»ΠΎΡΠ½ΠΎ ΡΠ΅ΡΡΠΈΡΠ°Π½Π° ΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ ΠΡΠ±Π΅ΡΠ½Π΅ΡΠΈ:
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 Π·Π° Π½Π΅ΠΊΠΎΠ»ΠΊΡ Π³ΠΎΠ΄ΠΈΠ½ΠΈ, Π½ΠΎ Π½ΠΈΠ΅ ΡΠ΅ Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΡΠΎ Π·Π°Π΄ΠΎΠ²ΠΎΠ»ΡΡΠ²ΠΎ. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΎ ΡΠΏΠΎΠ΄Π΅Π»ΠΈΡΠ΅ Π²Π°ΡΠ΅ΡΠΎ ΠΌΠΈΡΠ»Π΅ΡΠ΅ ΡΠΎΠΊΠΌΡ ΡΠ΅Π³Π° Π²ΠΎ ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ΅.
ΠΡΡΠ°Π½Π΅ΡΠ΅ ΡΠΎ Π½Π°Ρ!
ΠΠ²Π°Π° ΡΡΠ°ΡΠΈΡΠ° ΡΠ΅ ΠΏΠΎΡΠ°Π²ΠΈ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΈΠ·Π²ΠΎΡΠΈ:
- ΠΠ΅Π» Π·Π° ΡΡΠ°Π΅ΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅ΡΠΈΡΠ΅
ΠΡΠ±Π΅ΡΠ½Π΅ΡΠ΅Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π‘ΡΡΠ°Π½ΠΈΡΠ° ΠΡΠΎΠ΅ΠΊΡ CRI-O Π½Π° ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ- Π‘ΡΠ°ΡΠΈΠΈ ΠΎΠ΄ Π±Π»ΠΎΠ³ΠΎΡ Π½Π° Red Hat:
ΠΎΠ²Π°Π° ,ΠΎΠ²Π° ΠΈ ΠΌΠ½ΠΎΠ³Ρ Π΄ΡΡΠ³ΠΈ
ΠΠ·Π²ΠΎΡ: www.habr.com