ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ F5 ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΠ°Π΅Ρ NGINX Π΄Π»Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ NetOps ΠΈ DevOps ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΡΡ
ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π²ΠΎ Π²ΡΠ΅Ρ
ΡΡΠ΅Π΄Π°Ρ
. Π‘ΡΠΌΠΌΠ° ΡΠ΄Π΅Π»ΠΊΠΈ ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅ΡΡΡ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π² $670 ΠΌΠ»Π½.
ΠΠΎΠΌΠ°Π½Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΠ³ΠΎΡΡ Π‘ΡΡΠΎΠ΅Π² ΠΈ ΠΠ°ΠΊΡΠΈΠΌ ΠΠΎΠ½ΠΎΠ²Π°Π»ΠΎΠ², ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡ NGINX ΡΠΆΠ΅ Π² ΡΠΎΡΡΠ°Π²Π΅ F5.
ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ F5 ΡΠ°ΡΡΡΠΈΡΡΠ²Π°Π΅Ρ Π²Π½Π΅Π΄ΡΠΈΡΡ Π² ΡΠ΅ΡΠ²Π΅Ρ Nginx ΡΠ²ΠΎΠΈ Π½Π°ΡΠ°Π±ΠΎΡΠΊΠΈ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π² ΡΠ²ΠΎΠΈΡ
ΠΎΠ±Π»Π°ΡΠ½ΡΡ
ΠΏΡΠΎΠ΄ΡΠΊΡΠ°Ρ
. ΠΠΎ ΡΠ»ΠΎΠ²Π°ΠΌ Π€ΡΠ°Π½ΡΡΠ° ΠΠΎΠΊΠΎ-ΠΠΎΠ½Ρ, Π‘ΠΠ F5, ΡΠ»ΠΈΡΠ½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΊΠΎΡΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈΠ·ΠΈΡΡΠ΅ΠΌΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° Nginx Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΏΠΎΠ»ΡΡΠΈΡ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π² ΠΊΡΡΠΏΠ½ΠΎΠΌ Π±ΠΈΠ·Π½Π΅ΡΠ΅.
ΠΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»ΠΈ ΠΎΠ±Π΅ΠΈΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΠ»ΠΈ, ΡΡΠΎ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠΉ, Π±Π΅Π· ΠΊΠΎΡΠΎΡΡΡ ΡΠ΄Π΅Π»ΠΊΠ° Π±Ρ Π½Π΅ ΡΠΎΡΡΠΎΡΠ»Π°ΡΡ, Π±ΡΠ»ΠΎ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΎΡΠΊΡΡΡΠΎΡΡΠΈ Nginx.
Π‘ ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΌΠΈ Π½ΠΎΠ²ΠΎΡΡΡΠΌΠΈ Π½Π°ΡΠ΅ Π²ΠΈΠ΄Π΅Π½ΠΈΠ΅ ΠΈ ΠΌΠΈΡΡΠΈΡ Π½Π΅ ΠΌΠ΅Π½ΡΡΡΡΡ. ΠΡ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΏΠΎΠΌΠΎΠ³Π°Π΅ΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΡ Π²ΡΠ΅ Π΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅Ρ Π²Ρ ΠΎΠ΄ΡΡΠΈΠΉ/ΠΈΡΡ ΠΎΠ΄ΡΡΠΈΠΉ ΡΡΠ°ΡΠΈΠΊ ΠΈ API. Π ΠΌΡ Π²ΡΠ΅ Π΅ΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅ΠΌ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΠΌ Π² ΠΈΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ Π½Π° ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΡ. Π§ΡΠΎ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ, ΡΠ°ΠΊ ΡΡΠΎ Π½Π°ΡΠ° ΡΡΠ°Π΅ΠΊΡΠΎΡΠΈΡ. F5 ΡΠ°Π·Π΄Π΅Π»ΡΠ΅Ρ Π½Π°ΡΡ ΠΌΠΈΡΡΠΈΡ, Π²ΠΈΠ΄Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ΅Π½Π½ΠΎΡΡΠΈ. ΠΠΎ ΠΎΠ½ΠΈ ΠΏΡΠΈΠ½ΠΎΡΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ.
ΠΠ΅ Π·Π°Π±Π»ΡΠΆΠ΄Π°ΠΉΡΠ΅ΡΡ: F5 ΡΡΡΠ΅ΠΌΠΈΡΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π±ΡΠ΅Π½Π΄ NGINX ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. ΠΠ΅Π· ΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΡΡΠ²Π° ΡΠ΄Π΅Π»ΠΊΠ° Π½Π΅ ΡΠΎΡΡΠΎΡΠ»Π°ΡΡ Π±Ρ Π½ΠΈ Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΡΠΎΡΠΎΠ½.
ΠΠ°Π³Π»ΡΠ΄ΡΠ²Π°Ρ Π²ΠΏΠ΅ΡΠ΅Π΄, ΠΌΠ΅Π½Ρ ΡΠ°Π΄ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π΄Π²ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ Π»ΠΈΠ΄Π΅ΡΠΎΠ² ΡΡΠ½ΠΊΠ°. Π£ Π½Π°Ρ Π΅ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΠΎΡΠΎΠ½Ρ. F5 ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈΠ΄Π΅ΡΠΎΠΌ Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ ΡΠ΅ΡΠ΅ΠΉ ΠΈ Π³ΡΡΠΏΠΏ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. NGINX ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈΠ΄Π΅ΡΠΎΠΌ Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ DevOps, ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΡΡ Π½Π° Π½Π°ΡΠ΅ΠΌ ΡΠ΄ΡΠ΅ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. ΠΠ°ΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ API Π΄ΠΎΠΏΠΎΠ»Π½ΡΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ F5 Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ. ΠΠ°ΠΆΠ΅ Π² ΡΠ»ΡΡΠ°Π΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² Π΄ΠΎΡΡΠ°Π²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (ADC), Π³Π΄Π΅ Π΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΡΡΡΠΈΠ΅, NGINX ΡΠΎΠ·Π΄Π°Π»Π° ΠΎΠ±Π»Π΅Π³ΡΠ΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΎΠΏΡΠΈΠΈ ΠΎΠ±Π»Π°ΡΠ½ΠΎΠ³ΠΎ, Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ² F5.
Gus Robertson, NGINX
ΠΡΠΈΠΎΠ±ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ F5 NGINX ΡΠΊΡΠ΅ΠΏΠ»ΡΠ΅Ρ Π½Π°ΡΡ ΡΡΠ°Π΅ΠΊΡΠΎΡΠΈΡ ΡΠΎΡΡΠ° Π·Π° ΡΡΠ΅Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΎΠ±Π»Π°ΠΊΠΎΠ². ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΌΠΈΡΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ F5 Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π±ΠΎΠ³Π°ΡΡΡ ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΡΡ ΡΡΠ»ΡΠ³ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π²Π΅Π΄ΡΡΠΈΠΌΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ NGINX ΠΏΠΎ Π΄ΠΎΡΡΠ°Π²ΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ API, Π½Π΅ΠΏΡΠ΅Π²Π·ΠΎΠΉΠ΄Π΅Π½Π½ΠΎΠΉ ΡΠ΅ΠΏΡΡΠ°ΡΠΈΠ΅ΠΉ ΠΈ ΡΠ·Π½Π°Π²Π°Π΅ΠΌΠΎΡΡΡΡ Π±ΡΠ΅Π½Π΄Π° Π² ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π΅ DevOps, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΠΈΡΠ½ΠΎΠΉ Π±Π°Π·ΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΌΡ ΡΡΡΡΠ°Π½ΡΠ΅ΠΌ ΡΠ°Π·ΡΡΠ² ΠΌΠ΅ΠΆΠ΄Ρ NetOps ΠΈ DevOps Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΡΡΠ΅Π΄Π΅ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡ.
François Locoh-Donou, F5
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com