Open ebocchi opened 2 years ago
Hmm , well we can do UDP ingress with Traefik: https://doc.traefik.io/traefik/routing/providers/kubernetes-crd/#kind-ingressrouteudp But due to the nature of UDP, the only way to route incoming traffic to different backing services is by listening on a different entrypoint, meaning that each one would be on a different port. https://doc.traefik.io/traefik/routing/routers/#configuring-udp-routers
However apparently the WLCG SNMP monitoring is hardcoded to only use port 3401 so it would not be able to access multiple squids in the same cluster, only the one on port 3401. The alternative would be to have all squids loadbalanced behind port 3401, in which case the monitoring would have a random mix of data from all squids.
So unless the WLCG monitoring is fixed there is no way to monitor multiple squids on the same k8s cluster.
The other problem with this is that I was originally assuming we would use a statefulSet instead of a deployment, for persistent cache storage, but as discussed here persistent storage isn't actually that useful.
However without a statefulset there is no way to individually reference each pod via a separate service. Not sure converting from a deployment to a statefulset is worth it though if the WLCG monitoring still would not work anyway.
Considering this may not be feasible at the moment @ebocchi shall we go for a new release after https://github.com/sciencebox/charts/pull/73 ?
Update: will also need something for https://github.com/sciencebox/charts/issues/77
Both #73 and #77 got merged. Thanks @rptaylor! I am tagging a new version of the chart now: 0.1.3
Great thanks a lot @ebocchi ! I should be able to do a production deployment now.
It could be done with additional LB IPs and Loadbalancer-type Services, not using Ingress, just like https://gitlab.cern.ch/eos/eos-charts/-/merge_requests/45 , but only if frontier-squid was changed to a statefulset. Probably not worth it for the moment.
I can give this a try.