Reddit DevOps
270 subscribers
5 photos
31K links
Reddit DevOps. #devops
Thanks @reddit2telegram and @r_channels
Download Telegram
devops desktop configuration

Hello. I'm trying to assemble the desktop configuration and want to learn and run locally devops tools like docker, kubernetes, terraform, ansible, VMs, etc and was just wondering is there any problems with running those with i5-12600K or Ryzen 7 5700G processor, because those are my two choices for the cpus? Thanks in advance.

https://redd.it/sb7xtc
@r_devops
How to choose the best versioning mechanism?

We are developing a cross platform CLI tool (in GO) and a docker image which should work together . You are welcome to check the project on Github it is an open source. Currently we are using semver, but abusing it and I will explain.
We have develop and main branches. On each push to develop CI increments the "patch" number of semver and publish a new "Pre-release" version for both CLI and docker, both will have the same version (e.g 0.1.1, 0.1.2, 0.1.3, etc..). On each push to main CI increments the "minor" number of the semver and publish a new "Stable" version for both CLI and docker (e.g 0.2.0, 0.3.0, 0.4.0, etc..). As you can probably guess there are several problems with this method, for instance if we need to deploy a "hotfix" we will push fix to main and the minor version will be increased (for instance making 0.2.0 less advanced than 0.1.22).

So the requirements are, having two component CLI and docker which need to work together, having both "sable" and "unstable" releases.

Would like to get your opinion, or good article which can help us choose which versioning mechanism and how we should implement.

https://redd.it/sbe7xg
@r_devops
How to create programmatic service level indicators (SLIs)

At New Relic, we believe that programmatically tracked service level indicators (SLIs) are foundational to our site reliability engineering practice. When we have programmatic SLIs in place, we lessen the need to manually track performance and incident data. We’re able to reduce that manual toil because our DevOps teams define the capabilities and metrics that define their SLI data, which they collect automatically—hence “programmatic.” Learn more here: https://newrelic.com/blog/how-to-relic/programmatic-service-level-indicator?utm\_source=reddit&utm\_medium=organic\_social&utm\_campaign=amer-fy22-q4-slm&utm\_content=blog

https://redd.it/sbgazj
@r_devops
API Rest help

Anyone good with REST APIs? Need some help, User contacted me saying they don't have access to the product they paid for. from January 8th, 2022. This is the original record I pulled (some stuff has been altered for privacy) but does anything look off? Your help would be greatly appreciated as I'm still very new to REST APIs

"Id": "aceea67a-abf1-11ea-97c5-379a72eb235", "state": true, "productId": "56e5e750-aa5e-11ea-b0f5-97883f2103b1", "organizationId": "ef7cfb28-abf0-11ea-ab98-d7c6011880ac", "ownerId": "ef7cfb28-abf0-11ea-ab98-d7c6011880ac", "ownerType": "ORGANIZATION", "createdAt": "2022-06-11T14:41:46.499Z", "updatedAt": "2022-12-21T16:41:42.588Z", "effectiveStartDate": "2022-06-11T00:00:00.000Z", "effectiveEndDate": "2022-12-31T00:00:00.000Z",

https://redd.it/sbgqlz
@r_devops
Filebeat autodiscover on k8s

Recently i got a new job in pure devops.

Lads here work mainly on k8s clusters. I have been tasked with creating network policies to secure all pods as much as possible and this led me to a few monitoring pods, like filebeat.

I come from a sysadmin background so i do have experience with beats and ELK, but bare metal style. So a filebeat service per server configured properly to handle server and app logs.

Here they are deploying a daemon set which spawns a filebeat pod per node, mounts ***/var/log*** and container logs, ***/var/lib/docker/containers*** and uses **autodiscover**.

Now this is the part that bugs me and i do not understand. How does the kubernetes provider autodiscover works? The way i see it right now, on these setups, is that each filebeat pod works the same way as a bare metal works. it monitors and parses all logs found under:

/var/log/containers/*-${container.id}.log

or

/var/lib/docker/containers/${container.id}/${container.id}-json.log

on it's perspective node(daemon set).

What i would expect from such a utility is to spawn a pod and autodiscover would somehow, with some extra configuration, the filebeat pod to find out with timed sampling that a new pod/node spawned and exec something like kubectl logs -f ${[pod.name](https://pod.name)} and not simply read the mounted logs. It seems like a wrong usage or approach to me but i might just be wrong here plus audodiscover mentions -nodes- but all i see here is information for pods and pods only.

https://redd.it/sbjapj
@r_devops
Provide SFTP access to Non-tech people

So an organization sends us files in our SFTP server and I fetch them and send it to our operations team but now the operation teams wants access to remove my dependency to make the process quicker. I get those files in our server in private subnet for security purpose.

How can I provide them access as they don't know linux commands?

https://redd.it/sbkl93
@r_devops
Pipeline Patterns

Is there a good reference page with examples on how to setup the following pipeline situations:

Full deployment?

Partial deployment with only updated files being pushed?

Pipelines that call other pipelines that include infrastructure then code related parts?

https://redd.it/sblmuf
@r_devops
Specifying IAM Role in Packer

So I am currently trying to default to using IAM roles/polices for packer to use rather than specifying environment variables.

So the question is in two parts which is:


1. When creating the IAM role, how is this specified within the HCL template?

2. When I use this specific IAM role, will packer require any other credentials to initiate the build or will it automatically recognise using the name of the profile?

Bonus question:

If I'm using Jenkins to create a pipeline, how do I specify the same IAM role to be used, will any work be needed on the slave (windows server) or on the Jenkins instance for it to initiate a connection to AWS to initiate the build?


I've done some research on how this is possible but all examples i haven't been able to visualise how it's possible within a working piece of code: https://www.packer.io/plugins/builders/amazon#iam-task-or-instance-role

Feel free to let me know if clarification is needed.

https://redd.it/sbke47
@r_devops
Help comparing CircleCI to Github Actions from cost perspective only

The pricing for both of these are rather convoluted and depends on number of users, number of minutes needed for the runners. So I want to set some constants to de-convolute it and just compare pricing between GitHub Actions and CircleCI, irregardless of the differing feature sets. Here are the constants:

Runner: Linux 2-core machine
Minutes needed: 1200/day
Number of users/seats: 10
Assume the use of dependency caching

Can anyone speak to the cost of just these two platforms with the given constants? Are there other variables that should be fixed to make the comparison more straight-forward?

https://redd.it/sbpx3h
@r_devops
What will better futureproof your career - learning serverless or containers/k8s?

Obviously if I had all the time in the world I'd learn both, but I'm curious what you all think might be the better option?

https://redd.it/sbs9pi
@r_devops
Cannot delete ArgoCD app

There isn't a ArgoCD sub reddit so I figured this is the next best place.

I'm having some trouble with deleting an application in ArgoCD. I deleted the app without cascade and deleted the resources manually via kubectl delete -f manifest.yaml (basically to reverse it) however the application will reappear in ArgoCD and it will say it is out of sync which I expect at this point.

If I delete the now out of sync app within ArgoCD, I see the green box to indicate that it has been deleted but a few seconds later the application will reappear! If I also try to delete the manifest from the repository it will complain that it cannot find the path of said manifest it expects to find so I cannot even delete the application.

Any ideas how can I discard this app so it does not appear in ArgoCD?

https://redd.it/sbmp9y
@r_devops
Learning path critique for experienced dev

# Background

I have been mainly an automation engineer in a QA department wearing many other hats (performance benchmarking , basic full stack web dev for internal tooling , release management ) for about 6.5 years in 1 small-ish company . I recently quit my job because of burnout , being paid peanuts and wanting to shift fully to reliability engineering / platform engineering area.

I have breathed bash , shell , linux and python so I feel confident on those. I have worked with AWS , docker, ansible , jenkins for years but at a very small scale and at their most basic . eg : AWS instances were deployed via interal python tools using awscli never a cluster or exceeded 10 instances at once , docker instances were launched in a small quanity by internal python tool & not by K8 or somethign , etc . I also want to learn kubernetes to some degree as everyone's mom , dad , uncle , pet wants that . So I want to work and cover these gaps to some degree that a person can in a homelab setup while understanding that this will never rival the complexities of production grade environment.

I also want to priortize FAANG because of visa purposes as I am not from US but my gf lives in US so I want to shift to US. Relocation is possible in other companies but is easier achieved here.

# Goal

Get a mid to senior level devops/SRE type role in preferably FAANG tier

# Plan

Do the udemy K8 intro course and CKA course by Mumshad . AWS SAA course by Stephen Maarek . Get the CKA and AWS SAA certs to boost my confidence and apply this knowledge in personal project setups hosted on github/gitlab. I will document all of this on a CV blog that I already have.

&
#x200B;

Personal project : get react apps in cotainers managed by K8s , deployed by terraform in a CI/CD pipeline . Show or have a usecase/example for scaling (simulate http request) and reliability (deliberately turn off instances). Iterate on this as I learn more

​

Grind Leetcode daily : 1 medium problem everyday and keep touching on data structures to make it easier to learn.

# Queries

Should I priortize getting the certs first or getting the homelab setup going ? I like building things so I am inclined to the later but from what I have read that certs can help me get my foot in the door as some mid level companies have cert classifiers.
Leetcode : Do I need to do this ? I hate grinding it day in and day out but it seems like a necessary evil to get into FAANG which is what I want because of my visa situation.
Any other advice?

​

TL;DR : quit job. Wanna shift to reliability engineering . Need crtique on learning plan.

https://redd.it/sbst8r
@r_devops
Career transition Dilemma

Hi, I m an experienced BI Data Analyst with around 3.2 years of experience in Reporting and writing SQL queries. I have recently completed my masters in CS in Europe with majors in (Machine learning and Big data ) as well. But Lately, I m interested in Cloud DevOps Engineering and even cleared AWS SA certification. Is it a good move to shift to DevOps/cloud  ? or should I concentrate on Data Engineering?  my only concern for Data Engineering even while applying for jobs is half of DE jobs are based on tools like ADF, Informatica,SSIS and remaining have good job openings like SQL,Spark, Python, Airflow, etc. Despite all that DEVOPS ENGINEER were paid more than Bigdata Engineers and has a high volume of openings too, To add on that DevOps engineers have the same tech (AWS,Jenkins,Linux,Dokcer,Git and Python )stack everywhere unlike Data Engineers(Some using Python & ETL coding and some are heavy tool based ).

Is this a good choice moving from BI data analyst to Devops cloud Engineer ? Does hiring manager will even consider some one like me for Devops positions ?

https://redd.it/sbv2dw
@r_devops
Bitbucket Pipelines repository variables and parallel steps

Hey all! Hoping someone else has encountered this before as I can't find anything with Google and Bitbucket's support is atrocious.

I'm rewriting some deployments to work in parallel. My understanding is that the first step receives the repository variables and then it's my job to pass them to each subsequent step. So I have something like:

- step: *prepare-build
- parallel:
- step: *step1
- step: *step2
- step: *step3

With each of the * portions being defined elsewhere and re-used across the different environments.

The problem I have is that the environment variables aren't passed to the `prepare-build` step, but instead are passed to the `step1` step instead. Before rewriting the steps to parallel, `step1` was the only step that existed.

Is this intentional behavior, in that BB passes the variables to the first parallel step? Is it a result of some weird caching policy? Something else I've overlooked?

https://redd.it/sbv1s5
@r_devops
What may a typical technical interview look like for an infrastructure engineer?

I have an initial interview today for my dream job being an infrastructure engineer at a very large company. I've only ever interviewed for SWE positions at small companies so I'm currently kind of at a loss for how it normally goes. This position also seems pretty new at this company so there's currently no information on how the interview process goes for anyone besides SREs and SWEs.

I'm pretty confident but the only thing I'm worried about is a technical interview. I've never practiced leetcoding or anything so I'm worried if there is a leetcode-type interview I'll fail miserably. But to me it also seems like that's not super useful for an infrastructure engineer position.

Has anyone interviewed at a large company for a similar position that can give some guesses on what to expect if a technical interview does come up?

https://redd.it/sby1xp
@r_devops
What does a Devops portfolio look like?

Hi

So I'm currently working in QA and I'm really fascinated by devops. At the company I work for there is an opportunity for me to apply and transition in DevOps.

At this moment in time I'm still studying and hoping to start putting together personal projects while I wait for my opportunity.

What I'd like to know is:

What does the average Devops Portfolio look like ?

What are some examples of some respectable entry level projects?

Id also be very thankful to look at any personal portfolios sites or projects that you admire.

Thank you in advance to everyone that goes out of their way to point me in the right direction

https://redd.it/sbw9wg
@r_devops
Advice to a beginner thrown into a disorganized SaaS startup environment?

My boss is brilliant but hard to get a reach of as he's more focused on producing and architecting than managing (but he does try on the latter). While he's created some documentation, it's VERY sparse. My peer and I simply can't attack ad-hoc issues with the application in the same way that he can. He's a diligent worker but it just all ends upon him.

I want to take some of that workload off him, so I try to attack any requests that I can but, again, it's very sparse. In stuck situations, there are times I am afraid to ask especially because it will take a long time to answer/explain and I don't want to detract him from some of the projects we're trying to get going atm. I also am concerned it might reflect poorly on me, even though I've received a lot of good feedback.

Cutting to the problem, in conjunction with how new I am to the field, I have trouble knowing how to approach certain requests from our users because I don't really know how our application even works.

As an example, I don't have a lot of in-depth knowledge on SSO. My boss showed me how to implement it once (using SAML), which kind of gave me enough to understand and toy around to implement it for a few other customers. But now I've been given what looks like OAuth2 data which I have no idea if we support.

Another example, we have our repo that's full of Ansible and Terraform IaaC. I've been able to debug and toy around and make my own contributions, but that's all templated from his work. I don't really know how to write my own because again, I'm new, and I don't know what my restrictions are. We have a rough systems diagram but I don't think it's detailed enough for me to understand what I'm working with.

Appreciate any tips!

https://redd.it/sbza0q
@r_devops