Reddit DevOps
272 subscribers
22 photos
31.3K links
Reddit DevOps. #devops
Thanks @reddit2telegram and @r_channels
Download Telegram
Larry Ellison on cloud computing - has this aged well?

13 years ago Larry Ellison dismissed Cloud Computing as another fad

"Maybe we'll just change some of the wording on our ads"

"The computing industry is the only fashion industry that changes faster that the clothing fashion industry"

"They said open source was going to kill our software"

"The first thing they said was mainframes are going to die, but watching mainframes die is the slowest thing ever"

Was he right in some ways, too dismissive in others? What do you think?


Video for context/source:

https://youtu.be/0FacYAI6DY0

https://redd.it/urw2yk
@r_devops
Automate All the Boring Kubernetes Operations with Python

Hi /r/DevOps,

Today I published an article titled "Automate All the Boring Kubernetes Operations with Python", where I explain how you can use Python's Kubernetes client library to automate common tasks such as creating/patching resources, watching events, accessing containers and more.

Here's the link: https://betterprogramming.pub/automate-all-the-boring-kubernetes-operations-with-python-7a31bbf7a387

Feedback is very much appreciated!

https://redd.it/us72zr
@r_devops
Lessons Learned Using Vault As A Secret Store

Hi,

some time ago I have presented on a local meetup on a topic of Secrets Management and so I have collected my notes on HashiCorp Vault operation and put it to a blog post. Hope someone finds it useful.

https://www.malgregator.com/post/lessons-learned-using-vault-secret-store/

https://redd.it/usb0ys
@r_devops
About to give up on GitLab (ACL). Any advice appreciated

Disclaimer: Forgive me if If this has been asked before and I just fail at searching or if I'm violating any post guidelines.

​

Quick notes:

Licensing level is flexible. Saving money is good but meeting our goals is better

We have a partitioned, seperate lower env vs prod env, jenkins environment currently. This solves all of our regulatory requirements for separation of duties but jenkins is a lot more hands on, jenkins groovy dsl and addon management is a constant cat mouse issue, and we would like to divest ourselves of custom code where possible ease the maintenance burden.

​

High level goals:

Allow developers to execute pipeline actions/deployments to lower level environments.

Prevent developers from starting any pipeline actions that would result in a deployment to production/ protected environments. Allow a separate privileged group to perform these actions.

​

Basic problem:

Gitlab pipeline ACL is controlled by the yml config. There doesnt seem to be a way to both limit what access groups/users have access to execute on a pipeline at a granular enough level.

​

What has been tried:

* Configuring runners to only be accessible to certain groups and structure group membership in different ways to allow a pipeline to \*see\* a runner but only in for certain user logins
* Result: Doesnt seems workable. Runner visibility seem to be binary, the job can either see the runner or it cant. If it can see it then it can run on it and if it cant, well it cant. there doesnt seem to be any user context to filter on.
* Creating parent Gitlab yamls in other project that are locked to specific groups for editing and used as the base configuration for all other pipelines to inherit from.
* This works well from a yml config sharing perspective but there doesnt seem to be a way to **force** a project inherit from these configs. A user can simply write their own config and targe a production runner and potentially break something. And even if you lock down the merging and setup protected branches, pipelines can be run on branches and use whatever tml is also in that branch so the user could break production with a branch version of a yml config
* Creating protected environments - this seems like its the encouraged path to protect deployments but it seems... incomplete?
* Were still kind of exploring this option but its not obvious to us yet how this will be any better then the above two scenarios

​

Stuff not tried yet:

* publishing artifacts to a different location in gitlab and locking down the pipeline deployment from there.
* seems doable but also kinda defeats the purpose of having a nice connected pipeline to watch a artifact move through the envs
* Plugins or Addons
* not opposed to it but havent explored it enough. somewhat hesitant about external modifications just to achieve what seesm to be very basic acl

https://redd.it/usf09a
@r_devops
Larry Ellison on cloud computing - has this aged well?

13 years ago Larry Ellison dismissed Cloud Computing as another fad

"Maybe we'll just change some of the wording on our ads"

"The computing industry is the only fashion industry that changes faster that the clothing fashion industry"

"They said open source was going to kill our software"

"The first thing they said was mainframes are going to die, but watching mainframes die is the slowest thing ever"

Was he right in some ways, too dismissive in others? What do you think?


Video for context/source:

https://youtu.be/0FacYAI6DY0

https://redd.it/urw2yk
@r_devops
do you read devops news?

I work with several clients in the DevOps / DevSecOps space and I'm curious what news / websites you look at for industry news?

If you don't care to read industry news, but prefer blogs, podcasts, etc. please share those insights too!

https://redd.it/usje9o
@r_devops
What makes a good DevOps manager?

Interested to see what everyone thinks makes a good DevOps manager. What things should they do? What should they avoid doing? What makes them a top 10% manager? What do you hate when a manager does? What matters most to you about your manager?

https://redd.it/ustzqj
@r_devops
How do you document CI/CD: containers, pipelines, toolchains, etc?

as the title explained: how do you document your containers, pipelines, repositories, environments, etc... ?

​

do you have anything automated? do you follow any convention, any framework?

​

as for me, i manage a huge gitlab space, we've 200-300 repositories, with 20-30 centralized pipelines. we are dealing with python, java, node pipelines. quality gates with sonarqube, xray and other security tools. we are dealing with an artifactory and a sonatype instance.

we've also a legacy jenkins instance with 30, 40 pipelines. we're usign maybe a 100 vms divided in various clusters.

we release a product that is composed by almost 20 containers, and we manage 3-4 releases in parallel.

as an architect i've inherited a confluence space with a huge mess of pages and sections. basically documentation is unexisting.

pipelines are not documented and I don't have any clue how to start organize things. i'm leading 4 team mates and all devops/ci-cd activities are "oral handovers"

to start automatizing things i've written a python script that parses the ansible hosts.ini and publish on confluence the list of environments/server. it's integrated into a gitlab pipeline, so anytime someone updates the hosts.ini, confluence page gets updated. it's just a simple thing, but still useful to the developers team

https://redd.it/ut397y
@r_devops
How do you document CI/CD: containers, pipelines, toolchains, etc?

as the title explained: how do you document your containers, pipelines, repositories, environments, etc... ?

​

do you have anything automated? do you follow any convention, any framework?

​

as for me, i manage a huge gitlab space, we've 200-300 repositories, with 20-30 centralized pipelines. we are dealing with python, java, node pipelines. quality gates with sonarqube, xray and other security tools. we are dealing with an artifactory and a sonatype instance.

we've also a legacy jenkins instance with 30, 40 pipelines. we're usign maybe a 100 vms divided in various clusters.

we release a product that is composed by almost 20 containers, and we manage 3-4 releases in parallel.

as an architect i've inherited a confluence space with a huge mess of pages and sections. basically documentation is unexisting.

pipelines are not documented and I don't have any clue how to start organize things. i'm leading 4 team mates and all devops/ci-cd activities are "oral handovers"

to start automatizing things i've written a python script that parses the ansible hosts.ini and publish on confluence the list of environments/server. it's integrated into a gitlab pipeline, so anytime someone updates the hosts.ini, confluence page gets updated. it's just a simple thing, but still useful to the developers team

https://redd.it/ut397y
@r_devops
Devops more ops then dev?

If I look at the current state of DevOps in my country (Netherlands) it has not become what I expected.

Instead of seeing developers maintaining their own infrastructure work or developers and operations working together in one team. In my opinion it's nowadays some ops guys doing some DevOps work like: IaC, writing CI/CD pipelines for developers, maintaining stuff (observability) etc.

Is this really what it become? and does this sound familiar to you guys? Im quite dissapointed to be honest as a junior

https://redd.it/ut3kgu
@r_devops
What makes a good DevOps manager?

Interested to see what everyone thinks makes a good DevOps manager. What things should they do? What should they avoid doing? What makes them a top 10% manager? What do you hate when a manager does? What matters most to you about your manager?

https://redd.it/ustzqj
@r_devops
Calculating supply chain risk, math question

Can someone ELI5? Or ELI18 maybe? I was reading a document on an organization's DevOps strategy today and came across this statement:

>If the compiler is 90% secure, the code repository is 90% secure, the artifact repository is 90% secure, and the container orchestrator is 90% secure – the overall system is not 90% secure. The cybersecurity level of the end-to-end ecosystem is actually .9 * .9 * .9 * .9, or roughly 65% secure.

I don't get it. I mean, first off, I don't get what it would mean to be "X% secure" in the first place. But even accepting some intuitive sense of that, if a security event happened in 1 out of the 10 times that step 1 occurred, and in 1 out of the 10 times that step 2 occurred, then it occurs in 2 out of the 20 times... wait, that's not right. Okay, so you have 10 possible situations for step 1, 9 of them being safe and 1 being a security event. After that you have another 10 possible situations or events. So you map out each possible path. There's 100 possible paths. 1 -> 1, 1 -> 2, 1 -> 3, so on to possibility 2 in step 1, which could then be 2 -> 1, 2 -> 2, 2 -> 3, etc.

Ah. Okay. With four steps of ten possibilities each, that's 10,000 possible sequences. Out of that 10,000, to go through only safe events you'd have to hit one of the 9 safe events in the first step, and each of the 9 could only hit 9 of the events in the second step, and... that's how you get the formula they used in the quote. 9 * 9 * 9 * 9 = 6561. Then 6561 / 10000 = 0.6561 or "roughly 65%". I get it.

Hey good chat everybody. Nice to catch up. = )

https://redd.it/utcuwb
@r_devops
Better Language for Pulumi?

I'm going to spend some time this weekend trying out Pulumi.

Before I dig in though, I wanted to know if there were any particular issues with a supported language. We all know the marketing speak that they have all these supported languages, but in the real world, I'm guessing they probably have some shortcomings or are unequal.

Ignoring discussion of the language itself, are there sections of the SDK that aren't available in certain languages? Or all they all 100% compatible? Are there any common idioms in their SDK that just feel wrong or duck-tapey in certain languages? Are there 3rd party plugins or libraries that don't work with certain languages? Is the developer community stronger with certain languages? Docs better? The list could go on. I want the real talk from anyone who's spent time with it and felt the pain.

https://redd.it/utl0oh
@r_devops
Apply now or wait till i get my degree?

​

I'll shorten the whole thing,

\-i live in germany

\-my boss is getting on my nerves he is not a computer scientist or dev ,but an economist and has no idea what I do ...

\-I get too little money in my opinion ... 35k as a java developer they lured me with the fact that I already got 20k as a trainee last year which was quite ok as a trainee but now well....

\-what i do is currently pretty boring and i feel underchallenged

\-i get my cs bsc degree in about 11 weeks only

Should I apply somewhere else now or wait until I have my degree in the bag?

https://redd.it/uto3kg
@r_devops
Collectd crashes when enabeling apache plugin

After I enable collectd plugin for apache collectd crashes

I uncommented collectd.conf

<Plugin apache>
<Instance "tktestapache">
URL "https://127.0.0.1/server-status?auto"
</Instance>
</Plugin>

When I checked the status

systemctl status collectd.service

I am not able to find any specific reason why it is failing. Am I missing any step in setup?

collectd.service - Collectd statistics daemon
Loaded: loaded (/usr/lib/systemd/system/collectd.service; enabled; vendor preset: disabled)
Active: failed (Result: start-limit) since Fri 2022-05-20 12:09:13 UTC; 8min ago
Docs: man:collectd(1)
man:collectd.conf(5)
Process: 4302 ExecStart=/usr/sbin/collectd (code=exited, status=1/FAILURE)
Main PID: 4302 (code=exited, status=1/FAILURE)

May 20 12:09:12 ip-10-2-27-88.ec2.internal systemd1: collectd.service: main process exited, code=exited, status=1/FAILURE
May 20 12:09:12 ip-10-2-27-88.ec2.internal systemd1: Failed to start Collectd statistics daemon.
May 20 12:09:12 ip-10-2-27-88.ec2.internal systemd1: Unit collectd.service entered failed state.
May 20 12:09:12 ip-10-2-27-88.ec2.internal systemd1: collectd.service failed.
May 20 12:09:13 ip-10-2-27-88.ec2.internal systemd1: collectd.service holdoff time over, scheduling restart.
May 20 12:09:13 ip-10-2-27-88.ec2.internal systemd1: Stopped Collectd statistics daemon.
May 20 12:09:13 ip-10-2-27-88.ec2.internal systemd1: start request repeated too quickly for collectd.service
May 20 12:09:13 ip-10-2-27-88.ec2.internal systemd1: Failed to start Collectd statistics daemon.
May 20 12:09:13 ip-10-2-27-88.ec2.internal systemd1: Unit collectd.service entered failed state.
May 20 12:09:13 ip-10-2-27-88.ec2.internal systemd1: collectd.service failed.

https://redd.it/utv3so
@r_devops
mkincl - A simple way to reuse Makefiles and scripts across multiple repositories

Hey,

Here's the implementation of an idea I've been playing around with and I thought I'd share. The jist of it is to utilize Makefiles to construct reusable CI/CD pipelines that can be ergonomically executed locally.

https://github.com/mkincl/mkincl

https://redd.it/utyns3
@r_devops
Is Cloud Foundry relevant in 2022?

I get this question a lot and want to limit the options to a simple 'yes' or 'no'. I'm simply curious about everyone's gut reaction.

View Poll

https://redd.it/utyv7g
@r_devops
Should your Infrastructure as Code get its own repository?

Hey folks,


I would like to know your strategy with your IaC (terraform, ansible, ...) files. Do you prefer it in a separate repository, or do you share it within the repository of the application? Please explain why you made this decision and if your strategy has some downsides that you discovered.


Cheers

https://redd.it/uu1tcp
@r_devops
Time and Task management at work

I'm interested to know how you guys manage your tasks because especially in a devopsy role where devs want your time, something breaks, pd calls, plans for improvement, your own assigned tasks, also need to be learning and looking out for new things, its easy to get into some task and get sucked into it. I often forget something that I know is important to do, and makes me feel I did nothing at all. I know some senior people who handle this with ease, probably comes with experience, I feel I need some method to sort by importance, urgency and could it be ignored. How do I start planning these? I like the easy of planning on apps but doesn't work that well for me, reminders dont always ring on my android and I miss a lot of things, pen and paper is too much and I dont look at it often.

https://redd.it/uu415b
@r_devops