Reddit DevOps
268 subscribers
30.9K links
Reddit DevOps. #devops
Thanks @reddit2telegram and @r_channels
Download Telegram
OneUptime: Open Source StatusPage.io alternative that you can self-host.

I'm Simon, I'm the OSS contributor to OneUptime (https://github.com/oneuptime/oneuptime) . It's an open-source alternative to StausPage.io. We're working on adding APM functionalities to it to make it closer to an open-source alternative to data dog. It's 100% free and you can self-host it on your VM / server.

Let me know what you think! Happy to hear early feedback and make the tool better.

https://redd.it/116q7wm
@r_devops
Best way to get into Devops

I'm a Full stack engineer, looking to transition into Devops. I took a look at roadmap.sh/devops, But its seems overwhelming as there a lot of stuffs to learn. is there any fast, clear pathway? also for those that transitioned into devops, could you share any material, course you took.

https://redd.it/116msim
@r_devops
Notebook and Metrics Data

I am trying to gather some insights from the community on a use case.
If you could have IPython notebooks to access your Prometheus or OpenTelemetry Metrics. What would you use it for?

https://redd.it/116u6u2
@r_devops
What features do you wish programming languages had that would make DevOps so much better?

I'm tinkering with a language and want to make DevOps easier.

https://redd.it/116u6i7
@r_devops
How to pass dynamic values into Kustomize?

I would like to pass dynamic values, such as a git tag (which I need to retrieve during buildtime), as a label.

Kustomize seems very limited when it comes to passing values dynaimcally. I can't create an overlay, since I don't know the git tag beforehand

https://redd.it/116hzy9
@r_devops
DotNet SonarQube Scanning Code coverage checking

Hello Team,

Anyone here have tried to setup code coverage using dotnet sonarqube scanning?

Can you please share how to display it on sonarqube dashboard? What are the needs to configure? Thank you

https://redd.it/116xe9f
@r_devops
Nexus startup error (docker container) - authentication password: must not be blank

Hi All,

Our Nexus (Nexus3 3.38.0 - community edition, docker container) container is currently down and not able to start gracefully, we use docker to run nexus as a container and when we check the container logs, we get this error:

javax.validation.constraintViolationExceiption: attributeshttpclient.authentication.password: must not be blank

We got this error logs after shutting down nexus and restarting docker service.

we suspect it might be due to one of the proxy repository password field that became blank (which we usually update using curl by a jenkins job)

Can you please suggest if:

There is any workaround for this issue
Since we can’t open into nexus portal, can we fix this using backend / config files?
Is there any way to disable / delete docker proxy repository using nexus data / config files?
Any other suggestion which might help us here

https://redd.it/116wqrv
@r_devops
Which are the best Apache Pulsar Support Vendors?

I have this question on the DevOps Stack Exchange as well: https://devops.stackexchange.com/posts/17459/edit

Apache Pulsar will, in all likelihood, become a market leader for message brokering. Apache Pulsar itself has over a million lines of code, and so the average, small team, will probably require a support vendor to help manage production incidents.

I'm evaluating vendors that provide commercial support for Apache Pulsar. I wanted to start a post on the pros and cons of some of the top competitors.

Below is a list of vendors I've heard or confirmed have some kind of messaging broker support system utilizing Apache Pulsar. I've marked ones that I'm uncertain have any kind of meaningful Apache Pulsar based services with a ??

1. StreamNative
2. DataStax
3. Lightbend??
4. Cloudera??
5. Solace??
6. TIBCO
7. AWS??
8. Pandio
9. Datell

Anyone have experience with any of these? Can anyone confirm if the questionable items do or do not have Apache Pulsar services?

# Rough Research
## Stream Native
StreamNative provides enterprise-grade support for
Apache Pulsar, including consulting, training, and managed services.

## DataStax
DataStax offers a managed version of Apache Pulsar called
Astra Streaming, which provides a fully managed and scalable messaging
and event streaming platform.

## Lightbend??
Lightbend provides commercial support for Apache Pulsar,
including consulting, training, and development services.

## Cloudera??
Cloudera offers a managed version of Apache Pulsar as part
of its Cloudera DataFlow product, which provides a real-time data
streaming and management platform.

## Solace??
Solace provides a Pulsar adapter that allows Solace PubSub+
messaging to interoperate with Apache Pulsar messaging, enabling hybrid cloud and multi-cloud messaging.

https://redd.it/116ie51
@r_devops
Introducing loxilb: eBPF based cloud-native load-balancer

Glad to introduce loxilb : https://github.com/loxilb-io/loxilb

loxilb is a modern open source software load-balancer for cloud-native workloads. It is designed to power services/apps deployed on-premise, edge and public-cloud Kubernetes clusters as a service LB, but it should work equally well as a standalone LB. Its purpose-built eBPF engine gives it various advantages such as great performance, scalability and the flexibility to support tons of services ranging from simple tcp/udp/http(s) to exotic ones like sctp/nat66/nat64.There are also tons of visibility and configuration options built-in as well.

Hope the community finds it helpful and constructive !!

https://redd.it/1170hgq
@r_devops
Backstage is not user-friendly. I want something better.

I'm a DevOps engineer, if that's still a thing. Because apparently nowadays, "DevOps is dead; long live platform engineering".

Me and my team/company (start-up, not too big, not too small) use Backstage (backstage.io), which brings some value, but I don't like it.

I don't like it for many reasons, all solid (at least to me; hang tight, cuz I'm about to ramble):

​

\## 1. The installation, especially the plugins, requires changing code, and I'm not a JS/TS/Node guy.

I can still get by with the help of the official doc (and, more importantly, my hacky tinkering abilities), but I think it's what I'd call over-engineering: why would I want to change a piece of javascript just to get my CI pipeline results?

Or is the thing I just edited not javascript at all, but in fact, typescript?

Or is it actually react?

Or is it something else called JSX?

I've no idea what it is, and that's precisely the point: I don't care and don't want to care.

I want a software catalog/developer portal (or whatever it is) that's easier, much, much easier to use.

Imagine this: you go to a Michelin-star restaurant, and the cook brings you some raw fish, parsley, and stuff, then you need to assemble them all by yourself before you can eat them. No, thanks, I don't want that. If I knew how to cook, I'd cook at home. I'm paying you to cook it for me; that's why I come here in the first place.

So, why on earth would I want to install a so-called engineering platform (or is it called a developer portal?) and then have to do some assembly myself? If me and my company had that time and resources in the first place, we'd have created our own platform from the ground up, wouldn't we?

​

\## 2. The documentation sucks, so hard.

It took me hours to get the Argo CD and Kubernetes plugin to (barely) work. The official doc didn't work (maybe I didn't do it right?), and Google search results showed some other tutorials and configs contradicting it. I usually think of myself as intelligent, but this baffles me so hard that I even begin to question that maybe, after all, I'm not as smart as I thought I'd be.

I mean, is it really so much trouble to give a working config sample, in the official doc, for quickly integrating Backstage and Kubernetes? How about the simplest config snippet for even a local Minikube cluster? Do I really need to Google this and Medium that to make it, again, barely work?

And what pisses me off is that the Kubernetes plugin is not even a third-party plugin, which would have made me less crossed. It's an in-house plugin, born and raised by Spotify. How about leading by some quality examples? I mean, at the moment, I don't have a much better choice, but if I did, I'd switch immediately.

​

\## 3. After we got everything up and running, we found that we rarely go back to Backstage. We use it mainly to create repositories because you can choose a template and let it take over the job afterward. Except that, we find it not so easy to use that we simply don't use it quite often.

And the templates: we have to create and maintain them ourselves. I don't think every company and team has the manpower to create and maintain templates. Many times, we created a repo out of a template, only to find out the CI pipelines failed immediately because the template was out of date.

​

\---

​

OK, enough complaints; I'm still complaining because it more or less still adds some value to me. Otherwise, I'd ditch it in the blink of an eye.

But I what to propose something better: a different developer portal (or maybe it's called a software catalog, or an engineering platform, I don't know, and that's not the point), which:

still does what a software catalog does: a unified view of all your services, but easy to install: click a button, and that's it;
has no configuration, no customization, no plugins; only supports GitHub Actions, GitLab CI, and a few popular choices (like Argo CD for deployment and Kubernetes for running the
Backstage is not user-friendly. I want something better.

I'm a DevOps engineer, if that's still a thing. Because apparently nowadays, "DevOps is dead; long live platform engineering".

Me and my team/company (start-up, not too big, not too small) use Backstage ([backstage.io](https://backstage.io)), which brings some value, but I don't like it.

I don't like it for many reasons, all solid (at least to me; hang tight, cuz I'm about to ramble):

​

\## 1. The installation, especially the plugins, requires changing code, and I'm not a JS/TS/Node guy.

I can still get by with the help of the official doc (and, more importantly, my hacky tinkering abilities), but I think it's what I'd call over-engineering: why would I want to change a piece of javascript just to get my CI pipeline results?

Or is the thing I just edited not javascript at all, but in fact, typescript?

Or is it actually react?

Or is it something else called JSX?

I've no idea what it is, and that's precisely the point: I don't care and don't want to care.

I want a software catalog/developer portal (or whatever it is) that's easier, much, much easier to use.

Imagine this: you go to a Michelin-star restaurant, and the cook brings you some raw fish, parsley, and stuff, then you need to assemble them all by yourself before you can eat them. No, thanks, I don't want that. If I knew how to cook, I'd cook at home. I'm paying you to cook it for me; that's why I come here in the first place.

So, why on earth would I want to install a so-called engineering platform (or is it called a developer portal?) and then have to do some assembly myself? If me and my company had that time and resources in the first place, we'd have created our own platform from the ground up, wouldn't we?

​

\## 2. The documentation sucks, so hard.

It took me hours to get the Argo CD and Kubernetes plugin to (barely) work. The official doc didn't work (maybe I didn't do it right?), and Google search results showed some other tutorials and configs contradicting it. I usually think of myself as intelligent, but this baffles me so hard that I even begin to question that maybe, after all, I'm not as smart as I thought I'd be.

I mean, is it really so much trouble to give a working config sample, in the official doc, for quickly integrating Backstage and Kubernetes? How about the simplest config snippet for even a local Minikube cluster? Do I really need to Google this and Medium that to make it, again, barely work?

And what pisses me off is that the Kubernetes plugin is not even a third-party plugin, which would have made me less crossed. It's an in-house plugin, born and raised by Spotify. How about leading by some quality examples? I mean, at the moment, I don't have a much better choice, but if I did, I'd switch immediately.

​

\## 3. After we got everything up and running, we found that we rarely go back to Backstage. We use it mainly to create repositories because you can choose a template and let it take over the job afterward. Except that, we find it not so easy to use that we simply don't use it quite often.

And the templates: we have to create and maintain them ourselves. I don't think every company and team has the manpower to create and maintain templates. Many times, we created a repo out of a template, only to find out the CI pipelines failed immediately because the template was out of date.

​

\---

​

OK, enough complaints; I'm still complaining because it more or less still adds some value to me. Otherwise, I'd ditch it in the blink of an eye.

But I what to propose something better: a different developer portal (or maybe it's called a software catalog, or an engineering platform, I don't know, and that's not the point), which:

* still does what a software catalog does: a unified view of all your services, but easy to install: click a button, and that's it;
* has no configuration, no customization, no plugins; only supports GitHub Actions, GitLab CI, and a few popular choices (like Argo CD for deployment and Kubernetes for running the
services);
* has much better documentation (or no doc at all, because how often do you read the user guide of a nicely designed product, say, iPhone?);
* provides many templates out of the box so that you don't have to create them by yourself;
* and has a bunch of quality-of-life improvements (like when you click the link to the CI/CD pipelines, there's no extra sign-on required; showing results of your pipelines and K8s resources so that you don't have to jump to your CI/CD/K8s dashboard; maybe even showing stuff from Jira, or Kubernetes pod logs, etc.)

​

The question is, would you use it?

https://redd.it/1171it7
@r_devops
Has anyone used KodeKloud Engineer?

I was looking at the KodeKloud Engineer (https://kodekloud-engineer.com) and would like to know if anyone here has made it to provide a review.

https://redd.it/1173dm5
@r_devops
is it possible to use new repo to trigger argocd?

I am just setting up a POC to try and work out the best way to do this.

I have an org set up in GitHub, each new repo is created programmatically. Each repo will use the same image but will have its own unique settings file that will be mounted and some custom files that will also be included.

The idea would be that argocd watches for new repo, automatically adds the application and deploys it onto its own namespace in k8s with files mounted.

I'm just wondering the best way to achieve this, I can't seem to find any argocd documentation that covers this scenario. Initial thought was to create a GitHub app that would trigger on the creation of each new repo and use the argocd API but I was wondering if instead of this I could use events and workflows within argocd?

Cheers

https://redd.it/1174lo7
@r_devops
How do you deploy from dev into production (Helm/Kustomize, ArgoCD)?

Anyone mind sharing how the process of CI/CD looks like given the tools mentioned above (still undecided between Helm and Kustomize)?

I'm especially interested on how to deploy from dev into staging and prod? Assuming we make use of Helm (nobody else needs the chart, just us), does it make sense to build and push a Helm chart into a remote repository and eventually install the Helm chart on the dev and staging environments? Once tests are fine, this should allow us to simply reference the pushed Helm chart for a deployment into the prod environment (or is this a bad approach)?

https://redd.it/1175fl1
@r_devops
Any global generic "pull through cache" for container images on kubernetes?

I've searched the internet and found solutions that are based on the fact that Kubernetes nodes run the docker daemon (since 1.24 they don't) and it's only for Dockerhub registry itself. So they ask you to run a local mirror and configure the Kubernetes nodes to use a local registry as a pull through proxy. However, what i'm looking for is to add a layer on Kubernetes that will "fool" pods that go outside the cluster to go first through this mirror proxy that will cache those images they are requesting if they don't exist. This can make pulling much faster and reduce rate limiting to docker.io and cache images across regions from any other registry.

Did anyone implement this solution? any ideas? can the problem I'm trying to solve be solved in another way?

EDIT: MutatingWebhook that will override all pod image definitions into Harbor proxies may seem like a viable solution but it's a bit of over-engineering

https://redd.it/1176yk2
@r_devops
Cgroups - Deep Dive into Resource Management in Kubernetes

Hi /r/DevOps,

Today I published an article titled "Cgroups - Deep Dive into Resource Management in Kubernetes", where I explain how resource allocation works in Kubernetes in-depth - from resource requests/limits in YAML PodSpec all the way to systemd and cgroups filesystem.

Here's the link: https://betterprogramming.pub/cgroups-deep-dive-into-resource-management-in-kubernetes-5970e23620f2

Feedback is very much appreciated!

https://redd.it/11779rq
@r_devops
Spot.io ? Rolls don't work at all

Did anyone of you fellow gentlemen faced such issue :D ?

I have a simple cluster with one node-group that has two nodes :D

I'm asking Spot.io to Roll by 50% batch, so two batches of nodes.

There is not really much running in the cluster.

And best I can get is a debug info that:

"Unable to find a matching configuration for the new node"

And nothing happens. Is their service just really bad or I have no luck ?

https://redd.it/117car4
@r_devops
Best editor for YAML file

I use Linux and I want know what is best editor for edit and fix common problem like formating and iden in linux?

I want this editor can fix commom problem in yaml files and I do not want use online yaml checker site for check my yaml file.

https://redd.it/1176oug
@r_devops
Discussion: Postman Restricts Local-Only Collection Runner

Postman has just announced heavy restrictions on usage of the local-only Collection Runner in their application. There is already discussion blowing up in their forums about both restricting unlimited use of local functionality to their enterprise tier and the short timeframe of the change.

If you have a Basic subscription, you can only use Collection Runner 25 times per month. If you have Professional, you get 250 runs. If you have Enterprise, you get unlimited. This has nothing to do with Collections run on their cloud resources, which are billed separately. This is specifically for collection runs on your own PC against your own servers.

I know this is likely to impact my company as we have Basic licensing and use Collection Runner heavily for regression testing and other automated flows when testing new functionality. It's been a significant part of our work to shift left. What impact will this have on your company? Will you upgrade licensing? Work around it with Newman? Will you find a different application and migrate?

https://redd.it/117g0co
@r_devops
Got my first job offer for a new grad role - should I negotiate salary?

Hey everyone,

I got an email from the recruiter that she will be extending me a formal offer by tomorrow. We have not discussed salary or anything like that yet. Should I negotiate the salary after I get sent the formal offer, even if it’s my first job out of college, and if it’s a new grad role?

Thank you

https://redd.it/117gz6s
@r_devops