catops | Technologies

Telegram-канал catops - CatOps

5629

DevOps and other issues by Yurii Rochniak (@grem1in) - SRE @ Preply && Maksym Vlasov (@MaxymVlasov) - Engineer @ Star. Opinions on our own. We do not post ads including event announcements. Please, do not bother us with such requests!

Subscribe to a channel

CatOps

Sup! I'm back from vacationing.

First, I wanted to share something serious and fundamental-ish as the first post of the year. Unfortunately, I haven't read anything worthful yet :\

So, I want to share an episode from the ShipIT podcast, which is called "Fundametals". It was published a while ago, but I listened to it just recently.

I think it fits perfectly my idea to start this year on CatOps with something more interesting than just a link to a tool, etc. Enjoy!

BTW, this episode is also available on the major streaming platforms (I listened to it on Spotify). I won't provide the links, though, because I don't know which platform do you use. Also, their website has a transcript. So, if you prefer reading to listening, it's possible as well.

#podcast

Читать полностью…

CatOps

cURL is going to support an output of server certificates in PEM format using -w (write-out) options.

Support for these new -w variables has been merged into curl’s master branch and is scheduled to be part of the coming release of curl version 7.88.0 on February 15th, 2023.

Читать полностью…

CatOps

I like graphical representations of complex systems.

So, here you are: a zine-like scheme of the RAFT consensus algorithm

#raft #zine

Читать полностью…

CatOps

Disk encryption in AWS is close to useless and potentially harmful.

No, it’s not like AWS is going to do anything with your data.

tl;dr: Encryption at rest protects you from cases when someone steals your disk. However, such an attack vector is so hard in a cloud environment that it’s completely worthless for an attacker.

However, the correct implementation of the encryption at rest will take time and effort that you can put into real risk mitigation and security hardening instead.

#security #aws

Читать полностью…

CatOps

Last week we recorded one of our usual voice chats as a test. So, more people who were unable to join because of blackouts could listen to it.

Moreover, the topic of our voice chats was: “How to work without electricity, Internet access, and utilities”.

Although, we have touched other topics as well, as it usually happens:
- Starlinks and external antennas
- M1/2 MacBooks
- Ancient communication technologies

The recording is in Ukrainian and available on:
- YouTube as a static image
- Spotify
- Apple Podcasts
- Google Podcasts
- Anchor

Enjoy!

#voice #говорилка

Читать полностью…

CatOps

A quite old article on debugging a NodeJS AWS Lambda function.

Yet, I still want to share this one, because even if you don‘t have NodeJS functions specifically, the article has some insights on how to debug Lambda functions in general.

Also, there some take away points that would be relevant for any HTTP workload, not just JS.

#aws #serverless

Читать полностью…

CatOps

​​Not a technical post.

Today is the Volunteer Day. I want to dedicate this post to all the people who help daily our military forces as well as civilians.

Thank you for your work and dedication!

Now, I add a Linktree to each post that contains links to various volunteer organizations as well as other useful things. Today I want to share individuals and foundations I regularly support personally.

- Pavlo Bondarenko and Naya are collecting funds for recon drones and Starlinks for AFU. The both have PayPal, so it’s easy to send money from outside Ukraine. Pavlo is a friend of mine, we’ve been to Sziget Festival together a couple of times. Before the full scale invasion he was running a Ukrainian podcast production “Radio Podil”.
Pavlo’s links
Naya’s links

- UA Responders a foundation specialized on tactical medicine and other medical things. I know them, because my wife is actively helping there and my classmate helps them with logistics. They have Polish IBAN, so it’s handy to send money from within the EU. Obviously, they have other ways to accept donations as well.

- Come Back Alive. I mean, they do not require an introduction. This is the most famous and probably the oldest volunteer organization in Ukraine that helps UA military. Also, now they have a convenient web form to accept donations right in their website.

(image via @lachentyt)

#volunteers #Ukraine

Читать полностью…

CatOps

Here the FireHydrant company writes that MTTR (mean time to recovery) metric is overrated.

I tend to agree with their justification: not all incidents are the same. Not all systems are equally critical as well as not always the cause or rather a set of causes is easy to mitigate.

However, it’s still important to measure the quality of your incident response somehow. The propose two metrics instead:

- Mean time to detection - basically, how long it takes for you to spot a problem. I would also ask an additional question here: was a problem reported by your observability systems, or by your colleagues or customers?

- Mean time to retrospective - or mean time to postmortem if you wish. I think this is a good one. It’s true that some details may fade away from memory, so sooner you do a retrospective - the better! Also, it’s f you actually measure this time, it can help you to prioritize meetings and put postmortems as a higher priority comparing to, for example, a team standup.

#observability

Читать полностью…

CatOps

I remember people creating NAT instances in AWS because NAT Gateway was not available at a time.

Now, some claim that NAT Gateway is too expensive, thus nat instances is the way.

The circle is complete, I guess.

Anyways, here’s alterNAT - self provisioned NAT instances in AWS.

To be completely honest, there are use cases for NAT instances indeed and they do not claim that this solution is for everyone.

#aws #networking

Читать полностью…

CatOps

In case of major power outages, we can schedule deployment by a sheet of paper, and when power return - scan and use SheetOps.

https://github.com/learnk8s/xlskubectl

By the way, have a nice day :)

Читать полностью…

CatOps

A new issue of the CatOps Newsletter is live!

#newsletter

Читать полностью…

CatOps

This is a small nice article about how small changes could impact performance.

I like such stories very much. I believe, they expose the beauty of software engineering. Just like in maths classes complex equations result in something like x = 1.

Also, one can learn from this article a thing or two about the memory allocation in Go as well as some performance profiling techniques.

#programming #go #performance

Читать полностью…

CatOps

pgdump-aws-lambda is a ready-to-use Lambda function that creates a dump of your PostgreSQL database and streams it it S3.

There is already a native way to backup RDS databases. However, I can see a couple of use cases for this tool. For example:
- Backup databases that run on plain EC2 machines. I’m not sure if anyone does it today, but I worked in a company that did.
- Backup databases located outside AWS in case of hybrid setups. Obviously, it’s going to be challenging to configure such interconnection in a secure and reliable way, but if you’re using a hybrid setup, you already know what am I talking about.
- Use this Lambda function as a blueprint and extend its functionality. For example, obfuscate certain fields to create a non-production DB for tests, etc.

TBH, I’m not sure how it’s going to work with the 15 minutes hard limit for execution time for Lambdas, but you won’t find out unless you try, I guess.

So overall, an interesting project that I won’t likely use myself, but it might be fun to play with.

#databases #aws #serverless

Читать полностью…

CatOps

A nice technical article about volume snapshots in Kubernetes.

Kubernetes has a snapshot-controller with vendor-independent API. This article explains what are the benefits of using snapshots as well as provides several use case scenarios with configuration examples.

#kubernetes

Читать полностью…

CatOps

There's gonna be a couple of posts today, so here's the first one.

AWS now allows one to transfer Elastic IPs between AWS accounts.

That's it. These are the news. However, it's a significant change especially for those, who are in process of re-design their cloud architecture.

#aws

Читать полностью…

CatOps

​​З Новим Роком, коти!

Happy New Year!

Читать полностью…

CatOps

A nice overview of how Docker works on non-Linux hosts as well as an explanation, why I/O operations are so slow. Plus, some hints on how to make it faster for the local development.

tl;dr. Because Docker requires Linux capabilities, thus is has to have Linux VM to run Linux-based images on MacOS and Windows. This VM shares filesystem with the host, which is slow. There’s a new implementation VirtioFS, which is faster, but still not ideal.

We briefly discussed ways of running Docker on the new M-based Macs on our previous voice chat and this article has links to some tools we mentioned there, specifically: Rancher Desktop and Colima.

Also, I recall developers at my previous job complaining about slow-ish Docker performance, but IIRC VirtioFS was not widely adopted back then.

#docker #linux

Читать полностью…

CatOps

Monokle CLI is yet another tool to validate cnfiguration for the objects in your
Kubernetes clusters. It's a part of a bigger Monokle project and can be used as a CLI and integrated into your CI/CD pipeline.

For now it can validate:
- YAML syntax
- The schemas of your YAMLs against a configurable K8s version
- Links/references between Kubernetes resources
- A set of predefined OpenPolicyAgent (OPA) policies
- Custom rules written in typescript

Also, it looks like there's an active development around this tool at the moment. So, let's see, how it goes.

#kubernetes

Читать полностью…

CatOps

The new issue of the CatOps Digest came a little bit later, but it’s here now 🎉

#newsletter

Читать полностью…

CatOps

An “Awesome SLOs” list.

Books, articles, videos, and more.

Also, it’s open source, so feel free to contribute!

#slo #observability

Читать полностью…

CatOps

Here’s an article on Currying in Go. Currying is a technique borrowed from the functional programming. It’s essentially a partial implementation of a function.

Anyways, I find such articles interesting, because they show some unconventional angles of a language. I haven’t personally used currying in Go yet. However, examples in that article look reasonable. Maybe, one I day I will try it.

I’m not saying that you should use this technique in your code, but maybe you find it useful. In the latter case, you’re welcome!

#go #programming

Читать полностью…

CatOps

I try to be consistent with the digest even when I just want to lay on on a couch and watch some YouTube.

A new issue of the CatOps Digest is out!

#newsletter

Читать полностью…

CatOps

Kubeshark is an traffic viewer for Kubernetes providing deep visibility into all API traffic and payloads going in, out and across containers and pods inside a Kubernetes cluster.

I don’t have much to add here. This is basically a Wireshark for Kubernetes. So, if you probably know it if you need something like this. Otherwise, I would say that one can live Ok without it. Yet, if you ever need to analyze, what’s going on with requests in your cluster, you can always use this tool!

#kubernetes #networking

Читать полностью…

CatOps

​​Amazon has made 120 AWS courses available for free.

To get courses, you only need to know English and make a few additional steps:
0. Login OR Create an account in Amazon

After sign in/up, you will be redirected here
1. Choose and go to any course you like
2. Click "Order Now for free"
3. Get the error "Sorry, we couldn't complete your purchase". Press "change your country/region"
4. Click on the "Country / Region Settings". It will open with "Current country/region – Unknown"
5. Click Change
6. Now you need to enter absolutely any address and mobile phone from the USA. You can take any from here. The mobile phone must be indicated without spaces/brackets/dashes - i.e. only numbers.
7. Now you can return and get courses.

P.S. That works up to 9 Dec 2022. You can access courses up to 28 Apr 2023.
P.P.S. You can get only 6 courses if you click them one by one. But if you order many courses at the same time - the number of ordered courses will be limited to the number that you will have time to order before Amazon prepares 6 courses in your Amazon Online Learning cabinet. So click quickly to get more courses :)

Читать полностью…

CatOps

A neat summary for upgrading EKS to 1.24.

This article contains some considerations and action items before an upgrade as well as some points for future releases.

P.S. This article came from the chat. So, if you have interesting things to share, feel free to join it! The chat is in Ukrainian.

#aws #kubernetes

Читать полностью…

CatOps

Well, it’s happening. Pulumi now supports YAML in GA.

Here are my thoughts about this. The imperative revolution didn’t happen. We haven’t suddenly started to define the infrastructure in TypeScript or Go. Also, it looks like both approaches can co-exist just fine, even as a part of a single tool.

I think that the second point is great, because the users (we) have more options. Smaller setups can benefit from a simpler declarative way, while more complicated installations can leverage the whole power of general purpose languages.

#iac #pulumi

Читать полностью…

CatOps

A very interesting article about when to use AWS Lambda functions and when not.

The article explores a couple of serverless scenarios and whether it’s required to use a Lambda function there.

In nutshell: do not use Lambda when there’s a native integration between the components; and use it to transform data, not to transport it.

#aws #serverless

Читать полностью…

CatOps

Bi-weekly issue of the CatOps Digest is out!
You can check it out on Substack.

#newsletter

Читать полностью…

CatOps

So, recently I posted about the TLS vulnerability that was patched on the 1st of November.

Here someone gathered the list of affected operation systems and patched version references

Make sure to check if you’re covered!

#security #tls

Читать полностью…

CatOps

The whole purpose of managed services is that you don’t need to care much about many things except costs. Yet, cost management could be tricky in the cloud.

Obviously, there are many consultants and services that build their business model by helping people to save some bucks.

However, there are also community solutions.

For example, here’s a community calculator for AWS VPN and a similar calculator for Google Cloud VPN.

Bonus: Reddit discussion about the Google Cloud VPN Costs calculator.

#aws #gcp #costs #networking

Читать полностью…
Subscribe to a channel