Category: Administration

Distributed Locks Using Redis

Hello, Habr! Today we present to your attention a translation of a complex article on implementing distributed locks using Redis and discuss the prospects of Redis as a topic. The analysis of the Redlock algorithm by Martin Kleppmann, author of the book 'Designing Data-Intensive Applications', is provided here. Distributed locks are a very useful primitive used in many environments where different processes need to work on shared resources […]

Veeam B&R storage policies — untangling backup chains with technical support

Greetings to the readers of our blog! We are already somewhat familiar – my English posts have appeared here translated by my dear colleague polarowl. This time, I decided to reach out directly to the Russian-speaking audience. For my debut, I wanted to find a topic interesting to as wide an audience as possible, requiring detailed consideration. Daniel Defoe claimed that everyone is faced with death and taxes. […]

Creating a Telegram bot in R (part 3): How to add keyboard support to the bot

This is the third article in the series 'Writing a Telegram Bot in R'. In the previous publications, we learned to create a Telegram bot, send messages through it, and added commands and message filters to the bot. Therefore, before proceeding to read this article, I highly recommend familiarizing yourself with the previous ones, as I will not be stopping to explain previously covered basics […]

SafeDC data center has opened its doors for customers for one day

On the eve of Knowledge Day, NII SOKB held an open house at its data center SafeDC for customers, who saw firsthand what we will discuss next under the cut. The SafeDC data center is located in Moscow on Scientific Avenue, on the underground floor of a business center at a depth of ten meters. The total area of the data center is 450 sq.m, with a capacity of 60 racks. Power supply is organized […]

Ephemeral volumes with storage capacity tracking: EmptyDir on steroids

Some applications also need to store data, but they are quite calm about the fact that the data will not be saved after a restart. For example, caching services are limited in memory but can also move data that is seldom used to storage that operates slower than RAM, with minimal impact on overall performance. Other applications need to know that in […]

Monitoring Flask Microservices with Prometheus

A couple of lines of code and your application generates metrics, wow! To understand how prometheus_flask_exporter works, a minimal example is enough: from flask import Flask from prometheus_flask_exporter import PrometheusMetrics app = Flask(__name__) metrics = PrometheusMetrics(app) @app.route('/') def main(): return 'OK' That’s all you need to get started! By adding the import and the line to initialize PrometheusMetrics, you'll get metrics […]

I created my PyPI repository with authentication and S3. On Nginx

In this article, I want to share my experience with NJS, a JavaScript interpreter for Nginx developed by Nginx Inc, describing its main capabilities through a real example. NJS is a subset of the JavaScript programming language that allows for extending the functionality of Nginx. To the question of why have your own interpreter??? Dmitry Volyntsev has answered in detail. In short: NJS is the nginx-way, and JavaScript is more progressive, 'native' and […]

Mapping Digital Rights, Part III. The Right to Anonymity

TL;DR: Experts share their views on the issues in Russia related to the digital right to anonymity. On September 12 and 13, Teplitsa Social Technologies and RosKomSvoboda are holding a hackathon on digital citizenship and digital rights at demhack.ru. In anticipation of the event, the organizers are publishing the third article dedicated to mapping the problem field so that they can find an interesting challenge. Previous articles: on the right […]

Let's explore Custom Tooling in Argo CD.

Some time after writing the first article, where I skillfully managed jsonnet and GitLab, I realized that pipelines are great, but overly complicated and inconvenient. In most cases, a typical task is required: 'generate YAML and place it in Kubernetes.' Actually, this is where Argo CD excels. Argo CD allows you to connect a Git repository and sync […]

Trying out new tools for building and automating deployments in Kubernetes

Hello! Recently, many exciting automation tools have emerged, both for building Docker images and for deployment in Kubernetes. In light of this, I decided to experiment with GitLab, thoroughly explore its capabilities, and, of course, set up a pipeline. The inspiration for this work came from the website kubernetes.io, which is generated from source code automatically, and for every pull request sent […]

Freeradius + Google Authenticator + LDAP + Fortigate

What to do if you want two-factor authentication but can't afford hardware tokens and you're just advised to be patient and maintain a good mood. This solution isn't super original; rather, it's a mix of various solutions found across the internet. So, given an Active Directory Domain. Domain users working through VPN, as many do these days. Acting as a VPN gateway […]

Speeding Up Ansible

It's no secret that with 'default' settings, Ansible doesn't operate too quickly. In this article, I will point out several reasons for this and propose a useful minimum of configurations that could realistically increase the speed of your project. We will discuss Ansible 2.9.x, which was installed in a newly created virtualenv in your preferred way. […]

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster