Reddit DevOps
270 subscribers
5 photos
31K links
Reddit DevOps. #devops
Thanks @reddit2telegram and @r_channels
Download Telegram
How to sell containers over VMs to non technical people?

So I work in a team that primarily supports a line of business that does financial modeling. Generally its desktop application support with some SQL server jobs but they just started experimenting doing production with python.

So they came to us asking for a python development environment. Their idea is that we should stand up some windows EC2s that they can remote into and work. One for everyone or one per developer, that is unsure. Of course we will have to keep these machines patched and scaled etc etc.

They started hinting at wanting to run python a while ago and I've developed java before at this same company so I'm used to the standards and practices we already have.. I'm familiar with the path of least resistance to production. I say this because our security advisors are always present and for me using pre-approved architecture just makes things easier.

So I had time to write a pipeline that uses buildpacks to build and push their code and images to eventually be deployed on a shared EKS that everyone uses already. This has been running and works well already for a few small projects. One namespace per non production env with another cluster used for production. Istio in place. Totally legit and all managed by someone else.

I've explained the concept of containers multiple times and essentially have abstracted away everything about building and running their code.. they have logs in Splunk. All they need to know is git, one ssh-keygen command and to structure their repo in a certain way... Maybe how to get to Jenkins and look at build logs.. They can't seem to grasp the concept at a management level although I've had success with the actual developers! They themselves are still afraid of docker. But they can git push and keep their commit history relatively clean. They open pull requests even.

If their bosses whine enough they will eventually get their VMs because they've got pull and they will also be paying for them... Doesn't mean we shouldn't be pushing for a better solution that won't give us more support work

https://redd.it/1enkm1z
@r_devops
Running sonarQube Server on Azure Container instance

I've successfully deployed SonarQube on an Azure Container Instance (ACI) and can access it via Port 9000 with a public FQDN. I created a GitHub app, generated a token from SonarQube, and integrated them. Despite granting all necessary permissions to the GitHub app, when I try to import a project from GitHub in SonarQube, I'm redirected to a page showing "You're not authorized to access this page. Please contact the administrator.", and I can't figure out why.
note that the github App is from a personal account and the repo is a private repo owned by the same account .
Ran another container locally to be able to better debug , still the the same page occurs but at least I could see a warning on the console :
```
2024-08-09 00:28:11 2024.08.08 21:28:11 WARN web[\][o.s.a.c.GenericApplicationHttpClient\] GET response did not have expected HTTP code (was 404): {"message":"Integration not found","documentation_url":"https://docs.github.com/rest","status":"404"}
```
but I guess that's only a warning

https://redd.it/1enhixu
@r_devops
How do devops team do cloud provisioning?

Hi everyone, just looking to learn from the community how devops team do cloud provisioning/access management for engg teams. Some questions i had:

* do you provision using IaC like Terraform or does your company use an IGA to do this?
* how much work is it creating workflows, managing, approving permissions around provisioning/deprovisioning?
* any other insights you can share would be so helpful.

Many thanks in advance.

https://redd.it/1eno522
@r_devops
Job Hiring Senior Web Developer

Hi, we have listed one more Web Developer job on our platform so if you are interested in Senior Web Developer job kindly check the below link



Role - Senior Web Developer (Remote, Contract Basis)



Apply - https://devloprr.com/jobs#233

https://redd.it/1enqt2b
@r_devops
What would you expect from a Devops Engineer at 1, 2 & 3 Years of Experience?

Fully aware that Devops is not a junior role. However, the company I work for have hired a bunch of juniors with the hope to train them up.
Everyone hired has very small computer experiences. Perhaps a bit of coding, simple navigation around a Linux terminal etc.
The first three months was getting introduced to simple networking and AWS.

What would expect from someone at this level after their first year of experience? Able to handle simple tasks under guidance, expect them to read SOWs and complete tasks without much hand holding, etc

And what about 2 years and 3 years?

https://redd.it/1enu12v
@r_devops
New Ultra Alarm's feature: Wake up call

Hey everyone!

TL;DR: Introducing the new Wake Up Call feature in Ultra Alarm! Never miss an alarm again, even if your phone reboots or updates. It's free and currently in beta, available in the US, Korea, Canada, Mexico, Brazil, and India. Feedback welcome!

I'm excited to tell you about the release of our new Wake-Up Call feature for Ultra Alarm! Never miss an alarm again, even if your phone reboots, updates, or the alarm app crashes. It’s free and currently available in the US, Korea, Canada, Mexico, Brazil, and India.


This is just the beta version, and we need your feedback to make it even better. Your feedback will help us develop this feature further.


This is one of the reasons why we call our app “Ultra Alarm,” because we introduce features that reinvent the alarm clock as you know it. And many more great features are coming soon. Please tell your family and friends to try it and let us know how we can improve this app to make your life easier.


Google Play Store: https://play.google.com/store/apps/details?id=com.itaimi.moonshot.alarm


Note: You can send me an email to request the Wake-Up Call feature in your country at [email protected].

https://redd.it/1enulm7
@r_devops
Seeking Advice on Integrating AWS into a C++/Qt Application for Cross-Device Deployment

Hi everyone,

I'm currently developing an application in C++/Qt for detecting certain objects. Recently, we needed to integrate AWS support into our project. We managed to do so on a specific device by building AWS directly on that machine. Everything works perfectly on that particular device.

However, we’ve run into a significant issue. Our application is meant to be installed on client-side devices, which means we’d need to build AWS on each of those devices individually. Clearly, this approach isn’t scalable or practical.

Here’s the crux of the problem:

* We considered using `.so` files from AWS, but they require numerous dependencies that aren’t always present on the client devices. Even after addressing some of the connection issues with the libraries, I’m still facing other errors preventing AWS from functioning correctly on different devices. Because it's understandable that we can't just copy paste all files from one device and expect it to work the same way. Don't want the "it works on my machine" problem :D
* Our development is taking place on Ubuntu (and distributions based on Ubuntu).
* Due to project timelines, we haven’t had the opportunity to explore alternative methods, and we’re looking for a solution that doesn’t require a complete overhaul of our integration. The only alternative method was to build AWS in docker and use it like that, but we still had issues with dependencies. Maybe there is a way to do it with docker, but I don't know about that.

Ideally, we want to find a way to wrap AWS within our installer so that when our application is downloaded and installed on a client’s device, all necessary AWS components are included and function correctly.

My questions are:

1. Is there a recommended way to package AWS with our application so that it doesn’t need to be rebuilt on each client device?
2. Could AWS be designed primarily for server-side use, meaning it might not be intended to function directly on client devices?
3. Are there best practices for handling AWS dependencies and libraries in a client-side application like ours?

Any advice or insights from those who have faced similar challenges would be greatly appreciated!

Thanks in advance for your help.

https://redd.it/1envgb1
@r_devops
GitLab runner managing its own terraform code

Hi, I have encountered following problem.


I have a docker executor gitlab runner deployed in AWS with ASG using spot instances. There is a threshold which when gets crossed it creates a new EC2 instance and registers a new "instance" of a runner.

The runner is deployed through terraform and it manages its own terraform code. The problem is when you try to apply infra changes and for example, someone in other project is using the runner and new instance is spawned, terraform detects drift in the configuration as when the runner scales it changes the ASG policy, resulting in destroying the runners which don't fall in the min size parameter of the ASG. Also when making changes to the runner itself, terraform obviously detects the changes and while applying the runner destroys itself, but usually having enough time to also apply all other changes as well but the pipeline gets stuck and from my understanding there is no way to make other runner pick up the job to finish it.

Maybe my question is stupid and I don't see an obvious solution, but how would you mitigate these scenarios? My only idea which is related to runner destroying itself is to have a separate runner for the terraform code so the apply job can be finished without actually affecting the pipeline, but also I don't want to have manually turn on the runner and the turn it off when I'm not using it so it doesn't generate a pointless charge on the bill, also the changes to the runner very rare (maybe changing the instance size or the max size of ASG). I'm more worried on how can I make sure that if other people (including me) that are using the runner don't get their runner terminated in middle of the job besides applying the terraform changes when there is no other instance spawned? Or maybe it is the only way to do it and I'm overthinking it and I just need to deal with it and get used to it because there is no other way to do it.

Thank you for any ideas :)

https://redd.it/1enwwka
@r_devops
Looking for a E-Commerce Microservices Demo for Kubernetes Deployment

Hello all!

I'm looking for a demo application based on a microservices architecture that I can easily deploy on a Kubernetes cluster for demonstration purposes. Ideally, I'm interested in an e-commerce application written in Python, so I can make changes if needed.
If you find a suitable repository that fits this description, it would be really helpful!

Thanks,
grator57

https://redd.it/1eny3kx
@r_devops
An Ode to Logging

Oh, log, a nerdy scribe,
In you, all errors hide.
To write it well - not an easy quest,
Let's see how we can do it best!

True hackers always start with print()
Don't judge! They've got no time this sprint.
But push to prod - a fatal flaw.
Use proper logger - that's the law!

Distinguish noise from fatal crash -
Use Info, Error, Warn, and Trace.
Put a clear level in each line,
To sift through data, neat design!

You log for humans, this is true...
But can a machine read it too?
Structure is key, JSON, timestamp...
Grafana tells you: "You're the champ!"

Events, like books, have start and end.
Use Spans to group them all, my friend.
Then take these Spans and build a tree,
We call it Trace, it's cool agree?

Redact your logs: remove emails,
addresses, PII details.
Or data breach is soon to come,
and trust me, it's not fun :(

In modern distributed world,
Do centralize your logs, my Lord.
Retention policy in place?
Or cloud bill you will embrace!

(No LLMs have been used to write this)

https://redd.it/1eo0ih0
@r_devops
On-call alternative to Opsgenie?

Are there any free or open-source alternatives to Opsgenie for managing on-call alerts and incident responses? I'm looking for a solution that can handle alert governance and on-call management, would prefer if it was all in one but if you made any combo of tools work that’s fine as well. Any suggestions would be appreciated!

https://redd.it/1eo0vfm
@r_devops
Logging options


Anyone aware of any logging options that will allow me to use s3 as a data store backend ?


https://redd.it/1eo3xxo
@r_devops
Chatbot to ask about my infrastructure

I have my Ansible facts inventory in a mongodb. How can I create a chatbot to ask it questions like:

- How many Ubuntu servers do I have?
- Which devices are in ip range 10.4.5.0/24?
- Which servers have the package nginx installed?
- …


Thanks.

https://redd.it/1eo47cb
@r_devops
Started my career in devops but I have some concerns

I started as a DevOps intern during my CS bachelor's and transitioned to a full-time role at the same company. I love my job, and my boss is pleased with my work. I’ve always been interested in infrastructure/systems-level work, but I’m concerned that my development skills haven’t progressed much beyond some full-stack projects. I do hobby projects on weekends to keep my dev skills sharp and am also improving my computer networking knowledge through the CCNA. At work, I’ve learned EKS, Terraform, CI/CD, Golang, Kafka and Python, and I write code for internal tools(Though its nothing super fancy) . Could this lack of advanced development experience hurt my career in the long run, especially in DevOps?

https://redd.it/1eo6bx3
@r_devops
What are possible transitioning paths from Devops?

Hey there. I have 5 years of experience as Devops Engineer. My role mainly consists of tasks in Kubernetes clusters (8, each with like 300 namespaces), deploying services using Ansible and helm on on premise cloud and also Jenkins pipelines.

I am kind of getting tired cause of constant need of dealing with various problems which demand lots of research, learning, tweaking, debugging, almost everyday. I have practically no repetitive duties and it starts to stress me.

I was thinking about looking for some easier role - maybe being a sysadmin could be nice, however salaries are much lower (I am French living in France). I am not really fond of becoming developer. I used to learn a lot of security stuff - had pretty high ranking on try hack me and hack the box like two years ago but being a pentester might be even harder.

Anyone had the same experience and would like to share some tips?

https://redd.it/1eo5zzv
@r_devops
local hosting react+java+db+ci/cd

This is what I have right now:

laptop 1: docker with: react with nginx, java, mongodb, mysql, teamcity. + standalone teamcity agent

so when I need deploy, teamcity do 1. docker stop, docker rm, docker run with custom params.

I want to move teamcity and agent away from laptop1 to laptop2. I stuck with understanding how to deploy updated react and java to laptop 1. I can do push/pull to docker repositories (is it free?) but don't want to do it manually or via ssh from teamcity.

please point me in right direction. thanks

https://redd.it/1eo7w95
@r_devops
Are there any advantages in splitting single a Github Actions job into multiple ones except running in parallel?

Each of my Github workflows runs inside a single job. The pipeline will terminate if a single step fails, which is good because it doesn't need to run tests for the code if the code style ( linting / formatting ) is considered invalid.

But I see many people splitting tasks like testing, linting, formatting etc. into multiple jobs. They run in parallel which might be faster but if one job fails the other ones still run.

For now I'm thinking "they might be wasting CI minutes?"

Are there any advantages by doing so?

https://redd.it/1eoa3t1
@r_devops
Managing expectations

Came across this gem today, what are your yalls thoughts?

https://www.glassdoor.com/Community/bowl-B614ab98238f91800037bb4f2/post-P669492eb96a0694604086de6.htm?utm_source=post%20share&utm_medium=community%20share&utm_content=company%20bowl

I feel that people management is an interesting topic, especially the compensation associated to it.



https://redd.it/1eoffqj
@r_devops
Clean Slate at work and Building Tooling. Stuck on what language to plant our flag in.

I work at a smaller company/startup that's been around for about 9 years that has been on the "modernization" path from dotnet framework to core.

Long story short:
Our apps consist of legacy dotnet framework, dotnet core 6-8 for net new apps and Angular for the frontends. When it comes to our Operations and Infrastructure tooling, we have been basic(ish) up until recently. Number of projects are scaling and got a golden path for our application stack moving forward with our "common" patterns. We are serverless first (AWS and all the usual suspects, Lambda API GW, SQS) and ECS fargate for things that dont fit that paradigm very well.

Our deployment stacks:
1. aws sam for serverless stuff (moving to SST soon)
2. Terraform for everything else

Devops tooling:
1. alot of bash scripts
2. python for more complicated things
3. 1-2 go things which are mainly placeholder apps and ping/pong echo servers for testing connectivity.

Now our dilemma:
My team is just me(Lead) and a junior/mid engineer who is stellar and wish I could clone them. We have reached a point where we are trying to scale our services/tooling for more self-service such as repo generation/platform engineering influenced projects. Since we are using bitbucket (no option to move) we find that we need to do more custom stuff to make up for its shortcomings, template repos being one of them.

We are planning how we can keep our stacks across the engineering org between operations/development inline. I don't like having a million bash scripts, python, go, terraform, CloudFormation, yaml, c# dotnet, and context switching mentally is just annoying.

I been considering the following as any refactoring at this time wouldn't be too much of burden and would like to make the better decision towards consistency

1. Going all in on typescript: SST, pulumi/cdktf, amd ts-node for local scripts/npm.
2. SST, pulumi for apps/infra and then ALL of our tooling in golang

My goals are to just reduce the cognitive load of me and my team. My Leaders are supportive, and I have the rope to do anything I want along as I have sound justifications.

Now MY EGO wants me to do Golang for everything possible BUT I know the syntax is easy to pick up it seems the paradigms and COMPOSTION first approach is harder for other people to grasp.

While everything in Typescript would be "simpler" as it seems, anyone can do JavaScript now adays and our frontend devs obviously would have no issue groking our stuff while the backend c# devs are just a skip away.


Where would you plant your flag for setting your operations/infra and tooling for your org given the chance?

https://redd.it/1eog8xz
@r_devops
What is the best kubernetes Operator for GKE

Hi Folks,


Are there any operators for GKE, like Karpenter for EKS, or does GKE have its own way of scaling the node.

https://redd.it/1eoi5xa
@r_devops
Hiring Full Stack Developer - Web3 / Solana

Hi everyone, we have added a new job on our platform, if you are interested in this role please check out the job link below.



Role - Full Stack Developer - Web3 / Solana (Remote, Full-Time)



Job Link - https://devloprr.com/jobs#216

https://redd.it/1eol43j
@r_devops