Это структуры данных, которые хранят информацию о файлах и каталогах. Каждый файл или каталог на диске ассоциируется с одним inode, который содержит метаданные файла, такие как его размер, разрешения, временные метки, ссылки на блоки данных и т.д. Количество inode на файловой системе обычно определяется в момент её создания и не может быть изменено без переформатирования или значительных изменений в файловой системе.
Одной из наиболее частых причин исчерпания inode является наличие очень большого количества маленьких файлов на файловой системе. Поскольку каждый файл использует как минимум один inode, системы с большим количеством мелких файлов могут исчерпать доступные inode, даже если дисковое пространство по-прежнему доступно.
При создании файловой системы, если количество выделенных inode было рассчитано неправильно (слишком мало для предполагаемого использования), это может привести к раннему их исчерпанию. Это особенно актуально для серверов или систем, где ожидается большое количество файлов.
Некоторые файловые системы, такие как Ext3 или Ext4, имеют фиксированное соотношение inode к объёму файловой системы, которое задаётся при их создании. Если создать файловую систему с недостаточным количеством inode для конкретного случая использования, то в дальнейшем это может стать проблемой.
С помощью команды
df -i можно проверить, сколько inode используется и сколько ещё доступно в вашей файловой системе.Удаление ненужных или временных файлов может освободить inode.
Если возможно, можно увеличить количество inode путём изменения файловой системы или пересоздания файловой системы с более высоким количеством inode. Для файловых систем, таких как XFS или некоторые конфигурации Btrfs, можно динамически добавлять inode.
Переход на другую файловую систему, которая не имеет строгих ограничений на количество inode (например, Btrfs или ZFS), может быть решением для систем с большим количеством маленьких файлов.
Программы и процессы, которые создают большое количество мелких файлов, могут модифицироваться для хранения данных в формате архивов вместо отдельных файлов, что снижает потребление inode.
Ставь 👍 и забирай 📚 Базу знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
AWS OpsWorks — это сервис управления конфигурациями, который:
- Поддерживает Chef и Puppet.
- Используется для автоматизации серверной инфраструктуры.
- Позволяет управлять слоями, версиями, скриптами и зависимостями.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
📘 На Stepik вышел курс — «DevOps-инженер: От основ до продакшена»
Хотите автоматизировать деплой, управлять инфраструктурой как кодом и выстраивать надёжные CI/CD процессы? Этот курс — полный путь DevOps-инженера.
• CI/CD: Jenkins, GitLab CI/CD, GitHub Actions, стратегии развёртывания (Blue-Green, Canary), rollback
• Контейнеризация: Docker (образы, Compose, networking), Podman, оптимизация и безопасность контейнеров
• Kubernetes: архитектура, Pods, Services, Deployments, Helm, RBAC, Service Mesh (Istio/Linkerd)
• Infrastructure as Code: Terraform, Ansible (playbooks, vault), Packer, ArgoCD и Flux для GitOps
• Облака: AWS (EC2, EKS, Lambda), GCP, Azure, Yandex Cloud, cost optimization• Мониторинг: Prometheus, Grafana, ELK Stack, Jaeger, OpenTelemetry, SLI/SLO/SLA
• Безопасность: SAST/DAST, Vault, Zero Trust, Policy as Code, incident response
• Продакшен практики: High Availability, Disaster Recovery, Chaos Engineering, on-call management
🎓 Сертификат — добавьте в резюме или LinkedIn
🚀 Скидка 25%, действует 48 часов
👉 Пройти курс на Stepik
Хотите автоматизировать деплой, управлять инфраструктурой как кодом и выстраивать надёжные CI/CD процессы? Этот курс — полный путь DevOps-инженера.
• CI/CD: Jenkins, GitLab CI/CD, GitHub Actions, стратегии развёртывания (Blue-Green, Canary), rollback
• Контейнеризация: Docker (образы, Compose, networking), Podman, оптимизация и безопасность контейнеров
• Kubernetes: архитектура, Pods, Services, Deployments, Helm, RBAC, Service Mesh (Istio/Linkerd)
• Infrastructure as Code: Terraform, Ansible (playbooks, vault), Packer, ArgoCD и Flux для GitOps
• Облака: AWS (EC2, EKS, Lambda), GCP, Azure, Yandex Cloud, cost optimization• Мониторинг: Prometheus, Grafana, ELK Stack, Jaeger, OpenTelemetry, SLI/SLO/SLA
• Безопасность: SAST/DAST, Vault, Zero Trust, Policy as Code, incident response
• Продакшен практики: High Availability, Disaster Recovery, Chaos Engineering, on-call management
🎓 Сертификат — добавьте в резюме или LinkedIn
🚀 Скидка 25%, действует 48 часов
👉 Пройти курс на Stepik
👍2💊1
В DevOps и Kubernetes важно безопасно хранить секретные данные (пароли, API-ключи, токены). Нельзя хранить их в коде, в
Git, в .env файлах без шифрования. Полностью управляемое решение для хранения и динамической ротации секретов.
Шифрование с поддержкой KMS.
API-доступ и интеграция с CI/CD.
Как получить секрет через CLI?
vault kv put secret/db password="SuperSecret123"
vault kv get secret/db
Как использовать в Jenkins?
withVault([vaultSecrets: [[path: 'secret/db', secretValues: [['envVar': 'DB_PASS', 'vaultKey': 'password']]]]]) {
sh 'echo $DB_PASS' # Переменная доступна только внутри блока
}Интеграция с Kubernetes, управление через
kubectl. Доступ через переменные окружения или монтирование в файл.
Можно использовать
Sealed Secrets или SOPS для шифрования. Как создать секрет?
kubectl create secret generic db-secret --from-literal=password='SuperSecret123'
Как использовать в
Deployment? env:
- name: DB_PASS
valueFrom:
secretKeyRef:
name: db-secret
key: password
Интеграция с облачными сервисами (IAM, Lambda, RDS).
Автоматическая ротация ключей.
Как получить секрет в AWS?
aws secretsmanager get-secret-value --secret-id my-secret
Как подключить к Kubernetes?
Используем External Secrets Operator:
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: db-secret
spec:
secretStoreRef:
name: aws-secrets
kind: SecretStore
target:
name: db-secret
data:
- secretKey: password
remoteRef:
key: my-db-password
Позволяет хранить секреты в Git без утечек.
Работает с
KMS, PGP, age. Как зашифровать секрет?
sops --encrypt --age YOUR_PUBLIC_KEY secrets.yaml > secrets.enc.yaml
Как расшифровать?
sops --decrypt secrets.enc.yaml
Ставь 👍 и забирай 📚 Базу знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
IPv4 — 32 бита (например,
IPv6 — 128 бит (например, 2001:0db8::1).
- Количество адресов:
IPv6 предоставляет намного больше адресов (2¹²⁸ против 2³²).
- Формат:
IPv4 использует десятичную точечную нотацию, IPv6 — шестнадцатеричную с двоеточиями.
- NAT:
В IPv6 NAT не обязателен, в IPv4 он широко используется.
- Упрощённые заголовки:
В IPv6 заголовок легче обрабатывается маршрутизаторами.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥3