The epic about system administrators as an endangered species

System administrators around the world, congratulations on your professional holiday!

We have no system administrators left (well, almost). However, the legend about them is still fresh. In honor of the holiday, we have prepared this epic. Get comfortable, dear readers.

The epic about system administrators as an endangered species

Once upon a time the world of Dodo IS was on fire. During that dark time, the main task of our system administrators was to survive one more day and not cry.

A long time ago, programmers wrote code little and slowly, and posted it on prod only once a week. So problems arose only once every seven days. But then they began to write more code and post it more often, problems began to increase, sometimes everything began to fall apart, and it became worse to roll back. System administrators suffered, but tolerated this farce.

They sat at home in the evenings with anxiety in their souls. And every time it happened β€œit never happened, and here again the monitoring sends a signal for help: Dude, the world is on fire!”. Then our system administrators put on their red raincoats, shorts over leggings, did a curl on their foreheads and flew to save the Dodo world.

Attention, a little explanation. There have never been classical system administrators who maintain hardware in Dodo IS. We immediately had advanced on Azure clouds.

What did they do:

  • if something broke, they made it so that it was repaired;
  • juggled servers at an expert level;
  • were responsible for the virtual network in Azure;
  • were responsible for low-level things, for example, the interactions of components (*whispering* in which sometimes they didn’t rummage around);
  • server reconnects;
  • and many other wild ones.

The life of a team of infrastructure engineers (as we called our system administrators) then consisted of putting out fires and constantly breaking test benches. They lived and grieved, and then they decided to think: why is it so bad, or maybe we can do better? For example, will we not divide people into programmers and system administrators?

problem

Given: there is a system administrator who has servers in his area of ​​responsibility, a network that connects him to other servers, infrastructure-level programs (a web server that hosts an application, a database management system, etc.). And there is a programmer whose area of ​​responsibility is working code.

And there are things that are at the junction. Whose responsibility is this?

Usually, our system administrators and programmers met just at this junction and it began:

β€œDudes, nothing works, probably because of the infrastructure.
- Dude, no, it's in the code.

One day at this moment, a fence began to grow between them, through which they joyfully threw poop. The task, like a poop, was thrown from one side of the fence to the other. At the same time, no one came close to resolving the situation. Sad smiley.

A ray of sunshine pierced the overcast sky when a few years ago at Google they came up with the idea not to exchange tasks, but instead to do a common thing.

But what if we describe everything as a code?

In 2016, Google released a book called "Site Reliability Engineering" about the transformation of the role of a system administrator: from a master of magic to a formalized engineering approach in the use of software and automation. They themselves went through all the thorns and obstacles, got the hang of it and decided to share it with the world. The book is in the public domain here.

The book contains simple truths:

  • doing everything as code is good;
  • use an engineering approach - good;
  • doing good monitoring is good;
  • preventing a service from being released if it does not have clear logging and monitoring is also good.

These practices were read by our Gleb (entropy), and away we go. Implementing! Now we are in a transitional stage. The SRE team is formed (there are 6 ready-made specialists, 6 more are onboarding) and are ready to change the world, consisting entirely of code, for the better.

We create our infrastructure in such a way as to enable developers to manage their environments and collaborate with SRE completely on their own.

Wang instead of conclusions

System administrator is a worthy profession. But knowledge of the system part also requires excellent software engineering skills.

Systems are becoming simpler and simpler, and super-unique knowledge of administering iron servers is becoming less in demand every year. Cloud technologies are replacing the need for this knowledge.

A good system administrator in the near future will have to have good software engineering skills. Even better, he should have good skills in this area.

No one knows how to predict the future before it happens, but we believe that over time there will be fewer and fewer companies that want to add to the endlessly bloated staff of system administrators. Although, of course, fans will remain. Few today ride horses, mostly use cars, although there are lovers ...

Happy sysadmin day everyone, code to everyone!

Source: habr.com

Add a comment