Reddit DevOps
271 subscribers
11 photos
31.1K links
Reddit DevOps. #devops
Thanks @reddit2telegram and @r_channels
Download Telegram
GCP Associate Cloud Engineer

How much would it take for someone to prepare for this exam?

I have work experience with AWS (cloud practitioner and solutions architect associate certs also)

It's very different then AWS or it more just the naming of the services?

https://redd.it/ypirmp
@r_devops
DevOps best practices - Staging environments

Hi,


I am new to DevOps and learning about the different staging environments.


I find it hard to find a single authoritative source that I can read on the best practices and which is the best approach to take.


My knowledge comes from anecdotes and talking with colleagues.


What I have so far is :


Dev/Non-Prod/Production environments


Blue/Green Deployment


Which type of process should be applied, and how do you technically implement these different environments? Do you have a single repo, and a branch for each environment?


To get some further light on this would be great!

https://redd.it/yk8j36
@r_devops
CICD strategy with UAT

Hi Guys

​

usual approach:

We usually use default or slightly modified git branch strategy with feature-dev-master branches

we create features from dev and put it into dev. After some time Code freeze is declared, dev is "locked", tested by QA and then pushed into master. Master is considered prod-ready and packages built from it are shared with clients.

​

current project approach:

On another project that I joined, my client provides a website to his own clients. Clients upload data that is transformed and prepared to be consumed as files and reports. Their logic is mainly separated but there are some common parts. So some parts may intervene with each other(!)

Their current workflow is feature-dev-master branches BUT they have different environments.

So they use dev branch to publish to dev env and after dev testing - to QA for proper QA testing.

After it's done - branch goes into master, This master branch is published into UAT environment and after confirmation from client - master branch goes into Prod env as well.

https://ibb.co/1nMR50w

problem:

Now the problem here is everything that is in master should be marked as "ready for production" which means every client should check his story and give his approval.

And now we are not in development phase but rather in support phase, which means no planned releases, mainly small changes and bugs.

So my team is facing the current issue - we have couple of features/bugs implemented and ready to be delivered after UAT testing. Suddenly another client came with some critical data issue that we need to fix. We fix it but we can not push it into prod as there are 2 changes that are waiting for UAT approval.

​

Quick solution here would be cherry pick. But it's quite typical scenario so we should cherry pick every time. Moreover as this critical fix was tested on UAT we can not guarantee (like 99.99% but not 100%) that the same correct behaviour remains after we push it into production without other 2 features. Ideally we kind of need to test it again, which doesn't make a lot of sense.

​

I came up with the new flow. Which works better in terms that we will have the branch with only those changes that will go to the production. But it doesn't mitigate this cherry pick issue completely and I'm not sure if there anything else we can improve.

https://ibb.co/Lddpq4m

https://ibb.co/8D3Dv2s

https://redd.it/ypkzmz
@r_devops
👍1
Automation API-like feature for Terraform CDK?

Is there a way to embed Terraform CDK code in a clean way like we can do with Pulumi's Automation API?

https://redd.it/ypnu10
@r_devops
Managing 100+ python venv's

Any good tools for managing 100+ python venv's across 40+ servers?

Creating, deploying, blue/green etc.?

Struggling to identify anything that is actually fit for purpose.

Docker is not an option at the moment for reasons.

I think we could build a tool to do it, but seems like re-inventing the wheel.

https://redd.it/yprbks
@r_devops
Need advice on a DevOps job/project I've been offered

I did an internship for a company and now they've offered me to join a team of 9 DevOps engineers in a project for a fintech company (online payments platform). It's on-premise servers using Jenkins and Ansible (and 14 dev environments). I asked what my responsibilities would be and the lead told me mainly troubleshooting the pipelines and scripts when the developers report a problem (so basically IT support for devs?)
I have a few concerns I'd like to share:

1. On-premise - not using AWS/Azure seems like a career suicide in 2023. It also means legacy stuff, with everything custom build and little to no documentation or support.
2. Jenkins - I'm sure it's still being used in older projects, but the general opinion of the internets is that it's a dying tech that's long been surpassed by GitLab, GitHub Actions, CircleCI, ADO and most other technologies.
3. And obviously number 3 - my main responsibility would be troubleshooting whatever the devs complain about, which honestly gives me PTSD from my 5 years working in tech support.
4. I've researched the product/platform and users say it's just horrible, some even threatening to sue the company. Employee comments on Glassdoor don't inspire either.

Any advice or insight you can give a new guy would be highly appreciated. I don't want to miss the opportunity to start my DevOps career, but right now it seems like the wrong place to go.
Or maybe I'm just being a c*nt.
Do you think it's important to work on the cloud and stay away from on-premise?
Is Jenkins as bad as they say?
I can probably get away with turning the first project down, but will have to wait 3 months for the next one.

https://redd.it/ypu61x
@r_devops
Anchore configuration question

I am setting up Anchore scanning for some containers from a Jenkins pipeline. I have the Anchore engine running and the Anchore plugin setup in Jenkins. I am reaching the Anchore engine from Jenkins, but I am getting a 401 Unauthorized from Anchore when it tries to pull my docker image from a private registry. I haven't added my credentials to the Anchore engine and that is my question. How do I go about doing that? I have seen examples where you use the cli to login or a docker compose command, but both would expose credentials in plain text in history on the machine. Is there a way to pass a set of credentials from Jenkins to Anchore or do I have to login on the command line before I can do anything?

https://redd.it/ypno2a
@r_devops
Noob Workflow Question

For IaC, if there needs to be come sort of modification to the infrastructure, is this an acceptable workflow?

1) Make a new feature branch on your local Repo

2) Push that branch up to Github once you made your changes

3) Make a pull request for other members to review your code

4) Merge to main branch after passing review

https://redd.it/ypyx6j
@r_devops
Opsgenie with OEC connector to n-central question

So we implemented opsgenie last week. The main reason for this was the integration with N-Central with the OEC connector. The connecter itself just runs a python script to put the ack data back to n-central. Now this is done via the logged in user (in the config file). How can I get the on-call (this is different people logged into the app via azure sso) user data to be pushed back from the script say to the notes section of the device. Is this possible? Has anyone done this already?

https://redd.it/ypynm3
@r_devops
Instagram automation. How can I do it?

Does Instagram offer an API for post scheduling and stuff? Or am I going to need to build everything from the ground?

https://redd.it/ypzpsv
@r_devops
Best way to do AWS GraphQL Serverless?

My initial proposed architecture (bad):

1. API Gateway > Based on Route > Appropriate Next.js Lambda > Calls its own Monolith Lambda Container (Fastify Mercurius).
2. Each Next.js Lambda has its own Monolith Lambda it calls.
3. I have a total of 3 different Next.js Lambdas based on API Gateway routes.

Problem:

1. I realized that I did not consider a schema stitching.
2. Meaning each separate monolith lambda has the same duplicated schema.
3. This is kind of broken attempt to do microservice per view...

Best Solution?:

1. Not sure if I can implement Fastify Mercurius with the way Apollo does Federated GraphQL schema, but honestly Federated GraphQL schema is all very very complicated to me.
2. All my Next.js views should call the same Lambda monolith that holds all the GraphQL schema., but I should separate each resolver into its own Lambda.
3. There are two parts to this Schema and Resolvers.
4. Keep Schema as Monolith (due to complexity of Federated GraphQL), but only resolvers are microservices.
1. Should monolith schema be Lambda Container or AWS AppSync (Direct Lambda) heard horror stories of VTL. Both are serverless
5. Resolver Lambdas will all be connected to RDS Proxy. And still all be connected to single host, single database, multi-tenant shared database (tenantId key).
1. Or would it be advisable to do single host, database per set of lambdas?
1. Aka: all user resolvers connect to the user database, all orders resolvers connect to the orders database.

https://redd.it/yq1o37
@r_devops
Devops project for course I've been working on

I'm working with another colleague to teach a course on devops. I'm trying to find a project that the students could use that would allow us to demonstrate the tech below. Part of the problem is it needs to be complex enough to make sense to use terraform but at the same time simple enough to where the students are learning more about the concepts/process than spend time trying to debug code in the app/project.

Also, feel free to give additional thoughts.

* Docker - Creating a custom image, covering the usage of layers and optimization. (private vs public repository as well)
* Using CI/CD to run some basic tests and deploy to AWS using Terraform (my experience with CICD is mostly gitlab but I believe creating the pipeline in jenkins and potentially github actions would be a good call)
* Terraform - Basic use of terraform wihin AWS (will also talk a bit about ansible)
* Monitoring - I've worked mostly with prometheus/grafana so will probably look into using this.
* Orchestration - This is going to be a future goal as neither I nor my colleague have significant experience with it. I've worked mostly with rancher and she's working on picking up Kubernetes.

I'm really not sure what else to cover. This is an beginner-intermediate course just to show how things work together in the devops world.

https://redd.it/ypyueq
@r_devops
What should you document in a local development environment repository?

I have a Github repo consisting of a bunch of scripts and docker-compose files that starts RabbitMQ, the React frontend app and 3-4 node.js backend services. I am wondering what needs to be in the README file of that repo and what other documentation I should put inside of it to help developers who will have to run through the codebase when I leave.

https://redd.it/yq5cql
@r_devops
What are the top 10 devops skills you should have?

I am trying to purchase some books to get good at devops although I am not very good at it, so it would help to know what I should focus on.

https://redd.it/yq5feg
@r_devops
How to Implement recovery plan, monitoring and alerting on GCP

Our infra runs on GCP. We have
* Several Cloud Run services
* 2 App Engine services
* Cloud SQL
* LB

I'm tasked with creating for each service.
* 1 recovery plan
* monitoring
* alerting

I have some questions

* How to get started with recovery plan (what is it, how to do it on GCP)
* Monitoring & alerting - Are guides on integrating Data Dog with GCP Operation Suite and Ops Genie

Thanks!

https://redd.it/yq75pd
@r_devops
Gantt Chart app

Hi. Maybe you guys can help me. I’m looking for an app to better visualize the project schedule and based on gantt chart idea. What is your first choice?

https://redd.it/yq5lke
@r_devops
GUI for config, no git. (keycloak) terminology?

How to call it, if a tool has a nice GUI for configuring, but this has the drawback, that you can't keep the config in git.

For example keycloak is such a tool.

Is there a term for this?

https://redd.it/yqb0ez
@r_devops
How can I increase my chances to get an entry level DevOps remote job in a Company that is based in the USA?

I do not live in the USA and can't leave my country as of now. However, the job market and salary figures look much better in the USA.

How can I ensure to land a job?

I also need to mention that I do have a degree in CS and have good coding knowledge. However my experience in the Industry is none.
Also, I graduated in 2020. After that I opened up a business and wasn't really successful there.

I am thinking of doing some online courses when it comes to Devops. I do have some basic knowledge that I think is required for it, e.g. Linux, CLI, Network, OS and Cloud Computing.

I need a job right now and I hope some of you guys can help me with it. Thanks.

https://redd.it/yqcbva
@r_devops
How do non-devs report issues and bugs at your company?

My co-founder and I have experienced this problem in our previous jobs, where non-technical people (users or internal) would report issues but would miss important context. This meant that by the time someone had time to look at the issue, they always needed to first find the reporter to understand what he meant, etc. It also meant that tracking the error in the logs was difficult as the error was not fresh anymore. We would love to hear how you solve these problems at your companies.

https://redd.it/ypmast
@r_devops