Reddit DevOps
270 subscribers
5 photos
31K links
Reddit DevOps. #devops
Thanks @reddit2telegram and @r_channels
Download Telegram
Any ideas on how to release AMIs or Azure Managed Images to customers?

How is everyone releasing/managing AMIs or Azure Managed Images to their customers?

https://redd.it/fnua0r
@r_devops
Does kubernetes restart failed resources with kind:pod automatically or it must be managed by a controller like a deployment to maintain its desired state ?



https://redd.it/fnr0cj
@r_devops
Google SRE-SE Interview

I have a 15 min phone interview with Google for a SRE-SE role and I have been asked to study NEtworking, Linux, ds and algorithms. What is the best way to prepare considering I have only 4 days?

https://redd.it/fnq1pu
@r_devops
Security applications that can be added to Atlantis Terraform relatively easily?

Basically what the title says.

Work on a small/relatively new underfunded InfoSec team, looking to expand security into our Atlantis pipeline on a limited budget. After doing some research there are a lot of duplicate "Code reviewing/security vulnerability reporters/apps" so I'm curious if anyone uses a specific one in joint with Atlantis/ can offer some guidance on where to look. Thanks!

https://redd.it/fnr4fk
@r_devops
CI builds for windows and MacOS

I am trying to do desktop builds for MacOS and Windows. I am trying to Jenkins, but I wanted to know what other people are using to do this?

https://redd.it/fnq6gv
@r_devops
Deployment workflow for multiple Kubernetes clusters

As a DevOps engineer I am currently maintaining a large website of an insurance company. At the moment we are in the migration phase of the whole application stack into a Kubernetes cluster.

More specifically, I am talking about several clusters. The environments for Dev, Testing and Production are each deployed in a separate clusters.

Each Git branch is deployed into its own cluster (development => dev, stage => testing, master => production, feature-1 => dev-f1).

Additionally, more clusters for load testing and for new developments of (large) features will be set up.

Currently, I use [Buddy](https://buddy.works/) as CI/CD tool. I have set up several pipelines to build the docker images, additionally there is one deployment pipeline per level and application. As you can imagine, I quickly come up with a considerable amount of different pipelines.

To deploy the docker image to the correct Kubernetes cluster, I check the current branch with a shell script and then set the commit ID in a variable (e.g. `USER_SERVICE_IMAGE_DEV`, `USER_SERVICE_IMAGE_TEST`, `USER_SERVICE_IMAGE_PRODUCTION`). Unfortunately, the variables cannot be created dynamically, so I need to manually create a new variable when a new Git branch is added.

I then use this variable to build the Docker Image and push it into the Docker Registry.

In the build pipeline (which I run separately) I read the variable again to load the current image and deploy the corresponding version to Kubernetes.

I started with this method to quickly start provisioning the Kubernetes clusters, but now I realize that the management of the different branches, clusters and pipelines becomes very complex.

As soon as a new cluster is set up, I have to adjust the build scripts to account for the new git branch.

Do you have a similar setup in your environment? How do your CI/CD processes look like? Are there any tools that can improve my workflow?

https://redd.it/fnfooh
@r_devops
This Week In DevOps

Google Cloud Next was just postponed "until further notice". Does anyone have an interest in online conferences focused on DevOps?

Other announcements were fairly light this week but some preview releases went out and we did have a new Terraform Provider announcement from Hashicorp. To read more check out: [https://thisweekindevops.com/2020/03/23/weekly-roundup-march-23rd-2020/](https://thisweekindevops.com/2020/03/23/weekly-roundup-march-23rd-2020/)

https://redd.it/fnzw58
@r_devops
Help with Jenkins and 'npm test'

Hello.

I am trying to run npm test on a Jenkins pipeline, but as soon as it tries to run, I get an error message saying "Cannot find module ./env.js". Any ideas as to what is going on? I've been stuck on this for weeks now.

Thanks.

https://redd.it/fnwvrb
@r_devops
Need Recommendation for Secrets Management

My company has several pieces of data that contains sensitive information that our employees use on a regular basis. It's not gigabytes of data, but rather just a few spreadsheets worth of stuff. We want to isolate each "document" of data which are of the following types:

* Server Info
* Username/PW for Customer Administration websites
* Spreadsheets with contact details, contract details, etc.

Additionally, we would like to use the same solution as a credentials manager for our users, so plugins for Chrome and Firefox are a must.

Currently I am leaning towards LastPass because it allows me to do all of this.

Other features we need:

* Data ownership (assign a user to own a Datum)
* Ability to share/deny access to any Data by user
* Ability to immediately revoke access to any Data by user

We are using Azure AD for user management and if the solution can use Windows Credentials to authenticate the user and not nag them for credentials all the time would be great.

We are not married to any vendor or platform. Non-Windows solutions need to have a Docker container we can host on Azure.

Thanks!

https://redd.it/fnw5zl
@r_devops
Ansible 101 by Jeff Geerling - new series on YouTube

Wednesday, March 25, at 10 a.m. US Central (3 p.m. UTC), [Jeff Geerling will be doing a weekly 1-hour live-streaming series, "Ansible 101 with Jeff Geerling."](https://www.jeffgeerling.com/blog/2020/ansible-101-jeff-geerling-new-series-on-youtube)

Twitter [Tweet by Jeff Geerling](https://twitter.com/geerlingguy/status/1241538147126775809?s=19)
Considering adding a weekly livestream “Ansible 101” teaching Ansible automation following the book https://t.co/jk6G0An9gb — would you be interested?

https://redd.it/fnb5iv
@r_devops
Free DevOPS Boos: You can get DevOps books by Jeff Geerling free the rest of month of March'2020

Via Jeff Geerling's post [about free DevOPS eBooks](https://www.jeffgeerling.com/blog/2020/you-can-get-my-devops-books-free-rest-month).

The ongoing Coronavirus/COVID-19 pandemic and bear market made Jeff Geerling - The Author realize how beneficial it has been to be adaptable in the tech industry. There are no guarantees in life, and the ability to earn a livelihood is probably the most underrated important aspect of overall health. Most people take it for granted until they are deeply affected by it.

He made his two books, Ansible for DevOps and Ansible for Kubernetes, free for anyone who wants to learn a new skillset as a buffer against possible coming layoffs.

[You can get my DevOps books free the rest of this month
](https://www.jeffgeerling.com/blog/2020/you-can-get-my-devops-books-free-rest-month)

- [Ansible for DevOPS - Leanpub - eBook](https://leanpub.com/ansible-for-devops)

- [ Ansible for Kubernetes -eBook](https://leanpub.com/ansible-for-kubernetes)

Thank you Jeff Geerling !

https://redd.it/fnbblb
@r_devops
How to Run GitlabCI jobs as a user other than root? (Docker as GLCI Runner executor)

I am a student attempting to learn about Gitlab by working on a hobby project so I apologize in advance if this is not the appropriate sub to ask this question. I will try to make this as short as possible.

I have a Digital Ocean droplet configured as a GitlabCI Runner using the Docker executor. I am still learning about Docker as well so I apologize if my problems turn out to be a misunderstanding of Docker rather than GitlabCI.

Essentially I am trying to execute a pipeline job in which the user within the Docker container for that job is NOT root, and I cannot figure out how to achieve this.

The reason running as root within a job's Docker container is a problem is that certain commands will not function correctly via the root user. Attempting to install/ configure CocoaPods is apparently one such case, yielding the following output.

I have spent hours trying different shenanigans including creating a user within the job and attempting to login as that user, but none of these methods have been successful and the container continues to be run in the context of the "root" user.

Is there a way to run my pipeline jobs as a user other than root, and what are the best practices (or even general practices) regarding this. Once again I apologize if I misunderstand something about Docker, please let me know if this is the case.

My problem is very similar to the question posed here, however, none of the solutions seemed to solve the problem:

https://stackoverflow.com/questions/48576412/running-gitlab-ci-pipeline-jobs-as-non-root-user


/root/.gem/gems/claide-1.0.3/lib/claide/command.rb:439:in \help!': \\e\[31m\
[!\] You cannot run CocoaPods as root.\\e\[39m (CLAide::Help)

\\e\[4mUsage:\\e\[24m

$ \\e\[32mpod\\e\[39m \\e\[32mCOMMAND\\e\[39m

CocoaPods, the Cocoa library package manager.

\\e\[4mCommands:\\e\[24m

\\e\[32m+ cache\\e\[39m Manipulate the CocoaPods cache

\\e\[32m+ env\\e\[39m Display pod environment

\\e\[32m+ init\\e\[39m Generate a Podfile for the current directory

\\e\[32m+ install\\e\[39m Install project dependencies according to
versions from a

Podfile.lock

\\e\[32m+ ipc\\e\[39m Inter-process communication

\\e\[32m+ lib\\e\[39m Develop pods

\\e\[32m+ list\\e\[39m List pods

\\e\[32m+ outdated\\e\[39m Show outdated project dependencies

\\e\[32m+ repo\\e\[39m Manage spec-repositories

\\e\[32m+ setup\\e\[39m Setup the CocoaPods environment

\\e\[32m+ spec\\e\[39m Manage pod specs

\\e\[32m+ update\\e\[39m Update outdated project dependencies and create
new Podfile.lock

\\e\[4mOptions:\\e\[24m

\\e\[34m--silent\\e\[39m Show nothing

\\e\[34m--version\\e\[39m Show the version of the tool

\\e\[34m--verbose\\e\[39m Show more debugging information

\\e\[34m--no-ansi\\e\[39m Show output without ANSI codes

\\e\[34m--help\\e\[39m Show help banner of specified command

from /root/.gem/gems/cocoapods-1.9.1/lib/cocoapods/command.rb:47:in \`run'

from /root/.gem/gems/cocoapods-1.9.1/bin/pod:55:in \`<top (required)>'

from /root/.gem/bin/pod:23:in \`load'

from /root/.gem/bin/pod:23:in \`<main>'

Running after script

00:01

Uploading artifacts for failed job

00:02

ERROR: Job failed: exit code 1



Thank you for your help!

https://redd.it/fnas1v
@r_devops
Team was reOrg'd this year, not getting any direction from Execs/Senior Management, Need advice/guidance/suggestions/etc.

Hi all, reaching out to the community as a last resort of sorts. This year has been a serious struggle for me and has literally sent me into a mental illness spiral of issues due to several things, this topic being a huge part of it, plus being overloaded and forcing me to stay in the weeds to meet/attain goals/tasks and not being able to focus on Managing. Anyway, any suggestions/advice/guidance/etc on how to handle my situation here would be much appreciated. Thanks in Advance!!

So at the end of December last year Execs decided to reOrg my team from Operations to the Development Team to attain a better model for feature delivery and improved availability/sustainability of the system. Some of my teams responsibilities are 24x7 sustain support of the core Business Applications (through a relentless Oncall Rotation), Develop Alarms for the Service, Automate things that weren't, Deploy and Coordinate updates that were delivered, Integrate/Architect solutions (Dev Teams don't have a big picture view of anything).

Previously, due to the different Orgs, there were various lines and processes established which enabled some separation of duties. This enabled Devs to throw things over the fence, in a way, which fell to my team to have to handle (some integrations/architecture/Networking/etc), but this forced some responsibility onto them for Apps that we weren't sustaining/supporting. From an outward prospective, things looked to be running properly internally and that there was a lot of order, but now in the new Org, I have noticed its more Wild West and some take advantage of this to their benefit. This has now lead to them trying to force various items onto an already taxed team.

Come to find out, Execs had no plan, no idea of how to integrate my team into existing Org. But they are asking that I come with a Charter with the only direction being they want us to adopt a more Site Reliability Engineering model. This was something I had attempted in the past but without much Buy-In at the time, so I am optimistic with them stating this. But I do not know where/how to start, what responsibilities should be on my team vs devs vs shared. Essentially how to break the cycle/spiral of crazy that is driving me down a path of worsening mental illness.

If you made it this far, Thanks for reading!!

https://redd.it/fo7rve
@r_devops
HashiTalks2020: Enterprise Deployment to Azure and AWS in Azure DevOps Talk Link

Here's my HashiTalks2020 presentation about my company's transition from single-cloud, single-devops to cloud agnostic Terraform and multicloud Azure DevOps, pipeline and infra-as-code environments. 25min presentation. #Terraform #DevOps

[Enterprise Deployment to Azure and AWS in Azure DevOps](https://www.hashicorp.com/resources/enterprise-deployment-to-azure-and-aws-in-azure-devops)

I think it's an interesting first-person take on our journey from CloudFormation-focused AWS-only DevOps organization to a multi-cloud, generalized provisioning tool environment, and the mistakes we made along the way.

And here's a [direct link to the YouTube recording](https://www.youtube.com/watch?v=Q3w37iACSFQ&feature=emb_title).

https://redd.it/fo72q4
@r_devops
What challenges would I face to migrate from AWS (eks) to a DIY Kubernetes cluster? Or is it worth to do so?

Hi,

Before anything else I think it's important to say that I started working with Kubernetes for about half a year and currently working alone in the devops team at the company I work for.

I recently finished the configuration of my cluster with rs, load balancing, monitoring, hpa and ca to run our product on EKS but one thing is getting in the way, cost to maintain the infrastructure required (2\~3 EC2 M5.large).

One suggestion from the board was to find other providers to DIY Kubernetes into them because the on-demand cost on them is much cheaper for machines with better specs (8gb on aws to 32gb in the new provider). But since I would be alone doing this it would take some time to get everything up and running and then more time to keep it up to date and running.

In which way migrate/replicate my already existing cluster which is managed by AWS to a DIY manner would be cost effective given my current situation and the costs of just hosting it?

Thanks.

https://redd.it/foae8r
@r_devops
Octopus Deploy Blog - Using DbUp and Octopus workers for database deployment automation

DbUp is a tool that is focused on running schema migrations for a range of different RDBMS.
This is an update of an older post that covers off some of the more recent changes to DbUp and Octopus Deploy.
[https://octopus.com/blog/dbup-database-deployment-automation](https://octopus.com/blog/dbup-database-deployment-automation)

https://redd.it/fofvdp
@r_devops
Video on how to take ANY AWS Certification Exam from Home or Office

Did you know that you can now take any AWS certification exam from your home or office? AWS has just announced additional support in extending certification expiration dates, exam retirements dates (SAA-C01 and BDS-C00) and voucher expiration dates.

Watch this video to learn more about the latest updates from AWS especially if you have been affected by exam center closures caused by the Coronavirus (COVID-19) pandemic.

[https://youtu.be/Wtp4GZHcq-8](https://youtu.be/Wtp4GZHcq-8)

https://redd.it/foj53e
@r_devops
What is the relation between message broker and message oriented middleware?

https://en.wikipedia.org/wiki/Message_broker says

> A message broker (also known as an integration broker or interface engine[1]) is an intermediary computer program module that translates a message from the formal messaging protocol of the sender to the formal messaging protocol of the receiver. Message brokers are elements in telecommunication or computer networks where software applications communicate by exchanging formally-defined messages.[1] **Message brokers are a building block of message-oriented middleware (MOM) but are typically not a replacement for traditional middleware like MOM and remote procedure call (RPC)**

https://en.wikipedia.org/wiki/Message-oriented_middleware says

> Message-oriented middleware (MOM) is software or hardware infrastructure supporting sending and receiving messages between distributed systems.

> The primary disadvantage of many message-oriented middleware systems is that **they require an extra component in the architecture, the message transfer agent (message broker)**. As with any system, adding another component can lead to reductions in performance and reliability, and can also make the system as a whole more difficult and expensive to maintain.

What is the relation between message broker and message oriented middleware?

1. What does it mean by "Message brokers are a building block of message-oriented middleware (MOM)" and "but are typically not a replacement for traditional middleware like MOM"? Does it mean that a component of something can't be replacement of that something?

2. Is message broker a component of message oriented middleware? What other components does message oriented middleware have?


3. Is it correct that message broker and message oriented middleware can be

- message queue,
- publish-subscribe, or
- both?

Thanks.

https://redd.it/foq3ok
@r_devops
Why are there such a lack of learning resources for azure devops as compared to jenkins?

I am a developer who wants to learn devops to be a better developer. MY organization uses azure devops. They do not use jenkins. But everywhere I looked pluralsight or udemy I could not find any reasonably good course on azure devops. However there are plenty when it comes to Jenkins. Should I just learn Jenkins instead? Would that help me grasp azure devops relatively easier in future?

https://redd.it/fov1m6
@r_devops
Python/Linux AWS Question

Just passed my CPP and going for my SA- Associate then Dev-Associate before I go for a junior engineer job within my company

Is it necessary to learn linux or can I get by with just being proficient in coding (python)?

https://redd.it/fp1rsw
@r_devops
Tell us the good and the bad of your company CI/CD set up ?

How did you guys set it up ? What tech stack did you use ? Did you automate it every step of the way or some part has to be manual. Was there a situation where you had to cut corner for a specific use case ? Would love to hear your story :)

https://redd.it/fp1iya
@r_devops