Mirki DevOpsi pytanko - dev team ma pipeline ktory stawia apke na k8s i chca dodac do tego 3rd party load balancer/ WAF. Teraz pytanko, czy ten WAF i Ingress powinien byc w tym samym pipeline co apka czy oddzielnym? W sensie, 1 pipeline ktory stawia apke, deployuje do k8s, testuje a potem stawia ten ingress i dodaje WAF, czy moze oddzielny pipeline dla ingress i WAF? #devops #cicd #jenkins
@ksos: loadbalancer np. metallb i ingress-nginx wdrażasz przed aplikacjami, aplikację najlepiej wdrażać przy pomocy helm chart gdzie określasz jak ma być skonfigurowany ingress tz. wystawiana aplikacja na świat
@llluuu: @ksos: w sumie to dlaczego tak? A jak ktoś chce mniejsza przerwę a ma większe zmiany na LB i woli zrobić przepięcie A/B dwóch wersji usługi? :) Wtedy będzie kanapka, apka, lb, apka.
Ja bym dał w dwóch, ale spiął je kolejnym wysokopoziomowym. Chyba że to proste usługi i mało tego to w jednym i fajrant.
@ksos: To zależy. Ja mam tak, że mam kilka microserwisów, każdy osobne pipeline. Do tego mam konfigurację ingressa i osobne pipeline. Robię tak, bo chcę mieć to w jednym miejscu, bo np. kilka ingresów konfiguruje jeden load balancer w AWS.
EDIT: Jednakże jakbym miał nginx-ingress controllera to bym sobie konfiguracje ingressa trzymał razem z apką.
@ksos: ja to robie na osobnej warstwie, mam przewaznie infra as a code (tu networki/sqlki/aks/gke etc w terraformie) potem mam env as a code (gdzie mam w terraformie trzymanie stanu yamli/czartów dla aksów i inne konfigi chociazby schema bazek) no i deployment appek. polecam takie rozdzielenie bo nie ma bajzlu i latwiej potem developerom zrobic jakis trigger na podstawie branczy/contentu
W sensie, 1 pipeline ktory stawia apke, deployuje do k8s, testuje a potem stawia ten ingress i dodaje WAF, czy moze oddzielny pipeline dla ingress i WAF?
#devops #cicd #jenkins
Ja bym dał w dwóch, ale spiął je kolejnym wysokopoziomowym. Chyba że to proste usługi i mało tego to w jednym i fajrant.
Ja mam tak, że mam kilka microserwisów, każdy osobne pipeline. Do tego mam konfigurację ingressa i osobne pipeline. Robię tak, bo chcę mieć to w jednym miejscu, bo np. kilka ingresów konfiguruje jeden load balancer w AWS.
EDIT: Jednakże jakbym miał nginx-ingress controllera to bym sobie konfiguracje ingressa trzymał razem z apką.