Lev | DevOps – Telegram
Lev | DevOps
86 subscribers
869 photos
95 videos
7 files
176 links
Work in progress
Download Telegram
Forwarded from Lev
This media is not supported in your browser
VIEW IN TELEGRAM
🤡1
Что такое CRD в Kubernetes?
CRD (Custom Resource Definition) — это способ расширить Kubernetes своими типами ресурсов.
С помощью CRD можно добавить в кластер собственные объекты — такие же, как Pod, Service или Deployment, но под свои задачи.
Зачем это нужно?
CRD позволяет разработчикам описывать и управлять кастомными сущностями через стандартный Kubernetes API.
Например:
• KafkaCluster для управления кластерами Kafka
• Database для автоматического создания и бэкапа баз данных
• Alert или Dashboard для мониторинга
Как это работает:
1. Вы создаёте объект CustomResourceDefinition, который регистрирует новый тип ресурса.
2. После этого можно создавать экземпляры этого ресурса (Custom Resources).
3. Контроллер (обычно написанный на Go или Python с использованием client-go/operator SDK) следит за этими ресурсами и выполняет нужные действия.

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: databases.example.com
spec:
group: example.com
versions:
- name: v1
served: true
storage: true
schema:
openAPIV3Schema:
type: object
properties:
spec:
type: object
properties:
size:
type: string
scope: Namespaced
names:
plural: databases
singular: database
kind: Database
Теперь в кластере можно создать объект:

apiVersion: example.com/v1
kind: Database
metadata:
name: my-db
spec:
size: small


Результат:
CRD — это фундамент для написания операторов Kubernetes, которые превращают рутинные DevOps-задачи в автоматические процессы.
пришла годнота...
🤔1
Sla и slo и другие вариации

https://blog.alexewerlof.com/p/sla-vs-slo
👍1
😱2🐳1
Типы Probes

Когда мы разворачиваем приложение в Kubernetes, важно, чтобы кластер понимал, жива ли программа и готова ли она принимать трафик.
Для этого Kubernetes использует probes — специальные проверки состояния контейнеров.
Существует три основных типа:

1. Liveness Probe

Проверяет, живет ли контейнер.
Если проверка не проходит — Kubernetes перезапускает контейнер.

Пример:

livenessProbe:
httpGet:
path: /healthz
port: 8080
initialDelaySeconds: 5
periodSeconds: 10


2. Readiness Probe

Проверяет, готов ли контейнер принимать запросы.

Если проба не проходит, контейнер исключается из балансировки, но не перезапускается.

Пример:

readinessProbe:
tcpSocket:
port: 8080
initialDelaySeconds: 5
periodSeconds: 10


3. Startup Probe

Используется для долгозапускаемых приложений.
Она проверяет, что контейнер успешно стартовал, прежде чем Kubernetes начнет выполнять liveness и readiness проверки.

Пример:

startupProbe:
httpGet:
path: /healthz
port: 8080
failureThreshold: 30
periodSeconds: 10
🔥1
не знаю зачем, но у меня теперь есть свой локальный экспортер для макоси
👍4💩1
Итак сегодня сделал 2 помидора.

За 1 итерацию получилось разобрать задачку с литкода по стеку.
За 2 итерацию я приступил к подготовке сертификации яндекс облака. Освежил знания по базовым понятиям и изучил концепт экзамена.

+ утром немного спортом позанимался
🌭2
Вчера получилось сделать 1.5 помидора.

Сегодня 1 фиксировано помидор и набегами еще 1.
https://music.yandex.ru/track/26353207?utm_source=web&utm_medium=copy_link
Кто не знал что такое помидор.

Это техника дробления многочасовой работы на сегменты по 20-25 минут. Где целью является фокусирование над процессом решения задачи ни на что не отвлекаясь.
2
За 25 год статистика, обогнал инфляцию и уже хорошо.
🔥1
Пару дней пробую бивалютный стейкинг, пока нравится результат. Главное не обжечься