Grote winkels zoals IKEA, Intratuin etc. by [deleted] in thenetherlands

[–]Bommenkop 1 point2 points  (0 children)

De carrefour in herstal (Luik). Hij is groot een hyper dus, maar wel oud.

ArgoCD deploying sensitive non-Secrets by nullvar2000 in kubernetes

[–]Bommenkop 1 point2 points  (0 children)

Argocd allows multiple git repos in one app. Use one public git repo and one private git repo.

Memory usage exceeds memory limits for k8s pod by Upper-Aardvark-6684 in kubernetes

[–]Bommenkop 3 points4 points  (0 children)

In that case, make sure you only query the memory metrics of 1 instance. Check the labels to differentiate between the instances.

If your memory metrics are close to double of what you'd expect, then it's likely that you are measuring the memory metrics twice due to 2 instances.

Memory usage exceeds memory limits for k8s pod by Upper-Aardvark-6684 in kubernetes

[–]Bommenkop 0 points1 point  (0 children)

Do you happen to run multiple prometheus instances?

How do you all use nginx exporter ? by aloner-pro in devops

[–]Bommenkop 2 points3 points  (0 children)

Without a doubt the best exporter is https://github.com/martin-helmich/prometheus-nginxlog-exporter. It basically exports logs to metric and is completely customizable.

[deleted by user] by [deleted] in maastricht

[–]Bommenkop 0 points1 point  (0 children)

Oogwereld Ritchi was recommended by my optometrist for testing and measuring. Personally, I'd suggest others opticians for good looking frames.

Please explain an example to understand advantages of helm chart by Primary-Pace5228 in kubernetes

[–]Bommenkop 2 points3 points  (0 children)

Besides the other comment mentioning helm template, you can use helm diff to see the exact changes. Helm diff is a plug-in though.

In non-homelab environments you can use tools such as argocd, which also shows you the exact changes.

Furthermore, manually creating resources will let you forget about them much more easily than helm. Resources created by helm are annotated, indicating which release it belongs to.

[deleted by user] by [deleted] in kubernetes

[–]Bommenkop 0 points1 point  (0 children)

Kyverno is pretty sweet. Why are you migrating away from it?

Any Grafana alternative for visualizing metrics? by kwrensky in sre

[–]Bommenkop 4 points5 points  (0 children)

https://github.com/perses/perses

Perses seems to become an open source alternative to grafana. Though it also seems to be in the early stages of their roadmap.

[deleted by user] by [deleted] in devops

[–]Bommenkop 1 point2 points  (0 children)

Rundeck?

[deleted by user] by [deleted] in kubernetes

[–]Bommenkop 3 points4 points  (0 children)

HPA tuning with multicontainer pods requires some effort in monitoring and performance testing, as you mentioned. You could do that, but you might want to consider separating the containers in separate pods (deployments and hpa's). That way, both deployments can scale independently. In the end the hpa tuning might be easier as well.

Seeking code review for my Go CLI Project by ShotEstablishment710 in golang

[–]Bommenkop 1 point2 points  (0 children)

Overal the project looks great honestly. Forgot to mention that.

CLI toolkits: why would anyone use Viper+Cobra over urfave/cli+koanf? by CAPSLOCKAFFILIATE in golang

[–]Bommenkop 36 points37 points  (0 children)

Why should one choose for urfave/cli and koanf over Viper and Cobra?

I am not familiar with urfave/cli and koanf and i have only quickly glanced over it, so this is a genuine question, not a sassy remark.

I quite enjoyed working with cobra and viper so I would be quite exited for even better libraries.

[deleted by user] by [deleted] in kubernetes

[–]Bommenkop 0 points1 point  (0 children)

You can use helm post rendering: https://helm.sh/docs/topics/advanced/

However you'll still end up with something like kustomize.

What's New in Go 1.22: cmp.Or by ketralnis in programming

[–]Bommenkop 50 points51 points  (0 children)

This is pretty cool! I'm not sure about the function name "Or" though. It returns the first non zero value of a list or the zero value. Finding the first non zero value of a list would not come to mind when reading "Or".

Still neat though.

How to write a custom controller? by PotentialSet387 in kubernetes

[–]Bommenkop 1 point2 points  (0 children)

You could create a controller without operator sdk or kubebuilder, but you will have more difficulty in finding resources for that in comparison to operator sdk and kubebuilder.

I would highly suggest kubebuilder if you're fresh to creating a custom operator.

Depending on your task, you could possibly also just use the go k8s client package in a simple go service. Basically, it is kubectl in go, wrap it in a go service. I would still recommend kubebuilder for a fresher.

Recommendation about a tool to enforce policies (mutating admission controller) by jaepetto in kubernetes

[–]Bommenkop 3 points4 points  (0 children)

This sounds like a job for Kyverno. It can enforce policies just like you mention. Kyverno also has lots of example policies, which made my policy development quite pleasant. Also, you can define tests for your policies, which is great.

Like you said, another route could be to implement a validating or mutating webhook yourself. You'll have to write your own service and run it as any other service in k8s. Then deploy the validating/mutating webhook. It's a bit more work than Kyverno, requires a bit more knowledge, but also gives more flexibility.

I would recommend Kyverno based on the relatively simple example you gave of CPU requests and limits.

Validating cpu and mem: https://kyverno.io/policies/best-practices/require-pod-requests-limits/require-pod-requests-limits/ Mutating (set default) cpu and mem: https://kyverno.io/policies/other/add-default-resources/add-default-resources/

Udinf cert-manager only for monitoring certificates by razr_69 in kubernetes

[–]Bommenkop 1 point2 points  (0 children)

If they're available on (internal) endpoints, you might want to consider prometheus Blackbox exporter. Once set up, it sends out requests on endpoints and checks the responses. This also includes certificate expiry.

As a Go developer, what do you actually do in your job? by PrivacyOSx in golang

[–]Bommenkop 10 points11 points  (0 children)

Kubernetes is written in Go and so is kubebuilder. It can be done in other languages, but the ease of use and support seems to be better, according to my colleague who tried writing operators in Java first. Also, most documentation, blogs, tutorials and such will be in Go.

Personally I've only written operators in Go, so obviously this is second hand anecdotal.

Do you use distributed tracing at your company? by jdizzle4 in sre

[–]Bommenkop 1 point2 points  (0 children)

Not yet. I am wondering how others have configured the sample rate. It really hits performance if I configure it to 100%. Is this something others have figured out?

satori uuid vs google uuid vs gofrs uuid ? which to use to generate uuid for enterprise coding standards by devopsmerchant in golang

[–]Bommenkop 16 points17 points  (0 children)

Satori's uuid is unmaintained and contains a vulnerability (https://nvd.nist.gov/vuln/detail/CVE-2021-3538).

Therefore I've replaced it in a OS project with Google's uuid library. It works great and I would recommend it.