NGINX: limit_req β ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π·Π°ΠΏΡΠΎΡΠΎΠ²
ΠΠ°Π΄Π°ΡΠ° β ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π»ΠΈΠΌΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π·Π°ΠΏΡΠΎΡΠΎΠ² Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ IP: Π΄ΠΎΠ±Π°Π²ΠΈΡΡ rate limiter Π½Π° URI /user/oauth/refresh_token ΡΠΈΡΠ»ΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ² β 5 Π² ΠΌΠΈΠ½ΡΡΡ Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ IP Π΅ΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π±ΠΎΠ»ΡΡΠ΅ β Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌ 429 Too Many Requests ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ NGINX ΠΈ Π΅Π³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ngx_http_limit_req_module. limit_req_zone ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ βΠ»ΠΈΠΌΠΈΡΠ΅ΡΠ°β β ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π·ΠΎΠ½Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄ΡΡ Ρ ΡΠ°Π½ΠΈΡΡΡ Π΄Π°Π½Π½ΡΠ΅ (Π° ΠΈΠΌΠ΅Π½Π½ΠΎ ββ¦
https://rtfm.co.ua/nginx-limit_req-ogranichenie-kolichestva-zaprosov/
ΠΠ°Π΄Π°ΡΠ° β ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π»ΠΈΠΌΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π·Π°ΠΏΡΠΎΡΠΎΠ² Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ IP: Π΄ΠΎΠ±Π°Π²ΠΈΡΡ rate limiter Π½Π° URI /user/oauth/refresh_token ΡΠΈΡΠ»ΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ² β 5 Π² ΠΌΠΈΠ½ΡΡΡ Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ IP Π΅ΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π±ΠΎΠ»ΡΡΠ΅ β Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌ 429 Too Many Requests ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ NGINX ΠΈ Π΅Π³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ngx_http_limit_req_module. limit_req_zone ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ βΠ»ΠΈΠΌΠΈΡΠ΅ΡΠ°β β ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π·ΠΎΠ½Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄ΡΡ Ρ ΡΠ°Π½ΠΈΡΡΡ Π΄Π°Π½Π½ΡΠ΅ (Π° ΠΈΠΌΠ΅Π½Π½ΠΎ ββ¦
https://rtfm.co.ua/nginx-limit_req-ogranichenie-kolichestva-zaprosov/
Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 2 β ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠ° Ρ AWS cloud-provider ΠΈ AWS LoadBalancer
Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΠΎΡΡΠ΅ β Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 1 β Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΎΠ±Π·ΠΎΡ β Π±ΡΠ»ΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΌ, ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ ΠΏΠΎΡΡΠΎΠ³Π°ΡΡ β ΡΡΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Kubernetes Ρ AWS ΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠ΅ΡΡΡ: ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡ, ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊ Π½Π΅ΠΌΡ Π΄ΠΎΡΡΡΠΏ ΡΠ΅ΡΠ΅Π· AWS Load Balancer. ΠΠ»Π°Π²Π½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡβ¦
https://rtfm.co.ua/kubernetes-znakomstvo-chast-2-sozdanie-klastera-s-aws-cloud-provider-i-aws-loadbalancer/
Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΠΎΡΡΠ΅ β Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 1 β Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΎΠ±Π·ΠΎΡ β Π±ΡΠ»ΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΌ, ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ ΠΏΠΎΡΡΠΎΠ³Π°ΡΡ β ΡΡΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Kubernetes Ρ AWS ΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠ΅ΡΡΡ: ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡ, ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊ Π½Π΅ΠΌΡ Π΄ΠΎΡΡΡΠΏ ΡΠ΅ΡΠ΅Π· AWS Load Balancer. ΠΠ»Π°Π²Π½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡβ¦
https://rtfm.co.ua/kubernetes-znakomstvo-chast-2-sozdanie-klastera-s-aws-cloud-provider-i-aws-loadbalancer/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | DevOps-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π»ΡΡΠ°ΠΈ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 2 β ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠ° Ρ AWS cloud-provider ΠΈ AWS LoadBalancer
ΠΠΎΡΠ°Π³ΠΎΠ²ΠΎΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Kubernetes ΠΊΠ»Π°ΡΡΠ΅ΡΠ° Ρ AWS cloud-provider ΠΈ AWS LoadBalancer
RTFM: ΠΠ΅Π½Ρ Π ΠΎΠΆΠ΄Π΅Π½ΠΈΡ β 8 Π³ΠΎΠ΄ΠΈΠΊΠΎΠ² ΠΈ 3 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π° ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅Π»Π΅ΠΉ. ΠΠ±Π·ΠΎΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ.
ΠΠ°ΠΊ-ΡΠΎ Π²Π΄ΡΡΠ³ Π½Π°ΡΡΡΠΏΠΈΠ» ΡΠΆΠ΅ ΠΈ ΠΠ²Π³ΡΡΡ. Π’ΡΠ°Π΄ΠΈΡΠΎΠ½Π½ΠΎ β 14-Π΅ ΠΠ²Π³ΡΡΡΠ° Ρ RTFM ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ΠΠ½Ρ ΡΠΎΠΆΠ΄Π΅Π½ΠΈΡ: ΠΡ ΠΈ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎ β ΠΊΡΠ°ΡΠ΅Π½ΡΠΊΠΎ ΠΏΡΠΎΠΉΠ΄ΡΡΡ ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΡΠΎΠ±ΡΡΠΈΡΠΌ Π·Π° ΠΏΡΠΎΡΠ΅Π΄ΡΠΈΠΉ Π³ΠΎΠ΄ (Ρ ΠΎΡΡ ΡΠ΅ΠΌΠΈΠ»Π΅ΡΠΈΠ΅ Π½Π΅ Π·Π°ΠΏΠΈΡΠ°Π», Π½Ρ Π΄Π° Π»Π°Π΄Π½ΠΎ). ΠΠ»ΠΎΠ³ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° WordPress, Ρ ΠΎΡΡΠΈΡΡΡ Π½Π° Debian + NGINX + PHP-FPM + MariaDB β ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ LEMP. ΠΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΠΏΠΎΡΡΡ: rtfm.co.uaβ¦
https://rtfm.co.ua/rtfm-den-rozhdeniya-8-godikov-i-3-milliona-posetitelej-obzor-obnovlenij/
ΠΠ°ΠΊ-ΡΠΎ Π²Π΄ΡΡΠ³ Π½Π°ΡΡΡΠΏΠΈΠ» ΡΠΆΠ΅ ΠΈ ΠΠ²Π³ΡΡΡ. Π’ΡΠ°Π΄ΠΈΡΠΎΠ½Π½ΠΎ β 14-Π΅ ΠΠ²Π³ΡΡΡΠ° Ρ RTFM ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ΠΠ½Ρ ΡΠΎΠΆΠ΄Π΅Π½ΠΈΡ: ΠΡ ΠΈ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎ β ΠΊΡΠ°ΡΠ΅Π½ΡΠΊΠΎ ΠΏΡΠΎΠΉΠ΄ΡΡΡ ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΡΠΎΠ±ΡΡΠΈΡΠΌ Π·Π° ΠΏΡΠΎΡΠ΅Π΄ΡΠΈΠΉ Π³ΠΎΠ΄ (Ρ ΠΎΡΡ ΡΠ΅ΠΌΠΈΠ»Π΅ΡΠΈΠ΅ Π½Π΅ Π·Π°ΠΏΠΈΡΠ°Π», Π½Ρ Π΄Π° Π»Π°Π΄Π½ΠΎ). ΠΠ»ΠΎΠ³ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° WordPress, Ρ ΠΎΡΡΠΈΡΡΡ Π½Π° Debian + NGINX + PHP-FPM + MariaDB β ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ LEMP. ΠΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΠΏΠΎΡΡΡ: rtfm.co.uaβ¦
https://rtfm.co.ua/rtfm-den-rozhdeniya-8-godikov-i-3-milliona-posetitelej-obzor-obnovlenij/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
RTFM: ΠΠ΅Π½Ρ Π ΠΎΠΆΠ΄Π΅Π½ΠΈΡ β 8 Π³ΠΎΠ΄ΠΈΠΊΠΎΠ² ΠΈ 3 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π° ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅Π»Π΅ΠΉ. ΠΠ±Π·ΠΎΡ ΠΎΠ±Π½ΠΎΠ²Π»
ΠΠ°ΠΊ-ΡΠΎ Π²Π΄ΡΡΠ³ Π½Π°ΡΡΡΠΏΠΈΠ» ΡΠΆΠ΅ ΠΈ ΠΠ²Π³ΡΡΡ. Π’ΡΠ°Π΄ΠΈΡΠΎΠ½Π½ΠΎ - 14-Π΅ ΠΠ²Π³ΡΡΡΠ° Ρ RTFM ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ΠΠ½Ρ ΡΠΎΠΆΠ΄Π΅Π½ΠΈΡ: ΠΡ ΠΈ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎ - ΠΊΡΠ°ΡΠ΅Π½ΡΠΊΠΎ ΠΏΡΠΎΠΉΠ΄ΡΡΡ ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΡΠΎΠ±ΡΡΠΈΡΠΌ Π·Π° ΠΏΡΠΎΡΠ΅Π΄ΡΠΈΠΉ Π³ΠΎΠ΄ (Ρ
ΠΎΡΡ ΡΠ΅ΠΌΠΈΠ»Π΅ΡΠΈΠ΅ Π½Π΅ Π·Π°ΠΏΠΈΡΠ°Π»,
Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 3 β ΠΎΠ±Π·ΠΎΡ AWS EKS ΠΈ ΡΡΡΠ½ΠΎΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠ°
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ Kubernetes. ΠΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΡΠ°ΡΡΠΈ: Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 1 β Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΎΠ±Π·ΠΎΡ Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 2 β ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠ° Ρ AWS cloud-provider ΠΈ AWS LoadBalancer Π ΡΡΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΡΠΌ ΡΠΆΠ΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΊ EKS β ΠΊΡΠ°ΡΠΊΠΎ Π΅Π³ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΏΠΎΡΠΎΠΌ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Kubernetes Control Plane, CloudFormation ΡΡΠ΅ΠΊ Ρ Worker Nodes, Π·Π°ΠΏΡΡΡΠΈΠΌ Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡ Π² Π½ΠΎΠ²ΠΎΠΌβ¦
https://rtfm.co.ua/kubernetes-znakomstvo-chast-3-obzor-aws-eks-i-ruchnoe-sozdanie-klastera/
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ Kubernetes. ΠΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΡΠ°ΡΡΠΈ: Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 1 β Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΎΠ±Π·ΠΎΡ Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 2 β ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠ° Ρ AWS cloud-provider ΠΈ AWS LoadBalancer Π ΡΡΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΡΠΌ ΡΠΆΠ΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΊ EKS β ΠΊΡΠ°ΡΠΊΠΎ Π΅Π³ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΏΠΎΡΠΎΠΌ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Kubernetes Control Plane, CloudFormation ΡΡΠ΅ΠΊ Ρ Worker Nodes, Π·Π°ΠΏΡΡΡΠΈΠΌ Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡ Π² Π½ΠΎΠ²ΠΎΠΌβ¦
https://rtfm.co.ua/kubernetes-znakomstvo-chast-3-obzor-aws-eks-i-ruchnoe-sozdanie-klastera/
Docker: Compose ΠΈ ΠΎΠ±ΡΠΈΠ΅ ΡΠ΅ΡΠΈ
ΠΠΌΠ΅Π΅ΡΡΡ Docker Compose ΡΡΠ΅ΠΊ Ρ Jenkins, SonarQube ΠΈ PostgresSQL, ΡΠΌ. ΠΏΠΎΡΡ SonarQube: Π·Π°ΠΏΡΡΠΊ Π² Docker ΠΈ Π²ΡΠ·ΠΎΠ² ΠΈΠ· Jenkins Pipeline. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΎΠΏΠΈΡΠ°Π½Ρ Π² ΠΎΠ΄Π½ΠΎΠΌ Compose-ΡΠ°ΠΉΠ»Π΅, ΠΈ Π²Π΅ΡΡ ΡΡΠ΅ΠΊ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π΅Π΄ΠΈΠ½ΡΠΌ systemd-ΡΠ°ΠΉΠ»ΠΎΠΌ (ΡΠΌ. Linux: systemd ΡΠ΅ΡΠ²ΠΈΡ Π΄Π»Ρ Docker Compose). Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, Π΅ΡΠ»ΠΈ Π½Π°Π΄ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΡ SonarQube β ΡΠΎ ΠΏΡΠΈΠ΄ΡΡΡΡ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΈ Jenkins, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌβ¦
https://rtfm.co.ua/docker-compose-i-obshhie-seti/
ΠΠΌΠ΅Π΅ΡΡΡ Docker Compose ΡΡΠ΅ΠΊ Ρ Jenkins, SonarQube ΠΈ PostgresSQL, ΡΠΌ. ΠΏΠΎΡΡ SonarQube: Π·Π°ΠΏΡΡΠΊ Π² Docker ΠΈ Π²ΡΠ·ΠΎΠ² ΠΈΠ· Jenkins Pipeline. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΎΠΏΠΈΡΠ°Π½Ρ Π² ΠΎΠ΄Π½ΠΎΠΌ Compose-ΡΠ°ΠΉΠ»Π΅, ΠΈ Π²Π΅ΡΡ ΡΡΠ΅ΠΊ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π΅Π΄ΠΈΠ½ΡΠΌ systemd-ΡΠ°ΠΉΠ»ΠΎΠΌ (ΡΠΌ. Linux: systemd ΡΠ΅ΡΠ²ΠΈΡ Π΄Π»Ρ Docker Compose). Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, Π΅ΡΠ»ΠΈ Π½Π°Π΄ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΡ SonarQube β ΡΠΎ ΠΏΡΠΈΠ΄ΡΡΡΡ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΈ Jenkins, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌβ¦
https://rtfm.co.ua/docker-compose-i-obshhie-seti/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | DevOps-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π»ΡΡΠ°ΠΈ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
Docker: Compose ΠΈ ΠΎΠ±ΡΠΈΠ΅ ΡΠ΅ΡΠΈ
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠΈΡ
ΡΠ΅ΡΠ΅ΠΉ Π² Docker Compose ΡΡΠ΅ΠΊΠ°Ρ
AWS: CloudCraft β Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΊΠ°ΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΠΊΡΡΡΡ
Π‘Π°ΠΌΠΈΠΌ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ CloudCraft ΠΏΠΎΠ»ΡΠ·ΡΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π°Π²Π½ΠΎ β ΡΠ΄ΠΎΠ±Π΅Π½. ΠΠ° Π΄Π½ΡΡ ΠΏΠΎΠ»ΡΡΠΈΠ» Π΄ΠΎΡΡΡΠΏ ΠΊ Π΅Π³ΠΎ ΠΏΠ»Π°ΡΠ½ΡΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌ (ΠΊΡΡΠ°ΡΠΈ β 2 Π½Π΅Π΄Π΅Π»ΠΈ ΠΏΠ»Π°ΡΠ½ΠΎΠΉ Trial ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Ρ), ΡΡΠ΅Π΄ΠΈ ΠΊΠΎΡΠΎΡΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΄Π°Π²Π½ΠΎ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΊΠ°ΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ. Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ β $49/ΠΌΠ΅ΡΡΡ. ΠΡΠΈΠΌΠ΅Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΠΌΠ΅Π΅Ρ CloudCraft Π²ΠΎΠΎΠ±ΡΠ΅ β Π΅ΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΏΠΎΡΡΠ΅ AWS: ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ RTFM 2.3 ββ¦
https://rtfm.co.ua/aws-cloudcraft-generaciya-karty-sushhestvuyushhej-infrastuktury/
Π‘Π°ΠΌΠΈΠΌ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ CloudCraft ΠΏΠΎΠ»ΡΠ·ΡΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π°Π²Π½ΠΎ β ΡΠ΄ΠΎΠ±Π΅Π½. ΠΠ° Π΄Π½ΡΡ ΠΏΠΎΠ»ΡΡΠΈΠ» Π΄ΠΎΡΡΡΠΏ ΠΊ Π΅Π³ΠΎ ΠΏΠ»Π°ΡΠ½ΡΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌ (ΠΊΡΡΠ°ΡΠΈ β 2 Π½Π΅Π΄Π΅Π»ΠΈ ΠΏΠ»Π°ΡΠ½ΠΎΠΉ Trial ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Ρ), ΡΡΠ΅Π΄ΠΈ ΠΊΠΎΡΠΎΡΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΄Π°Π²Π½ΠΎ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΊΠ°ΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ. Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ β $49/ΠΌΠ΅ΡΡΡ. ΠΡΠΈΠΌΠ΅Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΠΌΠ΅Π΅Ρ CloudCraft Π²ΠΎΠΎΠ±ΡΠ΅ β Π΅ΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΏΠΎΡΡΠ΅ AWS: ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ RTFM 2.3 ββ¦
https://rtfm.co.ua/aws-cloudcraft-generaciya-karty-sushhestvuyushhej-infrastuktury/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
AWS: CloudCraft β Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΊΠ°ΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΠΊΡΡΡΡ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ°ΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ
ΡΠ΅ΡΡΡΡΠΎΠ² Π² AWS-Π°ΠΊΠΊΠ°ΡΠ½ΡΠ΅
Redis: Linux ΠΈ vm.overcommit_memory
Π― ΡΠ΅ΠΉΡΠ°Ρ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Ρ Redis ΠΊΠ°ΠΊ ΠΊΠ΅ΡΠΈΡΡΡΡΠΈΠΉ ΡΠ΅ΡΠ²ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈ ΡΡΠ΅Π΄ΠΈ ΠΏΡΠΎΡΠ΅Π³ΠΎ Π²ΡΡΠ°Π» Π²ΠΎΠΏΡΠΎΡ β Π½Π°Π΄ΠΎ Π»ΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡ vm.overcommit_memory Π² 1, ΠΈΠ»ΠΈ Π½Π΅Ρ? ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ Π³Π°ΠΉΠ΄Ρ/HowTo-ΡΠΊΠΈ Redis Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π»Π΅Π³ΠΊΠΎΠΌΡΡΠ»Π΅Π½Π½ΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ βΠ²ΠΎΠ»ΡΠ΅Π±Π½ΡΡ ΠΏΠΈΠ»ΡΠ»Ρβ Π² Π²ΠΈΠ΄Π΅ Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ overcommit_memory. ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ β ΡΡΠΎ overcommit_memory Π΄Π°ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΈ Π½ΡΠΆΠ½Π° Π»ΠΈ ΠΎΠ½Π° Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅. ΠΠΎΡΠ΅ΠΌΡβ¦
https://rtfm.co.ua/redis-linux-i-vm-overcommit_memory/
Π― ΡΠ΅ΠΉΡΠ°Ρ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Ρ Redis ΠΊΠ°ΠΊ ΠΊΠ΅ΡΠΈΡΡΡΡΠΈΠΉ ΡΠ΅ΡΠ²ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈ ΡΡΠ΅Π΄ΠΈ ΠΏΡΠΎΡΠ΅Π³ΠΎ Π²ΡΡΠ°Π» Π²ΠΎΠΏΡΠΎΡ β Π½Π°Π΄ΠΎ Π»ΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡ vm.overcommit_memory Π² 1, ΠΈΠ»ΠΈ Π½Π΅Ρ? ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ Π³Π°ΠΉΠ΄Ρ/HowTo-ΡΠΊΠΈ Redis Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π»Π΅Π³ΠΊΠΎΠΌΡΡΠ»Π΅Π½Π½ΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ βΠ²ΠΎΠ»ΡΠ΅Π±Π½ΡΡ ΠΏΠΈΠ»ΡΠ»Ρβ Π² Π²ΠΈΠ΄Π΅ Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ overcommit_memory. ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ β ΡΡΠΎ overcommit_memory Π΄Π°ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΈ Π½ΡΠΆΠ½Π° Π»ΠΈ ΠΎΠ½Π° Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅. ΠΠΎΡΠ΅ΠΌΡβ¦
https://rtfm.co.ua/redis-linux-i-vm-overcommit_memory/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | DevOps-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π»ΡΡΠ°ΠΈ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
Redis: fork β Cannot allocate memory, Linux, Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠ°ΠΌΡΡΡ ΠΈ vm.overcommit_memory
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ vm.overcommit_memory Π² Linux, ΠΊΠ°ΠΊ ΠΎΠ½ Π²Π»ΠΈΡΠ΅Ρ Π½Π° Redis ΠΈ ΠΏΡΠΈΡΠΈΠ½Π° ΠΎΡΠΈΠ±ΠΊΠΈ fork :Cannot allocate memory
SonarQube: Unrecoverable indexation failures ΠΈ Elasticsearch βDisk watermark exceededβ
ΠΡΡΡ SonarQube, Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΈΠ· Jenkins-Π΄ΠΆΠΎΠ±. Π‘ΠΌ. SonarQube: Π·Π°ΠΏΡΡΠΊ Π² Docker ΠΈ Π²ΡΠ·ΠΎΠ² ΠΈΠ· Jenkins Pipeline. SonarQube ΠΈΠ· Jenkins Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ, Π·Π°Π΄Π°ΡΠΈ ΠΏΡΠΎΡ ΠΎΠ΄ΡΡ, Π½ΠΎ Π² ΡΠ°ΠΌΠΎΠΌ SonarQube Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΎΡΠΈΠ±ΠΊΠ°: java.lang.IllegalStateException: Unrecoverable indexation failures: 1 errors among 1 requests at org.sonar.server.es.IndexingListener$1.onFinish(IndexingListener.java:39) at org.sonar.server.es.BulkIndexer.stop(BulkIndexer.java:122) β¦ ΠΠΎΠ³ΠΈ SonarQube: Aug 29 12:30:26 jenkins-production docker-compose[12591]: sonarqube_1 | 2019.08.29 09:30:26 ERROR web[][o.s.s.es.BulkIndexer] indexβ¦
https://rtfm.co.ua/sonarqube-unrecoverable-indexation-failures-i-elasticsearch-disk-watermark-exceeded/
ΠΡΡΡ SonarQube, Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΈΠ· Jenkins-Π΄ΠΆΠΎΠ±. Π‘ΠΌ. SonarQube: Π·Π°ΠΏΡΡΠΊ Π² Docker ΠΈ Π²ΡΠ·ΠΎΠ² ΠΈΠ· Jenkins Pipeline. SonarQube ΠΈΠ· Jenkins Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ, Π·Π°Π΄Π°ΡΠΈ ΠΏΡΠΎΡ ΠΎΠ΄ΡΡ, Π½ΠΎ Π² ΡΠ°ΠΌΠΎΠΌ SonarQube Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΎΡΠΈΠ±ΠΊΠ°: java.lang.IllegalStateException: Unrecoverable indexation failures: 1 errors among 1 requests at org.sonar.server.es.IndexingListener$1.onFinish(IndexingListener.java:39) at org.sonar.server.es.BulkIndexer.stop(BulkIndexer.java:122) β¦ ΠΠΎΠ³ΠΈ SonarQube: Aug 29 12:30:26 jenkins-production docker-compose[12591]: sonarqube_1 | 2019.08.29 09:30:26 ERROR web[][o.s.s.es.BulkIndexer] indexβ¦
https://rtfm.co.ua/sonarqube-unrecoverable-indexation-failures-i-elasticsearch-disk-watermark-exceeded/
Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 4 β Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π² AWS EKS, aws-iam-authenticator ΠΈ AWS IAM
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΠΏΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΠ΅ Π² AWS EKS. Π ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΠΎΡΡΠ΅ ΡΠ΅ΡΠΈΠΈ β Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 3 β ΠΎΠ±Π·ΠΎΡ AWS EKS ΠΈ ΡΡΡΠ½ΠΎΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠ° β ΠΌΡ Π·Π°ΠΏΡΡΡΠΈΠ»ΠΈ ΡΠ²ΠΎΠΉ EKS ΠΊΠ»Π°ΡΡΠ΅Ρ β Π²ΡΡ ΠΎΡΠ»ΠΈΡΠ½ΠΎ. kubectl ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΡΠ΅ΡΡΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡΡΡ. ΠΠΎ ΠΊΠΎΠ³Π΄Π° ΡΠ΅ΠΌ ΠΆΠ΅ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΠΏΠΎΠΏΡΡΠ°Π»ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ Π±Π΅ΠΊΠ΅Π½Π΄-Π΄Π΅Π²Π΅Π»ΠΎΠΏΠ΅Ρ ΠΏΠΎΠ΄ ΡΠ²ΠΎΠ΅ΠΉ ΡΡΡΡΠΊΠΎΠΉ AWS β βΠ§ΡΠΎ-ΡΠΎ ΠΏΠΎΡΠ»ΠΎ Π½Π΅ ΡΠ°ΠΊβ: root@ip-10-0-42-255:~# kubectl get nodeserror: You must be logged in to the server (Unauthorized) ΠΡΠΎ ΠΆΠ΅β¦
https://rtfm.co.ua/kubernetes-znakomstvo-chast-4-autentifikaciya-v-aws-eks-aws-iam-authenticator-i-aws-iam/
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΠΏΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΠ΅ Π² AWS EKS. Π ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΠΎΡΡΠ΅ ΡΠ΅ΡΠΈΠΈ β Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 3 β ΠΎΠ±Π·ΠΎΡ AWS EKS ΠΈ ΡΡΡΠ½ΠΎΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠ° β ΠΌΡ Π·Π°ΠΏΡΡΡΠΈΠ»ΠΈ ΡΠ²ΠΎΠΉ EKS ΠΊΠ»Π°ΡΡΠ΅Ρ β Π²ΡΡ ΠΎΡΠ»ΠΈΡΠ½ΠΎ. kubectl ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΡΠ΅ΡΡΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡΡΡ. ΠΠΎ ΠΊΠΎΠ³Π΄Π° ΡΠ΅ΠΌ ΠΆΠ΅ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΠΏΠΎΠΏΡΡΠ°Π»ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ Π±Π΅ΠΊΠ΅Π½Π΄-Π΄Π΅Π²Π΅Π»ΠΎΠΏΠ΅Ρ ΠΏΠΎΠ΄ ΡΠ²ΠΎΠ΅ΠΉ ΡΡΡΡΠΊΠΎΠΉ AWS β βΠ§ΡΠΎ-ΡΠΎ ΠΏΠΎΡΠ»ΠΎ Π½Π΅ ΡΠ°ΠΊβ: root@ip-10-0-42-255:~# kubectl get nodeserror: You must be logged in to the server (Unauthorized) ΠΡΠΎ ΠΆΠ΅β¦
https://rtfm.co.ua/kubernetes-znakomstvo-chast-4-autentifikaciya-v-aws-eks-aws-iam-authenticator-i-aws-iam/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | DevOps-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π»ΡΡΠ°ΠΈ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
Kubernetes: Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ, ΡΠ°ΡΡΡ 4 β Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π² AWS EKS, aws-iam-authenticator ΠΈ AWS IAM
ΠΡΠΈΠ±ΠΊΠ° "You must be logged in to the server (Unauthorized)", Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ vs Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΈ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π² AWS EKS Ρ ΠΏΠΎΠΌΠΎΡΡΡ AWS CLI ΠΈ aws-iam-authenticator.
Redis: ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈ ΡΡΠ½ΠΈΠ½Π³ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ
Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Redis Π² ΡΠΎΠ»ΠΈ ΠΊΠ΅ΡΠΈΡΡΡΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²ΠΈΡΠ° Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ β Π½Π°Π±ΡΠΎΡΠ°Π»ΡΡ ΡΠ°ΠΊΠΎΠΉ Π²ΠΎΡ ΠΏΠΎΡΡ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Redis, ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΈ Π½Π° ΡΡΠΎ ΠΎΠ½ΠΈ Π²Π»ΠΈΡΡΡ, ΠΈ Π½Π° ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ· Π½ΠΈΡ ΡΡΠΎΠΈΡ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. ΠΠ°ΡΠ°ΡΡ, ΠΏΠΎΠΆΠ°Π»ΡΠΉ, ΡΡΠΎΠΈΡ Ρ ΡΡΠΈΠ»ΠΈΡΡ redis-benchmark. Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ°ΠΌΠΈ Redis, ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ: root@bttrm-dev-app-1:/home/admin# redis-benchmark -p 6389 -n 1000 -c 10 -k 1====== 1 ======1000 requests completed in 0.03 seconds10 parallel clients3 bytes payloadkeep alive: 198.30%
Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Redis Π² ΡΠΎΠ»ΠΈ ΠΊΠ΅ΡΠΈΡΡΡΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²ΠΈΡΠ° Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ β Π½Π°Π±ΡΠΎΡΠ°Π»ΡΡ ΡΠ°ΠΊΠΎΠΉ Π²ΠΎΡ ΠΏΠΎΡΡ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Redis, ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΈ Π½Π° ΡΡΠΎ ΠΎΠ½ΠΈ Π²Π»ΠΈΡΡΡ, ΠΈ Π½Π° ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ· Π½ΠΈΡ ΡΡΠΎΠΈΡ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. ΠΠ°ΡΠ°ΡΡ, ΠΏΠΎΠΆΠ°Π»ΡΠΉ, ΡΡΠΎΠΈΡ Ρ ΡΡΠΈΠ»ΠΈΡΡ redis-benchmark. Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ°ΠΌΠΈ Redis, ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ: root@bttrm-dev-app-1:/home/admin# redis-benchmark -p 6389 -n 1000 -c 10 -k 1====== 1 ======1000 requests completed in 0.03 seconds10 parallel clients3 bytes payloadkeep alive: 198.30%
Prometheus: ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΈ process-exporter
ΠΠ°ΡΠ°Π»ΠΈ Ρ Π½Π°Ρ Π½Π° Π±Π΅ΠΊΠ΅Π½Π΄Π΅ ΡΠ°Π·ΠΌΠ½ΠΎΠΆΠ°ΡΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΡ. ΠΡΠΎΡΠΈΠ½Π° ΡΠ΅ΠΉΡΠ°Ρ Π½Π΅ Π²Π°ΠΆΠ½Π°, ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ Π΄ΡΡΠ³ΠΎΠ΅: Π·Π°Ρ ΠΎΡΠ΅Π»ΠΎΡΡ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΏΠΎ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Π½Π° Ρ ΠΎΡΡΠ°Ρ , Π½ΠΎ, Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ β node-exporter ΡΠ°ΠΊΠΎΠ³ΠΎ Π½Π΅ ΡΠΌΠ΅Π΅Ρ: Ρ Π½Π΅Π³ΠΎ Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΡΠΈΠΊΠΈ node_procs_running ΠΈ node_procs_blocked, Π° Ρ ΠΎΡΠ΅ΡΡΡ Π²ΠΈΠ΄Π΅ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΈ Π² Sleep, ΠΈ Π² Zombie. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π²ΠΌΠ΅ΡΡΠΎ Π½Π΅Π³ΠΎ process-exporter. ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈβ¦
https://rtfm.co.ua/prometheus-poluchit-obshhee-kolichestvo-processov-na-servere-i-process-exporter/
ΠΠ°ΡΠ°Π»ΠΈ Ρ Π½Π°Ρ Π½Π° Π±Π΅ΠΊΠ΅Π½Π΄Π΅ ΡΠ°Π·ΠΌΠ½ΠΎΠΆΠ°ΡΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΡ. ΠΡΠΎΡΠΈΠ½Π° ΡΠ΅ΠΉΡΠ°Ρ Π½Π΅ Π²Π°ΠΆΠ½Π°, ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ Π΄ΡΡΠ³ΠΎΠ΅: Π·Π°Ρ ΠΎΡΠ΅Π»ΠΎΡΡ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΏΠΎ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Π½Π° Ρ ΠΎΡΡΠ°Ρ , Π½ΠΎ, Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ β node-exporter ΡΠ°ΠΊΠΎΠ³ΠΎ Π½Π΅ ΡΠΌΠ΅Π΅Ρ: Ρ Π½Π΅Π³ΠΎ Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΡΠΈΠΊΠΈ node_procs_running ΠΈ node_procs_blocked, Π° Ρ ΠΎΡΠ΅ΡΡΡ Π²ΠΈΠ΄Π΅ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΈ Π² Sleep, ΠΈ Π² Zombie. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π²ΠΌΠ΅ΡΡΠΎ Π½Π΅Π³ΠΎ process-exporter. ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈβ¦
https://rtfm.co.ua/prometheus-poluchit-obshhee-kolichestvo-processov-na-servere-i-process-exporter/
PostgreSQL: FATAL: Peer authentication failed for user βnameβ
ΠΠ΅Π±ΠΎΠ»ΡΡΠ°Ρ Π·Π°ΠΌΠ΅ΡΠΊΠ° βΠ΄Π»Ρ ΡΠ΅Π±Ρβ ΠΏΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΈ Π΄Π°ΠΌΠΏΠ°ΠΌ Π² PostgreSQL. ΠΠ΅ΡΠ΅Π΅Ρ Π°Π» ΠΊ Π½Π°ΠΌ ΠΠ‘2 Ρ Π΄ΡΡΠ³ΠΎΠ³ΠΎ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ° Ρ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΉΡΠΎΠ². ΠΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊ PostgreSQL, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΡΡΠΎΠΉ ΠΌΠ°ΡΠΈΠ½ΠΊΠ΅ β ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΎΡΠΈΠ±ΠΊΡ βFATAL: Peer authentication failed for user βnameββ. ΠΡΠΈΡΡΠΌ ΠΈ ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ β ΠΈ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎ. PostgreSQL remote login enableβ¦
https://rtfm.co.ua/postgresql-fatal-peer-authentication-failed-for-user-name/
ΠΠ΅Π±ΠΎΠ»ΡΡΠ°Ρ Π·Π°ΠΌΠ΅ΡΠΊΠ° βΠ΄Π»Ρ ΡΠ΅Π±Ρβ ΠΏΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΈ Π΄Π°ΠΌΠΏΠ°ΠΌ Π² PostgreSQL. ΠΠ΅ΡΠ΅Π΅Ρ Π°Π» ΠΊ Π½Π°ΠΌ ΠΠ‘2 Ρ Π΄ΡΡΠ³ΠΎΠ³ΠΎ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ° Ρ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΉΡΠΎΠ². ΠΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊ PostgreSQL, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΡΡΠΎΠΉ ΠΌΠ°ΡΠΈΠ½ΠΊΠ΅ β ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΎΡΠΈΠ±ΠΊΡ βFATAL: Peer authentication failed for user βnameββ. ΠΡΠΈΡΡΠΌ ΠΈ ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ β ΠΈ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎ. PostgreSQL remote login enableβ¦
https://rtfm.co.ua/postgresql-fatal-peer-authentication-failed-for-user-name/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | DevOps-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π»ΡΡΠ°ΠΈ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
PostgreSQL: FATAL: Peer authentication failed for user βnameβ
PostgreSQL remote access configuration, the "Peer authentication failed for user "name" error solution and making PostgreSQL database dump
ΠΠΎΠ΅Π·Π΄ΠΊΠ° Π½Π° Bali, Indonesia β ΡΠΎΡΠΎ
18-Π³ΠΎ ΡΠ΅Π½ΡΡΠ±ΡΡ Π²Π΅ΡΠ½ΡΠ»ΡΡ Ρ ΠΏΠΎΠ΅Π·Π΄ΠΊΠΈ Π½Π° ΠΠ°Π»ΠΈ, ΠΠ½Π΄ΠΎΠ½Π΅Π·ΠΈΡ. Π’Π°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΡΡΠΎ ΡΡΠΎ Π²ΠΎ-ΠΏΠ΅ΡΠ²ΡΡ Π±ΡΠ»Π° ΠΌΠΎΡ ΠΏΠ΅ΡΠ²Π°Ρ ΠΏΠΎΠ΅Π·Π΄ΠΊΠ° Π·Π° Π³ΡΠ°Π½ΠΈΡΡ, Π²ΠΎ-Π²ΡΠΎΡΡΡ β ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΠΎΠ»ΡΡ ΡΠ°ΠΌΠΎΠ»ΡΡΠΎΠΌ. ΠΠ°Π»ΠΈ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΡΡ. Π Π΅Π»ΠΈΠ³ΠΈΠΎΠ·Π½ΠΎΡΡΡ ΡΠ°ΠΌ Π²Π΅Π·Π΄Π΅: Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π΄ΠΎΠΌΠ΅ Π΅ΡΡΡ ΠΌΠΈΠ½ΠΈ-Ρ ΡΠ°ΠΌ Π΄Π»Ρ ΠΏΠΎΠ΄Π½ΠΎΡΠ΅Π½ΠΈΠΉ Π±ΠΎΠ³Π°ΠΌ, Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠ»Π°Π½Π° ΡΠ²ΠΎΠΈ Ρ ΡΠ°ΠΌΡ, ΠΏΠΎΠ±ΠΎΠ»ΡΡΠ΅. ΠΡ ΠΈ ΡΠ΅Π»ΡΠ΅ Ρ ΡΠ°ΠΌΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΡ. ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅ Π΄ΠΎΡΠΎΠΆΠ½ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅: ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠ°ΠΌ Π²ΡΠΎΠ΄Π΅β¦
https://rtfm.co.ua/poezdka-na-bali-indonesia-foto/
18-Π³ΠΎ ΡΠ΅Π½ΡΡΠ±ΡΡ Π²Π΅ΡΠ½ΡΠ»ΡΡ Ρ ΠΏΠΎΠ΅Π·Π΄ΠΊΠΈ Π½Π° ΠΠ°Π»ΠΈ, ΠΠ½Π΄ΠΎΠ½Π΅Π·ΠΈΡ. Π’Π°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΡΡΠΎ ΡΡΠΎ Π²ΠΎ-ΠΏΠ΅ΡΠ²ΡΡ Π±ΡΠ»Π° ΠΌΠΎΡ ΠΏΠ΅ΡΠ²Π°Ρ ΠΏΠΎΠ΅Π·Π΄ΠΊΠ° Π·Π° Π³ΡΠ°Π½ΠΈΡΡ, Π²ΠΎ-Π²ΡΠΎΡΡΡ β ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΠΎΠ»ΡΡ ΡΠ°ΠΌΠΎΠ»ΡΡΠΎΠΌ. ΠΠ°Π»ΠΈ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΡΡ. Π Π΅Π»ΠΈΠ³ΠΈΠΎΠ·Π½ΠΎΡΡΡ ΡΠ°ΠΌ Π²Π΅Π·Π΄Π΅: Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π΄ΠΎΠΌΠ΅ Π΅ΡΡΡ ΠΌΠΈΠ½ΠΈ-Ρ ΡΠ°ΠΌ Π΄Π»Ρ ΠΏΠΎΠ΄Π½ΠΎΡΠ΅Π½ΠΈΠΉ Π±ΠΎΠ³Π°ΠΌ, Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠ»Π°Π½Π° ΡΠ²ΠΎΠΈ Ρ ΡΠ°ΠΌΡ, ΠΏΠΎΠ±ΠΎΠ»ΡΡΠ΅. ΠΡ ΠΈ ΡΠ΅Π»ΡΠ΅ Ρ ΡΠ°ΠΌΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΡ. ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅ Π΄ΠΎΡΠΎΠΆΠ½ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅: ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠ°ΠΌ Π²ΡΠΎΠ΄Π΅β¦
https://rtfm.co.ua/poezdka-na-bali-indonesia-foto/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | DevOps-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π»ΡΡΠ°ΠΈ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
ΠΠΎΠ΅Π·Π΄ΠΊΠ° Π½Π° Bali, Indonesia β ΡΠΎΡΠΎ
(ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΉ, ΡΡΠ°ΡΠΈΠΊ) 17-Π³ΠΎ ΡΠ΅Π½ΡΡΠ±ΡΡ Π²Π΅ΡΠ½ΡΠ»ΡΡ ΠΈΠ· ΠΏΠΎΠ΅Π·Π΄ΠΊΠΈ Π½Π° ΠΠ°Π»ΠΈ, ΠΠ½Π΄ΠΎΠ½Π΅Π·ΠΈΡ. Π’Π°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΡΡΠΎ ΡΡΠΎ Π²ΠΎ-ΠΏΠ΅ΡΠ²ΡΡ
Π±ΡΠ»Π° ΠΌΠΎΡ ΠΏΠ΅ΡΠ²Π°Ρ ΠΏΠΎΠ΅Π·Π΄ΠΊΠ° Π·Π° Π³ΡΠ°Π½ΠΈΡΡ, Π²ΠΎ-Π²ΡΠΎΡΡΡ
- ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΠΎΠ»ΡΡ ΡΠ°ΠΌΠΎΠ»ΡΡΠΎΠΌ. ΠΠ°Π»ΠΈ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΡΡ. Π Π΅Π»ΠΈΠ³ΠΈΠΎΠ·Π½ΠΎΡΡΡ ΡΠ°ΠΌ Π²Π΅Π·Π΄Π΅: Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π΄ΠΎΠΌΠ΅ Π΅ΡΡΡβ¦
CloudFlare: Π½Π°ΡΡΡΠΎΠΉΠΊΠ° CDN Π΄Π»Ρ AWS S3
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Ρ ΠΎΡΡΠΈΠ½Π³ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ AWS S3 ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊ Π½Π΅ΠΌΡ CloudFlare CDN. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ AWS S3 ΠΊΠΎΡΠ·ΠΈΠ½Ρ Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΠΊΠΎΡΠ·ΠΈΠ½Ρ Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΡΡΠΎ ΠΈ Π΄ΠΎΠΌΠ΅Π½, Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ cdn.example.com: Π Properties Π²ΠΊΠ»ΡΡΠ°Π΅ΠΌ Ρ ΠΎΡΡΠΈΠ½Π³ ΡΠ°ΠΉΡΠ°: ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Permissions, Π² Bucket Policy Π²ΠΊΠ»ΡΡΠ°Π΅ΠΌ ΠΏΠΎΠ»Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΡΠ·ΠΈΠ½Π΅: { "Version": "2012-10-17", "Id": "MyPolicy", "Statement": [β¦
https://rtfm.co.ua/cloudflare-nastrojka-cdn-dlya-aws-s3/
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Ρ ΠΎΡΡΠΈΠ½Π³ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ AWS S3 ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊ Π½Π΅ΠΌΡ CloudFlare CDN. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ AWS S3 ΠΊΠΎΡΠ·ΠΈΠ½Ρ Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΠΊΠΎΡΠ·ΠΈΠ½Ρ Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΡΡΠΎ ΠΈ Π΄ΠΎΠΌΠ΅Π½, Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ cdn.example.com: Π Properties Π²ΠΊΠ»ΡΡΠ°Π΅ΠΌ Ρ ΠΎΡΡΠΈΠ½Π³ ΡΠ°ΠΉΡΠ°: ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Permissions, Π² Bucket Policy Π²ΠΊΠ»ΡΡΠ°Π΅ΠΌ ΠΏΠΎΠ»Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΡΠ·ΠΈΠ½Π΅: { "Version": "2012-10-17", "Id": "MyPolicy", "Statement": [β¦
https://rtfm.co.ua/cloudflare-nastrojka-cdn-dlya-aws-s3/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | DevOps-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π»ΡΡΠ°ΠΈ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
CloudFlare: Π½Π°ΡΡΡΠΎΠΉΠΊΠ° CDN Π΄Π»Ρ AWS S3
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Ρ
ΠΎΡΡΠΈΠ½Π³Π° ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° Π² AWS S3 ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ CDN ΠΎΡ CloudFlare
AWS: ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Elastic Container Registry ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΉ ΠΈΠ· Jenkins
ΠΠ°Π΄Π°ΡΠ°: ΡΠΎΠ·Π΄Π°ΡΡ AWS ECR ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΄ΠΆΠΎΠ±Ρ Π² Jenkins, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΎΠ±ΡΠ°Π·Ρ, ΠΈ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΠΈΡ Π² ΡΡΠΎΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. AWS ECR ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² ECR, ΠΆΠΌΡΠΌ Get Started, Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΈΠΌΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ: ΠΡΡΠ°Π²Π»ΡΠ΅ΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Mutable, Ρ.Π΅. ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°Π»ΠΈΡΡ ΠΎΠ±ΡΠ°Π· Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΡΠ΅Π³ΠΎΠΌ, Π΅ΡΠ»ΠΈ ΠΎΠ½ ΡΠΆΠ΅ Π΅ΡΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉβ¦
https://rtfm.co.ua/aws-sozdanie-elastic-container-registry-i-deploj-iz-jenkins/
ΠΠ°Π΄Π°ΡΠ°: ΡΠΎΠ·Π΄Π°ΡΡ AWS ECR ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΄ΠΆΠΎΠ±Ρ Π² Jenkins, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΎΠ±ΡΠ°Π·Ρ, ΠΈ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΠΈΡ Π² ΡΡΠΎΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. AWS ECR ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² ECR, ΠΆΠΌΡΠΌ Get Started, Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΈΠΌΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ: ΠΡΡΠ°Π²Π»ΡΠ΅ΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Mutable, Ρ.Π΅. ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°Π»ΠΈΡΡ ΠΎΠ±ΡΠ°Π· Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΡΠ΅Π³ΠΎΠΌ, Π΅ΡΠ»ΠΈ ΠΎΠ½ ΡΠΆΠ΅ Π΅ΡΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉβ¦
https://rtfm.co.ua/aws-sozdanie-elastic-container-registry-i-deploj-iz-jenkins/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | DevOps-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π»ΡΡΠ°ΠΈ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
AWS: ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Elastic Container Registry ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΉ ΠΈΠ· Jenkins
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ AWS Elastic Container Service
Opsgenie: ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Uptrends
Uptrends β ΠΏΡΠΎΡΡΠ°Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ»ΠΊΠ°-ΠΏΠΈΠ½Π³ΠΎΠ²Π°Π»ΠΊΠ°, Π΄Π°Π²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄Π»Ρ RTFM (ΡΠΌ. Π Π΅ΡΠΈΠ» Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅Ρ ΠΊΠ°ΠΊ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΡΠ±Π΅ΠΆ Π΄Π»Ρ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°Ρ Ρ ΡΠ°Π±ΠΎΡΠΈΠΌΠΈ Π΅Π½Π΄ΠΏΠΎΠΈΠ½ΡΠ°ΠΌΠΈ, Π° Π·Π°ΠΎΠ΄Π½ΠΎ β ΠΏΡΠΈΠΊΡΡΡΠΈΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ OpsGenie, ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅, ΡΠΌ. Prometheus: OpsGenie ΠΈ Alertmanager β ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π² ΠΏΠΎΡΡΡ/SMS/ΡΠ΅Π»Π΅ΡΠΎΠ½. ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ ΠΊΡΠ°ΠΉΠ½Π΅ ΠΏΡΠΎΡΡΠ°Ρ β OpsGenie ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎΡΡΠΎΠ²ΡΠΉ ΡΡΠΈΠΊ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉβ¦
https://rtfm.co.ua/opsgenie-integraciya-s-uptrends/
Uptrends β ΠΏΡΠΎΡΡΠ°Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ»ΠΊΠ°-ΠΏΠΈΠ½Π³ΠΎΠ²Π°Π»ΠΊΠ°, Π΄Π°Π²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄Π»Ρ RTFM (ΡΠΌ. Π Π΅ΡΠΈΠ» Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅Ρ ΠΊΠ°ΠΊ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΡΠ±Π΅ΠΆ Π΄Π»Ρ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°Ρ Ρ ΡΠ°Π±ΠΎΡΠΈΠΌΠΈ Π΅Π½Π΄ΠΏΠΎΠΈΠ½ΡΠ°ΠΌΠΈ, Π° Π·Π°ΠΎΠ΄Π½ΠΎ β ΠΏΡΠΈΠΊΡΡΡΠΈΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ OpsGenie, ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅, ΡΠΌ. Prometheus: OpsGenie ΠΈ Alertmanager β ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π² ΠΏΠΎΡΡΡ/SMS/ΡΠ΅Π»Π΅ΡΠΎΠ½. ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ ΠΊΡΠ°ΠΉΠ½Π΅ ΠΏΡΠΎΡΡΠ°Ρ β OpsGenie ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎΡΡΠΎΠ²ΡΠΉ ΡΡΠΈΠΊ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉβ¦
https://rtfm.co.ua/opsgenie-integraciya-s-uptrends/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
Opsgenie: ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Uptrends
Uptrends - ΠΏΡΠΎΡΡΠ°Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ»ΠΊΠ°-ΠΏΠΈΠ½Π³ΠΎΠ²Π°Π»ΠΊΠ°, Π΄Π°Π²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄Π»Ρ RTFM (ΡΠΌ. Π Π΅ΡΠΈΠ» Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅Ρ ΠΊΠ°ΠΊ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΡΠ±Π΅ΠΆ Π΄Π»Ρ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°Ρ
Ρ ΡΠ°Π±ΠΎΡΠΈΠΌΠΈ Π΅Π½Π΄ΠΏΠΎΠΈΠ½ΡΠ°ΠΌΠΈ, Π° Π·Π°ΠΎΠ΄Π½ΠΎ - ΠΏΡΠΈΠΊΡΡΡΠΈΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Op
Linux: ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ΅ Ρ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΎΠ² Π² systemd-journald
ΠΠΌΠ΅Π΅ΡΡΡ AWS EC2, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°ΠΉΠ» /var/log/messages Π½Π΅ΠΏΠΎΠ»Π½ΡΠΉ, ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π·Π°ΠΏΠΈΡΡ Π² Π½ΡΠΌ β ΠΎ ΡΠΎΠΌ, ΡΡΠΎ rsyslog Π±ΡΠ» ΡΠ±ΠΈΡ. ΠΠΎ Π²ΠΎΡ ΠΊΠ΅ΠΌ ΠΈ ΠΊΠ°ΠΊ β Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΠΎ. ΠΡΠ»Π° Π½Π°Π΄Π΅ΠΆΠ΄Π° ΡΠ²ΠΈΠ΄Π΅ΡΡ Π»ΠΎΠ³ΠΈ Π² journald, Π½ΠΎ β ΡΡΠΏΡΠΈΠ·: ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ journald Ρ ΡΠ°Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΠΈΡΠΈ ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠ΅: root@bttrm-stage-console:/home/admin# journalctl --list-boots0 f527010076a141c5917496c6aa03438a Tue 2019-09-24 12:13:02 EESTβTue 2019-09-24 17:48:44 EEST Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, Π½Π°Π΄ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅β¦
https://rtfm.co.ua/linux-postoyannoe-xranenie-logov-v-systemd-journald/
ΠΠΌΠ΅Π΅ΡΡΡ AWS EC2, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°ΠΉΠ» /var/log/messages Π½Π΅ΠΏΠΎΠ»Π½ΡΠΉ, ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π·Π°ΠΏΠΈΡΡ Π² Π½ΡΠΌ β ΠΎ ΡΠΎΠΌ, ΡΡΠΎ rsyslog Π±ΡΠ» ΡΠ±ΠΈΡ. ΠΠΎ Π²ΠΎΡ ΠΊΠ΅ΠΌ ΠΈ ΠΊΠ°ΠΊ β Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΠΎ. ΠΡΠ»Π° Π½Π°Π΄Π΅ΠΆΠ΄Π° ΡΠ²ΠΈΠ΄Π΅ΡΡ Π»ΠΎΠ³ΠΈ Π² journald, Π½ΠΎ β ΡΡΠΏΡΠΈΠ·: ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ journald Ρ ΡΠ°Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΠΈΡΠΈ ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠ΅: root@bttrm-stage-console:/home/admin# journalctl --list-boots0 f527010076a141c5917496c6aa03438a Tue 2019-09-24 12:13:02 EESTβTue 2019-09-24 17:48:44 EEST Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, Π½Π°Π΄ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅β¦
https://rtfm.co.ua/linux-postoyannoe-xranenie-logov-v-systemd-journald/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | DevOps-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π»ΡΡΠ°ΠΈ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
Linux: ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ΅ Ρ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΎΠ² Π² systemd-journald
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Persistent Storage Π»ΠΎΠ³ΠΎΠ² Π² journald
Jenkins: Π΄Π΅ΠΏΠ»ΠΎΠΉ Docker Compose ΠΈΠ· Ansible ΠΈ ECR Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ
Π ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ° AWS: ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Elastic Container Registry ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΉ ΠΈΠ· Jenkins, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π΄ΠΆΠΎΠ±Ρ Π΄Π»Ρ Π±ΠΈΠ»Π΄Π° Docker-ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΠΈ ΠΈΡ ΠΏΡΡΠ° Π² AWS ECR β ΡΠ΅ΠΏΠ΅ΡΡ Π½Π°Π΄ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π΄ΠΆΠΎΠ±Ρ Π² Jenkins Π΄Π»Ρ Π΄Π΅ΠΏΠ»ΠΎΡ ΠΈ Π·Π°ΠΏΡΡΠΊΠ° ΠΎΠ΄Π½ΠΎΠ³ΠΎ Docker-ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°. ΠΠ°ΠΏΡΡΠΊΠ°ΡΡ Π±ΡΠ΄Π΅ΠΌ ΡΠ΅ΡΠ΅Π· Docker Compose, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Ansible Π±ΡΠ΄Π΅Ρ Π·Π°Π΄Π°Π²Π°ΡΡ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ Π²Π΅ΡΡΠΈΡ ΠΈΠ· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Jenkins-Π΄ΠΆΠΎΠ±Ρ. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎβ¦
https://rtfm.co.ua/jenkins-deploj-docker-compose-iz-ansible-i-ecr-avtorizaciya/
Π ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ° AWS: ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Elastic Container Registry ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΉ ΠΈΠ· Jenkins, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π΄ΠΆΠΎΠ±Ρ Π΄Π»Ρ Π±ΠΈΠ»Π΄Π° Docker-ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΠΈ ΠΈΡ ΠΏΡΡΠ° Π² AWS ECR β ΡΠ΅ΠΏΠ΅ΡΡ Π½Π°Π΄ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π΄ΠΆΠΎΠ±Ρ Π² Jenkins Π΄Π»Ρ Π΄Π΅ΠΏΠ»ΠΎΡ ΠΈ Π·Π°ΠΏΡΡΠΊΠ° ΠΎΠ΄Π½ΠΎΠ³ΠΎ Docker-ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°. ΠΠ°ΠΏΡΡΠΊΠ°ΡΡ Π±ΡΠ΄Π΅ΠΌ ΡΠ΅ΡΠ΅Π· Docker Compose, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Ansible Π±ΡΠ΄Π΅Ρ Π·Π°Π΄Π°Π²Π°ΡΡ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ Π²Π΅ΡΡΠΈΡ ΠΈΠ· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Jenkins-Π΄ΠΆΠΎΠ±Ρ. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎβ¦
https://rtfm.co.ua/jenkins-deploj-docker-compose-iz-ansible-i-ecr-avtorizaciya/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | DevOps-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π»ΡΡΠ°ΠΈ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
Jenkins: Π΄Π΅ΠΏΠ»ΠΎΠΉ Docker Compose ΠΈΠ· Ansible ΠΈ ECR Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ
ΠΠ΅ΠΏΠ»ΠΎΠΉ Docker Compose ΡΠ΅ΡΠ΅Π· Ansible-ΡΠΎΠ»Ρ Π² Jenkins Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Π² AWS ECR
AWS: ΠΎΡΠΈΡΡΠΈΡΡ ΠΊΠ΅Ρ CloudFront
ΠΠΌΠ΅Π΅ΡΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° Π² AWS S3, ΠΊΠΎΡΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π·Π°Π»ΠΈΠ»ΠΈ, Π½ΠΎ CloudFront ΠΎΡΠ΄Π°ΡΡ Π΅Ρ ΡΡΠ°ΡΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ. Π§ΡΠΎ Π±Ρ ΡΠ΄Π°Π»ΠΈΡΡ Π΅Ρ ΠΈΠ· ΠΊΠ΅ΡΠ° CloudFront β Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ invalidation ΠΎΠ±ΡΠ΅ΠΊΡΠ°. Π‘ΠΎΠ·Π΄Π°ΡΡ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ· Π²Π΅Π±-ΠΏΠ°Π½Π΅Π»ΠΈ, Π»ΠΈΠ±ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ AWS CLI. Π Π²Π΅Π±-ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Π½ΡΠΆΠ½ΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΡΠΈΡ, Π΄ΠΎΠ±Π°Π²Π»Π΅ΠΌ Invalidation: Π ΡΠΈΡΡΠΈΠΌ ΠΊΠ΅Ρ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ: ΠΠΈΠ±ΠΎ β Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ invalidation Ρ ΠΏΠΎΠΌΠΎΡΡΡβ¦
https://rtfm.co.ua/aws-ochistit-kesh-cloudfront/
ΠΠΌΠ΅Π΅ΡΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° Π² AWS S3, ΠΊΠΎΡΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π·Π°Π»ΠΈΠ»ΠΈ, Π½ΠΎ CloudFront ΠΎΡΠ΄Π°ΡΡ Π΅Ρ ΡΡΠ°ΡΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ. Π§ΡΠΎ Π±Ρ ΡΠ΄Π°Π»ΠΈΡΡ Π΅Ρ ΠΈΠ· ΠΊΠ΅ΡΠ° CloudFront β Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ invalidation ΠΎΠ±ΡΠ΅ΠΊΡΠ°. Π‘ΠΎΠ·Π΄Π°ΡΡ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ· Π²Π΅Π±-ΠΏΠ°Π½Π΅Π»ΠΈ, Π»ΠΈΠ±ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ AWS CLI. Π Π²Π΅Π±-ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Π½ΡΠΆΠ½ΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΡΠΈΡ, Π΄ΠΎΠ±Π°Π²Π»Π΅ΠΌ Invalidation: Π ΡΠΈΡΡΠΈΠΌ ΠΊΠ΅Ρ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ: ΠΠΈΠ±ΠΎ β Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ invalidation Ρ ΠΏΠΎΠΌΠΎΡΡΡβ¦
https://rtfm.co.ua/aws-ochistit-kesh-cloudfront/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | DevOps-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π»ΡΡΠ°ΠΈ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
AWS: ΠΎΡΠΈΡΡΠΈΡΡ ΠΊΠ΅Ρ CloudFront
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈΠ· ΠΊΠ΅ΡΠ° Cloudfront Π΄ΠΈΡΡΡΠΈΠ±ΡΡΡΠΈΠΈ
Okta: Π½Π°ΡΡΡΠΎΠΉΠΊΠ° SSO Π΄Π»Ρ Gmail ΠΈ Slack
Okta β ΡΠ΅ΡΠ²ΠΈΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΡΡΠ΅Π΄ΠΈ ΠΏΡΠΎΡΠΈΡ ΡΡΠ»ΡΠ³Ρ Single Sign On. ΠΡΡΡ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ Π²ΡΠ΅Ρ ΡΠ·Π΅ΡΠΎΠ² Π² Okta, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠΈΡΡ ΠΈΡ Π΄ΠΎΡΡΡΠΏΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ β Π½Π΅ΡΠ΄ΠΎΠ±Π½ΠΎ. ΠΠ°Π΄Π°ΡΠ° β Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ Π² Gmail ΠΈ Slack ΡΠ΅ΡΠ΅Π· Okta. Okta Gmail app Π Π΅Π³ΠΈΡΡΡΠΈΡΡΠ΅ΠΌ Π°ΠΊΠΊΠ°ΡΠ½Ρ, ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Get started, Π² ΠΏΠΎΠ»Π΅ Use single sign on ΠΆΠΌΡΠΌ Add app: ΠΠ°Ρ ΠΎΠ΄ΠΈΠΌβ¦
https://rtfm.co.ua/okta-nastrojka-sso-dlya-gmail-i-slack/
Okta β ΡΠ΅ΡΠ²ΠΈΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΡΡΠ΅Π΄ΠΈ ΠΏΡΠΎΡΠΈΡ ΡΡΠ»ΡΠ³Ρ Single Sign On. ΠΡΡΡ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ Π²ΡΠ΅Ρ ΡΠ·Π΅ΡΠΎΠ² Π² Okta, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠΈΡΡ ΠΈΡ Π΄ΠΎΡΡΡΠΏΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ β Π½Π΅ΡΠ΄ΠΎΠ±Π½ΠΎ. ΠΠ°Π΄Π°ΡΠ° β Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ Π² Gmail ΠΈ Slack ΡΠ΅ΡΠ΅Π· Okta. Okta Gmail app Π Π΅Π³ΠΈΡΡΡΠΈΡΡΠ΅ΠΌ Π°ΠΊΠΊΠ°ΡΠ½Ρ, ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Get started, Π² ΠΏΠΎΠ»Π΅ Use single sign on ΠΆΠΌΡΠΌ Add app: ΠΠ°Ρ ΠΎΠ΄ΠΈΠΌβ¦
https://rtfm.co.ua/okta-nastrojka-sso-dlya-gmail-i-slack/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
Okta: Π½Π°ΡΡΡΠΎΠΉΠΊΠ° SSO Π΄Π»Ρ Gmail ΠΈ Slack
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ Π² Gmail ΠΈ Slack ΡΠ΅ΡΠ΅Π· Okta SSO
Okta: Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ²ΠΎΠ΅Π³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π°
ΠΠ»Ρ Okta ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ Π΄ΠΎΠΌΠ΅Π½, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ. ΠΠ΄ΠΈΠ½ΡΠ²Π΅Π½Π½ΡΠΉ Π½ΡΠ°Π½Ρ β ΡΡΠΎ ΡΠΎ, ΡΡΠΎ ΡΠ°ΠΌ ΠΏΠ»Π°Π³ΠΈΠ½ Okta Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Ρ custom domain, ΡΠΌ. Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ. ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° custom domain ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Settings > Customization: ΠΡΠΎΠ»ΠΈΡΡΡΠ²Π°Π΅ΠΌ Π²Π½ΠΈΠ·, Π΄ΠΎ Custom URL Domain: ΠΠ»ΠΈΠΊΠ°Π΅ΠΌ Get Started, ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ Π΄ΠΎΠΌΠ΅Π½, Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ okta.example.com: Oktaβ¦
https://rtfm.co.ua/okta-nastrojka-svoego-domena/
ΠΠ»Ρ Okta ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ Π΄ΠΎΠΌΠ΅Π½, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ. ΠΠ΄ΠΈΠ½ΡΠ²Π΅Π½Π½ΡΠΉ Π½ΡΠ°Π½Ρ β ΡΡΠΎ ΡΠΎ, ΡΡΠΎ ΡΠ°ΠΌ ΠΏΠ»Π°Π³ΠΈΠ½ Okta Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Ρ custom domain, ΡΠΌ. Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ. ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° custom domain ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Settings > Customization: ΠΡΠΎΠ»ΠΈΡΡΡΠ²Π°Π΅ΠΌ Π²Π½ΠΈΠ·, Π΄ΠΎ Custom URL Domain: ΠΠ»ΠΈΠΊΠ°Π΅ΠΌ Get Started, ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ Π΄ΠΎΠΌΠ΅Π½, Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ okta.example.com: Oktaβ¦
https://rtfm.co.ua/okta-nastrojka-svoego-domena/
RTFM: Linux, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
Okta: Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ²ΠΎΠ΅Π³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π°
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π° ΠΈ SSL Π΄Π»Ρ Okta