Reddit DevOps
268 subscribers
2 photos
31K links
Reddit DevOps. #devops
Thanks @reddit2telegram and @r_channels
Download Telegram
Moving From a Full-Stack to DevOps Position, what can I expect?

Currently considering a very good offer for a DevOps Position from a Big Corporation. Always considered a DevOps position to be more of a noncoding role, but my friend, who is a DevOps dev apparently codes all the time. I am 27 and I have alot of experience under my belt as a front-end and back-end dev already.

​

I am just wondering, what should I expect when switching over from Full-Stack to DevOps? I enjoy coding and algorithms. I always end up doing a leetcode problem every morning before I start my workday as a sort of ritual. I am hoping the programming aspect of my job will not disappear when I start.

https://redd.it/oxx39e
@r_devops
Do you have to go through user-support roles (sysadmin) to get into Cloud Engineer roles

Hello Guys,

Background: 1st Line/2nd Line IT guy for O365 and Windows 10 etc. for the past 3 years looking to grow career over the coming years. Interested in Azure/Cloud/Powershell/Automation etc.

Supporting users in a traditional IT role with on prem servers or Intune is something which doesn't pay as much and isnt as cool or sexy (at least to me) as being a Cloud Engineer in Azure/AWS setting up servers and apps in servers, devips stuff etc.
Actually the pay is probably 2 times the pay for traditional IT here in the UK

Is it recommended to first be a system admin in a user support role before becoming Cloud engineer in Azure/AWS GCP, basically what I described above? Have any of you done that on your journey?

https://redd.it/oxybrb
@r_devops
Full suite comparison: BitBucket vs Gitlab vs Github?

Hi, so I'm about to start a new web application project and have some years of experience in Fullstack with PHP, Node and Python.
At my previous jobs, I've worked with all three of them, Github, Gitlab and Bitbucket and was wondering which one you suggest and like more, regarding issue tracking, hosting the codebase, CI/CD/Pipelines, Wiki and so on and so forth.

I'm curious what your experiences are and which one you would pick for starting a new startup company with the goal to build enterprise software and scale to a team of 50 one day? (I know, big dreams)

https://redd.it/oy06no
@r_devops
Career growth as a DevOps

What are some of the career growth opportunities as a DevOps Engineer?
What are the expectations of those roles?

https://redd.it/oy1570
@r_devops
Pipeline Orchestration Tool

I'm searching for a tool, or set of tools, to support automating deployment processes for our staging and prod environments. We are not ready for CD (probably never will be) so that's not on the table, but we do have decent CI. Essentially though, this tool would look similar to a CI/CD frontend where various pipeline stages are shown and the user can easily monitor the progress and logs of each task. Each task is basically a script that submits an http request, executes a database query, or executes a Salt master command (yes we use Salt stack I know it's not great). The plan is to provision all of these resources using IaC as much as we can.

In addition, some of the tasks we will perform out of band of a deployment because something went wrong with the deployment or we need regenerate data in our read caches; stuff like that. We exclusively use AWS so something that's supported there would be ideal due to the ease of integrating secret fetching and vpc endpoints, etc, although that's not a hard requirement. Most of these ad-hoc tasks do require some custom input parameters, so having a UI form would be ideal.

The best options right now appear to be AWS Stepfunctions and maybe AWS EMR. I've been looking into stepfunctions quite a bit, and it does appear to support mostly what we want, but it doesn't have a configurable form UI generator (the inputs are just a textbox in json format). The logging in stepfunctions is also a little quirky because there's no easy way to drill down into the logs (afaik). I know that we can build UIs that drive the stepfunctions, but I'm wondering if there's something that already fits our use case.

https://redd.it/oy0l1v
@r_devops
How would the ideal infrastructure based repository look like at a startup

Working on building out the cloud based infrastructure at a startup but I am not used to having no structure at all. How would you recommend I start building out infrastructure in a gaming startup?

We are going with terraform and AWS to start with.

https://redd.it/oy3uav
@r_devops
Need help with understanding deletion of previous docker image in pipeline

Hello guys! I'm pretty new to devops and looking for advise.

I'm trying to implement this strategy called streamline: [https://medium.com/@jbradyaudio/streamline-a-super-efficient-branching-and-ci-strategy-ffa864aa99d4](https://medium.com/@jbradyaudio/streamline-a-super-efficient-branching-and-ci-strategy-ffa864aa99d4)

I'm doing it to learn things.

One step is confusing to me: Deleting old image from PR.

It goes like: devs creating branch named "feature-xxx" of master. Then they do some commits and open PR (or MR in gitlab terms). Pipeline runs tests and builds docker image, then image pushed to registry, then some other tests... Then devs push another commit on top to this PR and pipeline should delete previous image.

I end up with tagging images with `"${CI_MERGE_REQUEST_ID}_${CI_COMMIT_SHORT_SHA}"`, then i have a bash script to call gitlab build-in registry api, find images that have tag started with `${CI_MERGE_REQUEST_ID}` and delete it.

PREVIOUS_TAGS=$( \
curl -s --header "PRIVATE-TOKEN:${GITLAB_API_KEY}" "https://gitlab.com/api/v4/projects/${CI_PROJECT_ID}/registry/repositories/${REPO_ID}/tags" | \
jq -r ".[] | select(.name | startswith(\"${CI_MERGE_REQUEST_ID}\")) | .name" | \
paste -sd, \
)
# then make it array and iterate over with for loop and curl --request DELETE

Gitlab ci pipeline example:

stages:
  - lint   
- clean
  - build
Lint:
rules:
    - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
stage: lint
image: node:lts-alpine
script:
    - ./node_modules/.bin/eslint "**/*.{vue,js}"

Clean:
rules:     
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
stage: clean
image: alpine:3.14
before_script:
    - apk add --no-cache curl jq bash
script:
    - bash ./.cicd/clean-prev-build.sh

Build:
rules:
    - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
stage: build
image: docker
services:
- docker:dind
before_script:
- docker login -u $CI_DEPLOY_USER -p $CI_DEPLOY_PASSWORD $CI_REGISTRY
- export IMAGE_REPO=$CI_REGISTRY/demo
- export IMAGE_TAG="${CI_MERGE_REQUEST_ID}_${CI_COMMIT_SHORT_SHA}"
script:
- docker build -t ${IMAGE_REPO}:${IMAGE_TAG} -f ./.cicd/Dockerfile .
- docker push ${IMAGE_REPO}:${IMAGE_TAG}

Sadly $CI\_COMMIT\_BEFORE\_SHA always 000000000 for merge request pipelines so i can't use it.

How bad is my solution? Any suggestions to make it better?

https://redd.it/oxsh56
@r_devops
Infra as a code is cloud lock-in

https://flicksfix.com/posts/infra-as-a-code-is-cloud-lock-in/

I've wanted to spark a discussion regarding the movement of doing "everything as a code". I've tried really hard to make it work for my own servers / boxes, but it turns out its a lot easier to maintain them using good-old ssh with some bash scripts here and there instead of full-blown weapons like Ansible / Terrraform.

On the other hand I feel like at work terraform is a blessing when working with cloud providers and I get this big disconection between my own hobby projects and work that I do.

Do you feel the same about it?

I've shared some thoughts and example in (disclaimer: my own) blog post.

https://redd.it/oy0zhb
@r_devops
Creating and Automating a Runbook for an application hosted in AWS

Hi,

I'm a newbie to aws. Looking for a way to create a runbook and automating for deploying applications hosted in AWS.Appreciate your thought on this

https://redd.it/oxq7jd
@r_devops
We built an observability tool for CI Pipelines to help developers identify why their tests fail. It’s free for open-source projects

Hi everyone,

We’ve been working on our new product, Thundra Foresight. Our aim is to help developers to understand test failures and to bring observability into their CI Pipelines for higher productivity and lower CI costs.

It’s free for open-source projects.

# What’s the point to write here?

We’re looking forward to getting feedback on our tool to serve developers in the best manner! And, you can explore foresight (how it works) with the most popular open-source projects.

Thank you for your support!

https://redd.it/oxu2f2
@r_devops
Future of Application Performance Monitoring Pricing

Hello all,

I'm exploring what would revolutionize the pricing for Application Monitoring tools, and would really appreciate your inputs and experience with APM tools such as Dynatrace, Stackify, AppDynamics, etc.

The idea is to make sure that the users/buyers of an APM tool are able to forecast the pricing as well as keep it flexible based on their dynamic infrastructure needs.

The current industry is all over the place with the pricing models and lack simplification and flexibility.

What would be the best pricing method for the future of an APM tool/

View Poll

https://redd.it/oxpri0
@r_devops
Moving out from the on-Prem ghetto

Hello all,

I am a management consultant who ended up falling into a devops role at a client where I ended up building their cluster and their devops tools all on-Prem. Where I live (Asia) the demand appears to be primarily aws/azure related and everyone seems to lose interest when I say I worked solely on Prem. Am I targeting the wrong markets or should I move out - and how do I get substantive aws/azure experience?

https://redd.it/oy9wkq
@r_devops
Deploy .NET project to Hetzner

Is there a way to deploy docker with Visual studio on Hetzner, something like you can do on Azure? Or what is the best/quickest way to deploy .NET project to Hetzner?

https://redd.it/oybn8k
@r_devops
Deploy .NET project to Hetzner

Is there a way to deploy docker with Visual studio on Hetzner, something like you can do on Azure? Or what is the best/quickest way to deploy .NET project to Hetzner?

https://redd.it/oybn8k
@r_devops
Learning one cloud provider or multiple?

Is it better to invest X amount of time into learning one cloud provider or the same amount of time into 2?

Obviously with the first option I would know it more in depth, but the second could make it easier while job searching right?

Also, is there that much info when it comes to each provider? GKS & EKS should work similar enough (it's the k8s themselves that you work with most of the time), then the IAM management (probably the biggest differences here) & then storage management. It's not like I need to be an expert in the provider to do devops, I only need to know the relevant parts...

https://redd.it/oybg3f
@r_devops
PowerShell vs REST API

I'm writing a script that will onboard and offboard users that will be used by helpdesk and HR. Some of the items i need to communicate with are in Azure and Exchange online (regarding mailboxes). How should i decide on using PowerShell cmdlets vs REST API calls when interacting with Exchange and Azure?

https://redd.it/oyacf5
@r_devops
Trying to set up chef16.14.1 on debian 9 remote servers

Hello. I'm attempting to get chef set up on a group of 5 remote servers all running debian 9. I've got the download, dpkg'd it on each server, and tried to run sudo chef-client, but I get the below output

[2021-08-05T07:12:04+00:00] ERROR: Running exception handlers

Running handlers complete

[2021-08-05T07:12:04+00:00] ERROR: Exception handlers complete

Chef Infra Client failed. 0 resources updated in 01 seconds

[2021-08-05T07:12:04+00:00] WARN: Failed to read the private key /etc/chef/client.pem: #<Errno::ENOENT: No such file or directory @ rb_sysopen - /etc/chef/client.pem>

[2021-08-05T07:12:04+00:00] WARN: Error while reporting run start to Data Collector. URL: https://localhost:443/data-collector Exception: No HTTP Code -- I cannot read /etc/chef/client.pem, which you told me to use to sign requests!

[2021-08-05T07:12:04+00:00] WARN: Failed to read the private key /etc/chef/client.pem: #<Errno::ENOENT: No such file or directory @ rb_sysopen - /etc/chef/client.pem>

[2021-08-05T07:12:04+00:00] WARN: Error while reporting run start to Data Collector. URL: https://localhost:443/data-collector Exception: No HTTP Code -- I cannot read /etc/chef/client.pem, which you told me to use to sign requests!

/opt/chef/embedded/lib/ruby/gems/2.7.0/gems/chef-16.14.1/lib/chef/compliance/runner.rb:23: warning: Chef::Compliance::Runner#logger at /opt/chef/embedded/lib/ruby/2.7.0/forwardable.rb:154 forwarding to private method NilClass#logger

[2021-08-05T07:12:04+00:00] FATAL: NoMethodError: undefined method \logger' for nil:NilClass`

I assume I've missed a step or 3, but I've no idea what those steps might be. The docs don't give much in the way of help I can make sense of. Can anyone help me out, please?

Thanks in advance,

Phil

https://redd.it/oyep0v
@r_devops
macOS Monterey : Check new Powerful features here

Apple's macOS Monterey public beta is available now. WWDC announced this year, the 18th major macOS update isn't adventurous as compared to its previous versions. But it is a satisfactory OS update with a bunch of surprising features.

https://www.theencrypt.com/macos-monterey-features/

https://redd.it/oyf6bf
@r_devops
Multi Cloud soultions & suggestions

I am looking for a solution(s) that can handle CI/CD for multi-cloud and possibly something that can suggest if moving to other plublic might save money.

So for example: If an application is deployed in AWS but maybe deploying in Azure might be cheaper. I would like to get suggestions and approximately how much savings.

For handling multicloud, I'd like the solution to have
1. Be able to deploy to multiple public clouds at once
2. Be able to deploy to other public clouds if application is down

Are there any sort of solution for the above?

https://redd.it/oyfrky
@r_devops
I tried AWS Serverless monitoring with Dashbird - here's my honest review

As a startup, we always want to focus on the most important thing — to deliver value to our customers. For that reason, we are a huge fan of the serverless options provided by AWS (Lambda) and GCP (Cloud Function).

Monitoring the execution of the Lambda function starts to become a real issue when you have tens or hundreds of functions running at the same time. When we first started, we relied a lot on Cloudwatch Logs. Instead of creating a serverless monitoring tool ourselves, we were exploring off-the-shelf monitoring options in the market. Dashbird.io was one of services we explored. In this article, I will share the experience of using Dashbird.io, particularly on the onboarding process and the main offering by the platform: https://aws.plainenglish.io/aws-serverless-monitoring-using-dashbird-io-4714fe222e2a

https://redd.it/oygu6c
@r_devops