As a continuation of the HashiCorp / Terraform topic, I would suggest you an article by Yi Lu “The Pains in Terraform Collaboration”.
Problems discussed in this article may not be new to the Terraform users. Those are good old: state management, organization of the environments, merge-apply dilemma, etc.
Yet, the author points out the approaches different tools leverage to overcome those issues. Also, hopefully this article will motivate you to use Atlantis if you aren’t using it already.
#terraform #hashicorp
GitLab is adopting FluxCD as its GitOps engine.
This is process has just started. So, GitLab's own Kubernetes agents remain the same and, according to this article, likely won't be deprecated till 2025. However, the GitOps functionality is transitioned into the maintenance mode.
Also, this article contains the justification behind Flux. Mainly, it was chosen because it fully relies on Kubernetes API, while Argo provides it's own API and UI, which is harder for GitLab folks to integrate into their own product.
#cicd #gitops #gitlab #kubernetes
HUG Kyiv #16: Terraform will start in 2 hours!
What:
- Deploy apps to K8s with Terraform
- RenovateBot: what, why, and how we use it
Who:
- Andrii Veklychev, SRE @ LiveLink Technology
- Maksym Vlasov, CatOps Engineer @ Star
Where: Zoom (registration here), Youtube
Language: Ukrainian
Today’s Donations Monday is a reminder about the Cyberdef fundraiser by Come Back Alive.
The goal is to raise 50M UAH for telecom and compute equipment. Currently, about 40% is covered.
#donations #Ukraine
One of the “because we can” tools: cfnctl adds Terraform commands when working with CloudFormation.
The idea is that you still have to write CloudFormation templates but the tool adds commands like plan, apply, destroy, and output.
#aws #tools
A new episode of our voice chat is here (in Ukrainian)!
This time we talked a little bit about observability and deploy of AWS Lambdas. You can find it on:
- YouTube
- Spotify
- Apple Podcasts
- Google Podcasts
Enjoy!
Also, I used AI-based voice enhancement by Adobe in this episode. So, let me know if it's better this way in the chat. Also, if you want to participate in the upcoming voice chats, do not hesitate to join! We usually do those each other Thursday at 20:00 Kyiv time. The next one will probably be next week.
P.S. If you want even more than that, DOU is currently looking for hosts for their own DevOps-themed podcast! If you want to be one, make sure to fill out that form!
#voice_chat #говорилка #observability #serverless
An article about why you should think twice before using Alpine Linux for your container images.
In nutshell, Alpine uses musl
- an implementation of C standard library and many things depend on C standard library including DNS. Since musl
doesn’t support DNS over TCP by design, you may get nxdomain
errors if the DNS response is more than 512 bytes. And it can happen in Kubernetes.
TBH, Alpine got more stable in the recent years, but still…
The article also provides some alternatives like Wolfi, UBI, and of course, Debian/Ubuntu images. You can use Distroless images as well if you are looking for a small and secure images.
Also, here’s a related Reddit thread, so you can follow the discussion there as well.
#docker #alpine #dns #Kubernetes
The new CatOps Digest is here!
Also, now you can access CatOps newsletter on its own domain: https://newsletter.catops.dev/
Have a nice day 👋
#newsletter #digest
You can know inside Terraform is a resource already known during plan stage or will be known only after apply.
That could be a useful hack to avoid "for_each" value depends on resource attributes that cannot be determined until apply
error in cases when it could happen and still be able to use nice naming, that does not trigger resource recreation in case of list values change/reorder.
P.S. Not sure that it should be used anywhere at all.
#terraform
Docker Buildkit has a new `COPY --link` feature.
With --link
enabled, files added with COPY
won't be copied to the previous layer, but a new layer will be created. This can help you to better cache specific things and accelerate your Docker builds.
#docker
Today's Donations Monday also goes to Come Back Alive.
Long hands of the Territorial Defense has accumulated 75% of its goal already and 7 regions have closed their goal. Let's help other TRDs complete their objectives as well!
If your region is already all-set, you can always help your neighbors or regions that have fewer donations, or Luhansk, which is the next in line.
#donations #Ukraine
Some time ago (initial commit on the 2nd of May 2021) I started a small side-project - an Awesome List of Ukrainian IT Communities.
There are more than 60 chats, groups, channels, and other resources mentioned there already! And I would appreciate if you help to make this list even more awesome 😎
Your PRs are very welcome!
Also, there is web view if you prefer that.
#culture
The recording of our latest voice chat (in Ukrainian) is already available!
This time we were talking about dynamic (and not only) development environments in a cloud.
As usual, you can listen to it on your favorite platforms:
- Spotify
- Apple Podcasts
- Google Podcasts
- Anchor
It is also available on YouTube
Also, I would appreciate it if you rate CatOps on the platform you’re listening to it or put your 👍 on YouTube.
P.S. If you would like to listen to CatOps on a platform that is currently not available, please, let me know in the chat.
#voice #говорилка
A technological Donations Monday!
One of the biggest Ukrainian charity foundations - Come Back Alive - has announced a "Cyber Fundraiser" together with Portmone.
The goal is to collect 50M UAH for cyber defense and offense. Currently, only 19% is reached.
#donations #Ukraine
As you may have heard, LastPass had a breach recently.
And it looks like things are chaim_sanders/its-all-bad-news-an-update-on-how-the-lastpass-breach-affects-lastpass-sso-9b4fa64466f6">more complex comparing to the initial “some encrypted data was retrieved”.
According to this article, organizations need to re-onboard their users with SSO provider (if they used any) to ensure that their data is secure in LastPass.
Reddit discussion.
#security
Video from the 16th HashiCorp User Group Kyiv meetup (in Ukrainian) is available now!
If you were wondering what to watch on Friday, you have a perfect candidate!
Topics of this meetup:
- Deploy apps to K8s with Terraform
- RenovateBot: what, why, and how we use it
#slides #hashicorp #terraform #kubernetes
And back to events.
Videos from the Kubernetes Community Days Ukraine are now available on YouTube!
Enjoy more than a dozen talks from the leaders of the industry!
#slides #kubernetes
My boss from one of the previous jobs has written an article about algorithms that an SRE should know.
This is not a comprehensive article that describes each of them, rather a list that one can use to dig further. The list contains some load balancing, distributed consensus, and health check algorithms that we encounter every day but seldom think how they work under the hood.
#algorithms #programming #sre
Just a reminder that our Kubernetes Operations Survey is still open! The goal of this survey is to better understand so-called 2nd day operations on Kubernetes e.g. upgrades, migrations and maintenances.
I would really appreciate it if you can spend a couple of minutes to complete it. Thanks a lot!
#kubernetes
I love reading postmortems. A good postmortem usually unveils a set of problems some of which you can have in your company as well. As they say: there is never a single root cause.
Here is a postmortem from Reddit about their Pi-day outage.
It has everything you love: complex systems, legacy software, processes that were not tested that well, sacred knowledge that is long gone, etc.
Don’t get me wrong, I’m saying that not to shame Reddit. In fact they did a great job highlighting all the problems. It’s much harder and takes more courage than just say: Calico broke - Calico bad.
Also, I have similar problems at my place as well and I bet you have too. This why it’s important to recognize the importance of such “low priority tech debt”. Cleaning that out may save your company’s ass someday.
#kubernetes #networking #postmortem
HUG Kyiv #16: Terraform
What:
- Deploy apps to K8s with Terraform
- RebonateBot: what, why, and how we use it
Who:
- Andrii Veklychev, SRE @ LiveLink Technology
- Maksym Vlasov, CatOps Engineer @ Star
When: Tuesday 28th March, 19:00 (Kyiv TZ)
Where: Online
Language: Ukrainian
Please, register here
#event
Today I want to remind you about the UA Responders foundation that is gathering funds for tactical medicine.
They accept donations via cards, PayPal, and bank transfers. Also, they have a legal entity in Poland, so it's easy to transfer money inside the EU.
#donations #Ukraine
We are not about Marketing, but today's neat peak is:
Bad communication is a key to being remembered by millions of users.
https://www.docker.com/blog/we-apologize-we-did-a-terrible-job-announcing-the-end-of-docker-free-teams/
And not so great news about Docker.
Apparently, Docker is now deleting Open Source organizations.
Basically, the bottom line is that you cannot have an organization on a free account. At the first glance, it looks ok: you want a production-grade SaaS - you pay for it.
The main concern is that there's no official statement from Docker that existing names of such organizations will be locked, so no one can get those except original owners, even with paid accounts. Otherwise, it will open a gate for potential malicious code injection attacks.
#docker
UPD: Ah, sh*t, the Google Form was disabled! I have enabled it, so not it should work as expected.
A new Kubernetes operations survey by CatOps.
Last year I did a Kubernetes operations survey. You can find the results here.
There are things that would be interesting to observe in dynamic. Thus, I decided to make it an annual survey. Last year there were 102 responses, I hope there will be more this year. So, I would very appreciate it, if you could spend a couple of minutes to complete it.
I will share the results here, of course.
#kubernetes #survey
A graphical explainer of how CORS works.
BTW, you can subscribe to this author on Substack. They post very nice zines from time to time!
#cors #web
It’s not a security-focus channel, but I post security-related things from time to time.
There is a book bundle related to cybersecurity on sale at Humble Bundle.
I cannot judge the quality of those books since I’m not an expert. Yet, hopefully it may be interesting to some of you.
#security
Spegel is an in-cluster OCI registry mirror.
It allows nodes to pull images from other nodes in a cluster when a public registry (or your private registry) is not available.
It can also help you to avoid rate limiting and decrease outside traffic if you’re using public registries to pull images in your clusters.
#kubernetes
The first spring issue of the CatOps Newsletter in live!
https://catops.substack.com/p/catops-digest-2023-03-05
#newsletter
Remember those interview questions: “What happens during Linux boot process”, “What happens when you open a link in your browser”, and so on?
Well, the new age has come with questions like “What happens when you you do kubectl <command>
”. I was actually asked this question on one of the interviews.
And here’s a guide on GitHub that explains just that.
P.S. Sorry, if I have shared it already. I’m going through some of my old bookmarks and trying to figure out, if there’s anything valuable in there. So, expect some old articles here.
#kubernetes