Как расшарить папку в CentOS с помощью Samba
Сегодня разберём, как открыть общий доступ к папке на CentOS с помощью Samba, причём без пароля. Это удобно, если вам нужно быстро расшарить файлы в локальной сети.
Доступ будет происходить по SMB/CIFS – стандартному протоколу для сетевых папок.
1️⃣ Проверка и отключение SELinux
Перед установкой Samba важно проверить статус SELinux, который может блокировать доступ:
Если disabled, можно переходить к установке. Если enabled, нужно его отключить:
1. Открываем конфиг:
2. Меняем строку:
3. Перезагружаем систему:
2️⃣ Установка Samba
Устанавливаем необходимые пакеты:
Создаём папку, которую будем расшаривать:
Выставляем права доступа:
3️⃣ Настройка Samba
Открываем конфигурационный файл:
В разделе [global] должны быть такие параметры:
Закомментируйте (;) параметры в [homes] и [printers], если не используете гостевые директории и принтеры.
Добавляем секцию с настройками доступа к папке:
Сохраняем файл (Esc → :wq).
4️⃣ Запуск и автозапуск Samba
Запускаем сервис и добавляем в автозагрузку:
Samba использует порты 137, 138, 139 и 445, так что при настройке iptables или пробросе портов на роутере не забудьте их открыть.
Теперь к папке можно подключаться с Windows или другого Linux-клиента по адресу:
или
Так вы легко сможете обмениваться файлами в сети, например, расшарить записи разговоров или файлы проекта.
Сегодня разберём, как открыть общий доступ к папке на CentOS с помощью Samba, причём без пароля. Это удобно, если вам нужно быстро расшарить файлы в локальной сети.
Доступ будет происходить по SMB/CIFS – стандартному протоколу для сетевых папок.
Перед установкой Samba важно проверить статус SELinux, который может блокировать доступ:
selinuxenabled && echo enabled || echo disabled
Если disabled, можно переходить к установке. Если enabled, нужно его отключить:
1. Открываем конфиг:
vi /etc/selinux/config
2. Меняем строку:
SELINUX=disabled
3. Перезагружаем систему:
reboot
Устанавливаем необходимые пакеты:
yum install samba samba-common cups-libs samba-client -y
Создаём папку, которую будем расшаривать:
mkdir -p /root/SHAREDFOLDER
Выставляем права доступа:
chown -R root:users /root/SHAREDFOLDER
chmod -R 775 /root/SHAREDFOLDER
Открываем конфигурационный файл:
vi /etc/samba/smb.conf
В разделе [global] должны быть такие параметры:
[global]
security = user
passdb backend = tdbsam
workgroup = MYGROUP
map to guest = Bad User
server string = Samba Server Version %v
Закомментируйте (;) параметры в [homes] и [printers], если не используете гостевые директории и принтеры.
Добавляем секцию с настройками доступа к папке:
[SHAREDFOLDER]
comment = Everybody has access
path = /root/SHAREDFOLDER
force group = users
create mask = 0666
directory mask = 0777
writable = yes
guest ok = yes
browseable = yes
Сохраняем файл (Esc → :wq).
Запускаем сервис и добавляем в автозагрузку:
chkconfig --levels 235 smb on
/etc/init.d/smb restart
Samba использует порты 137, 138, 139 и 445, так что при настройке iptables или пробросе портов на роутере не забудьте их открыть.
Теперь к папке можно подключаться с Windows или другого Linux-клиента по адресу:
\\IP_Сервера\SHAREDFOLDER
или
smbclient //IP_Сервера/SHAREDFOLDER -U guest
Так вы легко сможете обмениваться файлами в сети, например, расшарить записи разговоров или файлы проекта.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🤬1
⚡️Современные распределённые системы генерируют огромные объёмы данных, а эффективный мониторинг становится залогом стабильной работы. Как построить систему, способную выдерживать большие нагрузки, обрабатывать миллионы метрик в секунду и мгновенно реагировать на аномалии?
🔥11 марта в 20.00 мск приглашаем на открытый урок "Проектирование высоконагруженного мониторинга в распределенных системах", на котором разберем:
- лучшие инструменты для сбора и хранения метрик (Prometheus, VictoriaMetrics, Mimir, Thanos и др.);
- методы оптимизации: федерация, шардинг, агрегация, сэмплирование;
- как минимизировать нагрузку и сократить расходы на хранение данных;
- практические кейсы внедрения в highload-проектах.
👉Регистрация: https://otus.pw/FNX5/?erid=2W5zFG85vKA
Занятие приурочено к старту курса "Observability: мониторинг, логирование, трейсинг", на котором вы научитесь строить эффективные системы мониторинга, работать с Prometheus, Grafana, ELK и другими инструментами, визуализировать метрики.
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
🔥11 марта в 20.00 мск приглашаем на открытый урок "Проектирование высоконагруженного мониторинга в распределенных системах", на котором разберем:
- лучшие инструменты для сбора и хранения метрик (Prometheus, VictoriaMetrics, Mimir, Thanos и др.);
- методы оптимизации: федерация, шардинг, агрегация, сэмплирование;
- как минимизировать нагрузку и сократить расходы на хранение данных;
- практические кейсы внедрения в highload-проектах.
👉Регистрация: https://otus.pw/FNX5/?erid=2W5zFG85vKA
Занятие приурочено к старту курса "Observability: мониторинг, логирование, трейсинг", на котором вы научитесь строить эффективные системы мониторинга, работать с Prometheus, Grafana, ELK и другими инструментами, визуализировать метрики.
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
👍4
Хотите повысить безопасность и стабильность вашего веб-сайта? Мы предлагаем AntiDDoS защиту через reverse proxy!
Основные возможности:
- Режим датчика: Автоматический анализ активности и фильтрация подозрительных запросов.
- Обнаружение вредоносных запросов: Уникальные алгоритмы для блокировки атак на ранних этапах.
- Challenge-система: Эффективная фильтрация ботов через JavaScript-фингерпринтинг.
- Белый список ботов: Доступ для легитимных ботов, не нарушая индексацию.
- Гео-таргетинг: Ограничение доступа по региону для защиты от атак.
Почему выбрать нас?
- Гибкость: Индивидуальные решения под ваши нужды.
- Доступность: Цены от $50 в месяц, promo тарифы от $20.
- Тестовый период: 24 часа бесплатного тестирования.
Есть вопросы? Свяжитесь с нами в Telegram @vmwallsupport или по почте [email protected].
Защитите свой сайт уже сегодня!
Основные возможности:
- Режим датчика: Автоматический анализ активности и фильтрация подозрительных запросов.
- Обнаружение вредоносных запросов: Уникальные алгоритмы для блокировки атак на ранних этапах.
- Challenge-система: Эффективная фильтрация ботов через JavaScript-фингерпринтинг.
- Белый список ботов: Доступ для легитимных ботов, не нарушая индексацию.
- Гео-таргетинг: Ограничение доступа по региону для защиты от атак.
Почему выбрать нас?
- Гибкость: Индивидуальные решения под ваши нужды.
- Доступность: Цены от $50 в месяц, promo тарифы от $20.
- Тестовый период: 24 часа бесплатного тестирования.
Есть вопросы? Свяжитесь с нами в Telegram @vmwallsupport или по почте [email protected].
Защитите свой сайт уже сегодня!
👍3❤1
Хакеры взломали Bybit через уязвимость в macOS
Расследование Safe{Wallet} и Mandiant показало, что взлом криптобиржи Bybit произошёл через уязвимость нулевого дня в macOS.
Получив доступ, они похитили AWS-токены сессии, обошли многофакторную аутентификацию и проникли в инфраструктуру Bybit.
Злоумышленники действовали скрытно, удаляя следы, а их первоначальное проникновение произошло через Docker-проект при подключении к getstockprice.com.
Власти США связывают инцидент с группировкой Lazarus Group.
Bybit объявила награду $140 млн за информацию о хакерах. Тем временем украденные средства уже отмыты через THORChain, что привело к транзакциям на $5,9 млрд.
Расследование Safe{Wallet} и Mandiant показало, что взлом криптобиржи Bybit произошёл через уязвимость нулевого дня в macOS.
Хакеры атаковали ноутбук разработчика Safe{Wallet}, компании, чьи продукты использует Bybit.
Получив доступ, они похитили AWS-токены сессии, обошли многофакторную аутентификацию и проникли в инфраструктуру Bybit.
Злоумышленники действовали скрытно, удаляя следы, а их первоначальное проникновение произошло через Docker-проект при подключении к getstockprice.com.
21 февраля 2025 года хакеры вывели 400 000 ETH ($1,4 млрд), атаковав холодный кошелёк биржи через подмену интерфейса.
Власти США связывают инцидент с группировкой Lazarus Group.
Bybit объявила награду $140 млн за информацию о хакерах. Тем временем украденные средства уже отмыты через THORChain, что привело к транзакциям на $5,9 млрд.
👍9🔥5
Какой параметр iptables используется для логирования пакетов, попадающих под правило?
Anonymous Quiz
19%
—log
42%
-j LOG
19%
—log-prefix
19%
-m LOG
👍7
Из ИТ в ИБ: почему пора переходить?
По статистике hh, на одно место в кибербезопасности всего 5 кандидатов, тогда как в тестировании их 73, в Python-разработке — 27, в аналитике данных — 67. А исследование PT говорит о кадровом дефиците в 50 000 специалистов на российском рынке ИБ
Минимум конкуренции — максимум возможностей
Андрей Мешков начинал с самого старта — SOC L1, администрирования систем, а теперь занимается поиском угроз и форензикой. На вебинаре он расскажет, как использовать ваш IT-опыт для быстрого старта в ИБ.
Бесплатный вебинар 15 марта в 12:00:
✅ Сравним ИБ с ИТ и другими сферами и расскажем, как перейти
✅ Какие навыки прокачать, чтобы быстрее расти?
✅ Составим ваш личный план развития в ИБ на год
✅ Как найти первую работу или стажировку?
✅ Разберем ключевые профессии
⚡ Регистрация закроется через сутки! Пока не удалили этот пост, — ещё успеваете
Присоединяйтесь — это ваш шанс перейти в ИБ быстрее:
👉 [Ссылка на регистрацию]
По статистике hh, на одно место в кибербезопасности всего 5 кандидатов, тогда как в тестировании их 73, в Python-разработке — 27, в аналитике данных — 67. А исследование PT говорит о кадровом дефиците в 50 000 специалистов на российском рынке ИБ
Минимум конкуренции — максимум возможностей
Андрей Мешков начинал с самого старта — SOC L1, администрирования систем, а теперь занимается поиском угроз и форензикой. На вебинаре он расскажет, как использовать ваш IT-опыт для быстрого старта в ИБ.
Бесплатный вебинар 15 марта в 12:00:
✅ Сравним ИБ с ИТ и другими сферами и расскажем, как перейти
✅ Какие навыки прокачать, чтобы быстрее расти?
✅ Составим ваш личный план развития в ИБ на год
✅ Как найти первую работу или стажировку?
✅ Разберем ключевые профессии
⚡ Регистрация закроется через сутки! Пока не удалили этот пост, — ещё успеваете
Присоединяйтесь — это ваш шанс перейти в ИБ быстрее:
👉 [Ссылка на регистрацию]
👍2❤1
5 способов использования команды tcpdump
tcpdump — мощный инструмент для захвата и анализа сетевого трафика.
Админы часто используют его для диагностики сетевых проблем, но возможности этой команды гораздо шире.
1️⃣ Фильтрация трафика по IP и порту
Хотите увидеть только пакеты, идущие к определённому серверу? Используйте:
Так можно отслеживать трафик к веб-серверу или искать подозрительные подключения.
2️⃣ Запись трафика в файл для последующего анализа
Иногда нужно изучить трафик позже. Для этого можно записать его в файл и открыть в Wireshark:
Анализировать содержимое можно с помощью:
3️⃣ Вывод только заголовков пакетов без данных
Чтобы не загружать терминал лишней инфой, можно смотреть только заголовки:
Это полезно для быстрого понимания, какие пакеты проходят через интерфейс.
4️⃣ Анализ DNS-запросов
Чтобы увидеть, какие домены запрашивает сервер:
Так можно отловить подозрительные DNS-запросы или проверить, работает ли кеширование.
5️⃣ Захват только определённых протоколов
Допустим, вам нужно посмотреть только HTTP-запросы:
Этот трюк позволяет отсечь пустые ACK-пакеты и оставить только полезный трафик.
tcpdump — мощный инструмент для захвата и анализа сетевого трафика.
Админы часто используют его для диагностики сетевых проблем, но возможности этой команды гораздо шире.
Хотите увидеть только пакеты, идущие к определённому серверу? Используйте:
tcpdump -i eth0 host 192.168.1.100 and port 443
Так можно отслеживать трафик к веб-серверу или искать подозрительные подключения.
Иногда нужно изучить трафик позже. Для этого можно записать его в файл и открыть в Wireshark:
tcpdump -i eth0 -w capture.pcap
Анализировать содержимое можно с помощью:
tcpdump -r capture.pcap
Чтобы не загружать терминал лишней инфой, можно смотреть только заголовки:
tcpdump -i eth0 -q
Это полезно для быстрого понимания, какие пакеты проходят через интерфейс.
Чтобы увидеть, какие домены запрашивает сервер:
tcpdump -i eth0 -n udp port 53
Так можно отловить подозрительные DNS-запросы или проверить, работает ли кеширование.
Допустим, вам нужно посмотреть только HTTP-запросы:
tcpdump -i eth0 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'
Этот трюк позволяет отсечь пустые ACK-пакеты и оставить только полезный трафик.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥3
18 марта 12:00
Как работать с сетевыми дисками на выделенных серверах
Selectel проведет вебинар для системных администраторов, devops-инженеров, техлидов.
Расскажут о новой фиче выделенных серверов Selectel — сетевых дисках, которые помогут в
- увеличении емкости без замены и добавления локальных дисков,
- хранении данных в средах виртуализации,
- создании бэкапов для быстрого восстановления,
- запуске тестовых сред и временных проектов.
На вебинаре на примерах и кейсах покажут, как работать с этим сервисом и применять его для эффективной работы.
Мероприятие бесплатное. Зарегистрироваться и задать вопросы спикерам можно по ссылке: https://slc.tl/5glo9
Чтобы не пропустить встречу и узнавать о вебинарах, воркшопах и бесплатных курсах Selectel, подписывайтесь на @selectel_events
Реклама. АО «Селектел», ИНН 7810962785, ERID: 2VtzqwEKa8o
Как работать с сетевыми дисками на выделенных серверах
Selectel проведет вебинар для системных администраторов, devops-инженеров, техлидов.
Расскажут о новой фиче выделенных серверов Selectel — сетевых дисках, которые помогут в
- увеличении емкости без замены и добавления локальных дисков,
- хранении данных в средах виртуализации,
- создании бэкапов для быстрого восстановления,
- запуске тестовых сред и временных проектов.
На вебинаре на примерах и кейсах покажут, как работать с этим сервисом и применять его для эффективной работы.
Мероприятие бесплатное. Зарегистрироваться и задать вопросы спикерам можно по ссылке: https://slc.tl/5glo9
Чтобы не пропустить встречу и узнавать о вебинарах, воркшопах и бесплатных курсах Selectel, подписывайтесь на @selectel_events
Реклама. АО «Селектел», ИНН 7810962785, ERID: 2VtzqwEKa8o
👍3
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
Основные компоненты:
— Raft: алгоритм консенсуса, который обеспечивает отказоустойчивость и согласованность данных.
— Watch: механизм подписки на изменения, позволяющий реагировать на обновления в реальном времени.
— Snapshotting: система создания снимков для восстановления данных при сбоях.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2
Шел 2025 год. Люди все еще опаздывают на собеседования и продолжают удивлять интервьюеров, случайно подтягивая шорты на камеру...
👀 Тем временем команда DevOps Фабрики делает активность по развитию софт-скиллов у IT-инженеров!
У ребят богатый опыт в проведении собеседований и они делают полезную активность, на которой:
▪️ Объяснят, почему полезно ходить на собеседования не ради поиска работы
▪️Расскажут про структуру собесов от лица работодателей
▪️Помогут подготовить классную самопрезентацию
▪️Расскажут, как улучшить резюме и сделать его более привлекательным
▪️Помогут определить свои ключевые качества и составить план по развитию карьеры
Кому актуально, присоединиться можно по ссылке:
👉 DevOps Фабрика
👀 Тем временем команда DevOps Фабрики делает активность по развитию софт-скиллов у IT-инженеров!
У ребят богатый опыт в проведении собеседований и они делают полезную активность, на которой:
▪️ Объяснят, почему полезно ходить на собеседования не ради поиска работы
▪️Расскажут про структуру собесов от лица работодателей
▪️Помогут подготовить классную самопрезентацию
▪️Расскажут, как улучшить резюме и сделать его более привлекательным
▪️Помогут определить свои ключевые качества и составить план по развитию карьеры
Кому актуально, присоединиться можно по ссылке:
👉 DevOps Фабрика
👍5🤨2👎1🔥1🤝1
В Android 15 для Google Pixel появился Linux-терминал
В Android 15 для устройств Google Pixel добавили приложение Linux Terminal, работающее в виртуальной машине на базе Debian GNU/Linux.
Как включить:
1. Активируйте режим разработчика (нажмите 7 раз на номер сборки).
2. Перейдите в Settings → System → Developer → Linux development environment.
3. Установите виртуальную машину (~576 МБ).
На данный момент графический интерфейс не поддерживается, но появится в Android 16. В настройках доступны изменения размера диска, сброс окружения и проброс сетевых портов.
Проект развивается в AOSP в рамках Ferrochrome. Виртуализация основана на KVM и crosvm, а будущая поддержка GUI-приложений реализуется через Wayland/XWayland.
В Android 15 для устройств Google Pixel добавили приложение Linux Terminal, работающее в виртуальной машине на базе Debian GNU/Linux.
Оно запускается через Android Virtualization Framework (AVF) и позволяет использовать командную строку Linux.
Как включить:
1. Активируйте режим разработчика (нажмите 7 раз на номер сборки).
2. Перейдите в Settings → System → Developer → Linux development environment.
3. Установите виртуальную машину (~576 МБ).
На данный момент графический интерфейс не поддерживается, но появится в Android 16. В настройках доступны изменения размера диска, сброс окружения и проброс сетевых портов.
Проект развивается в AOSP в рамках Ferrochrome. Виртуализация основана на KVM и crosvm, а будущая поддержка GUI-приложений реализуется через Wayland/XWayland.
👍13🔥5
🧠 Тест для Software Architect https://otus.pw/HVo78/?erid=2W5zFJkgc8Q
❓ Под силу ли вам ответить правильно на все 11 вопросов?
🎯Проверьте себя - пройдите тест и оцените свой уровень навыков, а также свою готовность к обучению на курсе — «Software Architect» от Отус.
🎥 После прохождения теста вы получите доступ к лучшим вебинарам курса!
⏳ Время прохождения теста ограниченно.
💡 Удачи в прохождении теста!
#реклама
О рекламодателе
❓ Под силу ли вам ответить правильно на все 11 вопросов?
🎯Проверьте себя - пройдите тест и оцените свой уровень навыков, а также свою готовность к обучению на курсе — «Software Architect» от Отус.
🎥 После прохождения теста вы получите доступ к лучшим вебинарам курса!
⏳ Время прохождения теста ограниченно.
💡 Удачи в прохождении теста!
#реклама
О рекламодателе
👍3😁1
Установка и настройка Docker Swarm (Часть 1)
Docker Swarm — это встроенный в Docker инструмент для кластеризации, который объединяет несколько серверов в единый кластер. Он обеспечивает балансировку нагрузки, отказоустойчивость и масштабируемость.
В этом посте разберём установку Docker и развёртывание кластера Swarm на Ubuntu 16.04.
Шаг 1: Обновление системы
Перед установкой Docker обновите систему:
После обновления рекомендуется перезагрузить сервер.
Шаг 2: Установка Docker
Docker по умолчанию отсутствует в репозиториях Ubuntu 16.04, поэтому сначала установим необходимые зависимости:
Затем добавим GPG-ключ и репозиторий Docker:
Теперь установим сам Docker:
Запустим и настроим автозапуск Docker:
Шаг 3: Разрешение запуска Docker без sudo
По умолчанию для работы с Docker нужны права root. Если хотите запускать контейнеры без sudo, добавьте пользователя в группу docker:
Перезайдите в систему, чтобы изменения вступили в силу.
Шаг 4: Настройка брандмауэра (UFW)
Для корректной работы Swarm откроем необходимые порты:
Применяем изменения и включаем UFW:
Шаг 5: Инициализация Docker Swarm
Выберите IP-адрес узла, который будет менеджером кластера, и выполните команду:
Если всё прошло успешно, вы увидите подобный вывод:
Сохраните этот токен, он понадобится для добавления новых узлов в кластер.
Шаг 6: Проверка статуса кластера
Команда ниже отобразит список узлов в Docker Swarm:
Ожидаемый результат:
Также можно проверить статус всего Docker Swarm:
Если всё настроено верно, в выводе будет строка Swarm: active.
В следующей части разберём добавление узлов в кластер, развертывание веб-сервисов и управление ими.
Docker Swarm — это встроенный в Docker инструмент для кластеризации, который объединяет несколько серверов в единый кластер. Он обеспечивает балансировку нагрузки, отказоустойчивость и масштабируемость.
В этом посте разберём установку Docker и развёртывание кластера Swarm на Ubuntu 16.04.
Шаг 1: Обновление системы
Перед установкой Docker обновите систему:
sudo apt-get update -y && sudo apt-get upgrade -y
После обновления рекомендуется перезагрузить сервер.
Шаг 2: Установка Docker
Docker по умолчанию отсутствует в репозиториях Ubuntu 16.04, поэтому сначала установим необходимые зависимости:
sudo apt-get install apt-transport-https software-properties-common ca-certificates -y
Затем добавим GPG-ключ и репозиторий Docker:
wget https://download.docker.com/linux/ubuntu/gpg && sudo apt-key add gpg
echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu xenial stable" | sudo tee /etc/apt/sources.list.d/docker.list
sudo apt-get update -y
Теперь установим сам Docker:
sudo apt-get install docker-ce -y
Запустим и настроим автозапуск Docker:
sudo systemctl start docker && sudo systemctl enable docker
Шаг 3: Разрешение запуска Docker без sudo
По умолчанию для работы с Docker нужны права root. Если хотите запускать контейнеры без sudo, добавьте пользователя в группу docker:
sudo groupadd docker && sudo usermod -aG docker $USER
Перезайдите в систему, чтобы изменения вступили в силу.
Шаг 4: Настройка брандмауэра (UFW)
Для корректной работы Swarm откроем необходимые порты:
sudo ufw allow 2376/tcp && sudo ufw allow 2377/tcp
sudo ufw allow 7946/udp && sudo ufw allow 7946/tcp
sudo ufw allow 4789/udp && sudo ufw allow 80/tcp
Применяем изменения и включаем UFW:
sudo ufw reload && sudo ufw enable
Шаг 5: Инициализация Docker Swarm
Выберите IP-адрес узла, который будет менеджером кластера, и выполните команду:
docker swarm init --advertise-addr 192.168.0.103
Если всё прошло успешно, вы увидите подобный вывод:
Swarm initialized: current node (...) is now a manager.
To add a worker to this swarm, run:
docker swarm join --token SWMTKN-... 192.168.0.103:2377
Сохраните этот токен, он понадобится для добавления новых узлов в кластер.
Шаг 6: Проверка статуса кластера
Команда ниже отобразит список узлов в Docker Swarm:
docker node ls
Ожидаемый результат:
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
iwjtf6u951g7rpx6ugkty3ksa * Manager-Node Ready Active Leader
Также можно проверить статус всего Docker Swarm:
docker info | grep Swarm
Если всё настроено верно, в выводе будет строка Swarm: active.
В следующей части разберём добавление узлов в кластер, развертывание веб-сервисов и управление ими.
👍13💯4
Какой из этих методов лучше всего подходит для минимизации write-amplification в SSD?
Anonymous Quiz
12%
Использование RAID 5
39%
Отключение TRIM
23%
Настройка файловой системы с меньшим размером блока
25%
Использование ZFS с лог-устройством (ZIL) на отдельном SSD
👍8🔥1
Установка и настройка Docker Swarm (Часть 2)
В первой части мы установили Docker, настроили брандмауэр и инициализировали Swarm-кластер. Теперь добавим рабочие узлы и развернём веб-сервис.
1️⃣ Добавление узлов в кластер
На новом сервере, который будет worker-узлом, выполните команду, полученную ранее:
Ожидаемый результат:
Проверить статус всех узлов можно командой:
Вывод должен включать как Manager, так и Worker:
2️⃣ Развертывание веб-сервиса
Запустим Apache (httpd) в режиме Docker Swarm:
Проверим, работает ли сервис:
Вывод:
3️⃣ Масштабирование сервиса
Чтобы увеличить число реплик веб-сервера, используем команду:
Теперь проверим распределение контейнеров по узлам:
Вывод должен показывать два контейнера, работающих на разных узлах:
4️⃣ Проверка отказоустойчивости
Если отключить Worker-узел (например, остановить Docker):
sudo systemctl stop docker
То Swarm автоматически запустит новый контейнер на оставшемся узле. Проверить это можно командой:
docker service ps webserver
В первой части мы установили Docker, настроили брандмауэр и инициализировали Swarm-кластер. Теперь добавим рабочие узлы и развернём веб-сервис.
На новом сервере, который будет worker-узлом, выполните команду, полученную ранее:
docker swarm join --token SWMTKN-... 192.168.0.103:2377
Ожидаемый результат:
This node joined a swarm as a worker.
Проверить статус всех узлов можно командой:
docker node ls
Вывод должен включать как Manager, так и Worker:
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
iwjtf6u951g7rpx6ugkty3ksa * Manager-Node Ready Active Leader
snrfyhi8pcleagnbs08g6nnmp Worker-Node Ready Active
Запустим Apache (httpd) в режиме Docker Swarm:
docker service create --name webserver -p 80:80 httpd
Проверим, работает ли сервис:
docker service ls
Вывод:
ID NAME MODE REPLICAS IMAGE PORTS
nnt7i1lipo webserver replicated 1/1 httpd:latest *:80->80/tcp
Чтобы увеличить число реплик веб-сервера, используем команду:
docker service scale webserver=2
Теперь проверим распределение контейнеров по узлам:
docker service ps webserver
Вывод должен показывать два контейнера, работающих на разных узлах:
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE
7roily9zpjvq webserver.1 httpd:latest Worker-Node Running Running
r7nzo325cu73 webserver.2 httpd:latest Manager-Node Running Running
Если отключить Worker-узел (например, остановить Docker):
sudo systemctl stop docker
То Swarm автоматически запустит новый контейнер на оставшемся узле. Проверить это можно командой:
docker service ps webserver
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
При стандартной загрузке все внешние символы (например, функции из библиотек) резолвятся сразу, что увеличивает время старта. При lazy binding разрешение символов происходит только в момент первого вызова.
Это достигается с помощью PLT (Procedure Linkage Table) и GOT (Global Offset Table). При первом вызове функция передает управление в PLT, который вызывает динамический линкер для нахождения реального адреса функции и обновляет GOT. Все последующие вызовы напрямую обращаются к правильному адресу, что снижает накладные расходы.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8👎5❤1
🔥Хотите упростить сбор логов, метрик и трейсов в своей инфраструктуре? Grafana Alloy — мощный инструмент, который унифицирует доставку данных и интегрируется с Prometheus, Loki, Tempo и другими сервисами.
⚡️17 марта в 20.00 мск приглашаем на открытый вебинар "Grafana Alloy - универсальный инструмент доставки логов, метрик и трейсов", на котором узнаем:
- Как Grafana Alloy решает проблемы передачи данных в сложных системах?- Чем он отличается от Fluentd, Vector и других агентов?
- Как настроить отказоустойчивость и балансировку нагрузки?
- Лучшие практики маршрутизации, фильтрации и трансформации данных.Регистрируйтесь и внедряйте Grafana Alloy в своих проектах!
👉Регистрация: https://otus.pw/koCT/?erid=2W5zFG59HgC
Занятие приурочено к старту курса "Observability: мониторинг, логирование, трейсинг", на котором вы научитесь строить эффективные системы мониторинга, работать с Prometheus, Grafana, ELK и другими инструментами, визуализировать метрики.
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
⚡️17 марта в 20.00 мск приглашаем на открытый вебинар "Grafana Alloy - универсальный инструмент доставки логов, метрик и трейсов", на котором узнаем:
- Как Grafana Alloy решает проблемы передачи данных в сложных системах?- Чем он отличается от Fluentd, Vector и других агентов?
- Как настроить отказоустойчивость и балансировку нагрузки?
- Лучшие практики маршрутизации, фильтрации и трансформации данных.Регистрируйтесь и внедряйте Grafana Alloy в своих проектах!
👉Регистрация: https://otus.pw/koCT/?erid=2W5zFG59HgC
Занятие приурочено к старту курса "Observability: мониторинг, логирование, трейсинг", на котором вы научитесь строить эффективные системы мониторинга, работать с Prometheus, Grafana, ELK и другими инструментами, визуализировать метрики.
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
👍3
Управление трафиком с помощью tc на Linux
Команда tc (Traffic Control) позволяет контролировать полосу пропускания, ограничивать скорость трафика и управлять приоритетами пакетов.
Пример задачи:
Ограничим скорость исходящего трафика для интерфейса eth0 до 5 Мбит/с.
Создание очереди и установка ограничений
sudo tc qdisc add dev eth0 root tbf rate 5mbit burst 32kbit latency 400ms
• dev eth0 — целевой интерфейс.
• root — создание корневой очереди.
• tbf (Token Bucket Filter) — механизм управления трафиком.
• rate 5mbit — лимит в 5 Мбит/с.
• burst 32kbit — допустимый объем буфера для коротких всплесков трафика.
• latency 400ms — максимальная задержка.
Проверка настроек
Вы увидите текущую конфигурацию очереди.
Удаление правил (если нужно)
Эта команда сбрасывает все настройки управления трафиком для интерфейса eth0.
Команда tc (Traffic Control) позволяет контролировать полосу пропускания, ограничивать скорость трафика и управлять приоритетами пакетов.
Пример задачи:
Ограничим скорость исходящего трафика для интерфейса eth0 до 5 Мбит/с.
Создание очереди и установка ограничений
sudo tc qdisc add dev eth0 root tbf rate 5mbit burst 32kbit latency 400ms
• dev eth0 — целевой интерфейс.
• root — создание корневой очереди.
• tbf (Token Bucket Filter) — механизм управления трафиком.
• rate 5mbit — лимит в 5 Мбит/с.
• burst 32kbit — допустимый объем буфера для коротких всплесков трафика.
• latency 400ms — максимальная задержка.
Проверка настроек
sudo tc qdisc show dev eth0
Вы увидите текущую конфигурацию очереди.
Удаление правил (если нужно)
sudo tc qdisc del dev eth0 root
Эта команда сбрасывает все настройки управления трафиком для интерфейса eth0.
👍17