
Рубрика «системное администрирование» - 30
Заметки о Unix: как команда newgrp работала в Unix V7?
2021-02-13 в 13:10, admin, рубрики: UNIX, Блог компании RUVDS.com, системное администрированиеВ материале, посвящённом причинам существования команды newgrp, мы узнали о том, что группам в Unix можно назначать пароли, о том, что эта команда позволяет пользователю менять свою (основную) группу. Мы выяснили, что эта команда появилась в Unix V6, что гораздо раньше, чем я ожидал. Меня тогда заинтересовал вопрос о том, как именно работала команда newgrp в Unix V7. Исходный код V7 (а так же — справку и другие материалы) можно найти на tuhs.org. Поэтому ничто не мешает нам почитать код реализации этой команды, находящийся в файле newgrp.c.
Мониторим основные сервисы в AWS с Prometheus и exporter’ами для CloudWatch
2021-02-12 в 10:14, admin, рубрики: Amazon Web Services, AWS, cloudwatch, devops, kubernetes, prometheus, Блог компании Флант, системное администрирование
Если вы используете в облачных провайдерах managed-инсталляции серверных служб вроде RDS или ElastiCache от AWS, то скорее всего уже задавались темой мониторинга инфраструктуры, а главное — оповещений по произошедшим инцидентам. При реализации возникают понятные вопросы:
-
Как можно настроить сбор данных с endpoint’ов в систему мониторинга?
Хостим Bitwarden — open-source менеджер паролей
2021-02-10 в 7:47, admin, рубрики: Bitwarden, open source, Блог компании VDSina.ru, информационная безопасность, менеджер паролей, системное администрирование, Софт
Менеджеры паролей действительно полезны и важны как для отдельных пользователей, так и для организаций, и они пригодятся, когда у вас много разных учетных записей и паролей. Обычно люди не любят пользоваться сторонними менеджерами паролей с сервисной архитектурой — неизвестно, что происходит с данными на чужом сервере, и не будет ли он скомпрометирован. Самое безопасное решение это разместить менеджер на своём собственном (как следует защищенном) сервере. Разумеется, к такому self-hosted варианту возникает много требований, и большой список решений с открытым исходным кодом довольно быстро сужается до нескольких известных, проверенных продуктов. Среди них мне больше всего нравится Bitwarden, и сейчас я объясню почему.Читать полностью »
Ломаем и чиним Kubernetes
2021-02-05 в 15:44, admin, рубрики: devops, kubeadm, kubernetes, администрирование, администрирование linux-систем, кто читает тэги?, микросервисы, сертификаты, системное администрирование
Kubernetes отличная платформа как для оркестрации контейнеров так и для всего остального. За последнее время Kubernetes ушёл далеко вперёд как по части функциональности так и по вопросам безопасности и отказоустойчивости. Архитектура Kubernetes позволяет с лёгкостью переживать сбои различного характера и всегда оставаться на плаву.
Сегодня мы будем ломать кластер, удалять сертификаты, вживую реджойнить ноды и всё это, по возможности, без даунтайма для уже запущенных сервисов.
Сравнение производительности HashiCorp Vault с разными бэкендами
2021-02-05 в 7:39, admin, рубрики: devops, hashicorp vault, kubernetes, Vault, Блог компании Флант, системное администрирование
Vault — Open Source-решение от HashiCorp для управления секретами. Его изначальная ориентированность на модульность и масштабируемость позволяет запускать как небольшой dev-сервер Vault на своем ноутбуке, так и полноценный HA-кластер для production-сред.
Начиная работать с Vault, мы задались двумя вопросами:
-
Какой бэкенд Читать полностью »
Настраиваем Restic с systemd на Linux
2021-01-30 в 22:36, admin, рубрики: backup, linux, postgresql, restic, systemd, бэкапы, Настройка Linux, резервное копирование, Серверное администрирование, системное администрированиеRestic — хорошо известная программа для резервного копирования. Она достаточно проста, чтобы переноситься на любую ОС, и, вероятно, поэтому с ней не прилагается полноценный пример настройки на среднестатистической Linux-системе. Исправим это данным постом.
Поставим задачу следующим образом:
- Автоматический бэкап запускается ежедневно.
- Бэкап хранит только важные файлы и данные.
- Бэкап также включает в себя содержимое баз PostgreSQL, которое можно восстановить
psql -f.
Пишем два юнита / таймера для systemd, запускаем restic под выделенным пользователем с CAP_DAC_READ_SEARCH, для PostgreSQL архивируем результат pg_dumpall.
Настраиваем домашний почтовый сервер и уходим с «бесплатной» почты
2021-01-28 в 13:27, admin, рубрики: домашняя сеть, Настройка Linux, сервер, системное администрирование, электронная почтаС каждым годом рекламы в интернете становится все больше, а подают ее с каждым разом все навязчивее. Дошло уже до почты: реклама в интерфейсе почтового ящика выглядит как первое непрочитанное письмо, которое машинально хочется открыть. Я не против рекламы, особенно когда она в тему и не сбивает с толку. Но маскировать её под непрочитанное письмо ‒ это перебор. Чувствуется, что следующим шагом рекламу начнут вставлять прямо в тело письма.
Заметки о Unix: системный вызов write(), на самом деле, не такой уж и атомарный
2021-01-28 в 9:11, admin, рубрики: ruvds_переводы, UNIX, Блог компании RUVDS.com, системное администрированиеНедавно я читал материал Эвана Джонса «Устойчивое хранение данных и файловые API Linux». Я полагаю, что автор этой довольно хорошей статьи ошибается, говоря о том, чего можно ожидать от команды write() (и в том виде, в каком она описана в стандарте POSIX, и на практике). Начну с цитаты из статьи:
Системный вызов write() определён в стандарте IEEE POSIX как попытка записи данных в файловый дескриптор. После успешного завершения работы write() операции чтения данных должны возвращать именно те байты, которые были до этого записаны, делая это даже в том случае, если к данным обращаются из других процессов или потоков (вот соответствующий раздел стандарта POSIX). Здесь, в разделе, посвящённом взаимодействию потоков с обычными файловыми операциями, имеется примечание, в котором говорится, что если каждый из двух потоков вызывает эти функции, то каждый вызов должен видеть либо все обозначенные последствия, к которым приводит выполнение другого вызова, либо не видеть вообще никаких последствий. Это позволяет сделать вывод о том, что все файловые операции ввода/вывода должны удерживать блокировку ресурса, с которым работают.
Означает ли это, что операция write() является атомарной? С технической точки зрения — да. Операции чтения данных должны возвращать либо всё, либо ничего из того, что было записано с помощью write(). […].
Читать полностью »



