ServerAdmin.ru
28.7K subscribers
276 photos
34 videos
12 files
2.6K links
Авторская информация о системном администрировании.

Информация о рекламе: @srv_admin_reklama_bot
Автор: @zeroxzed

Второй канал: @srv_admin_live
Сайт: serveradmin.ru
Download Telegram
На днях в очередной раз пользовался своим сервисом Webpagetest и решил, что не плохо бы про него рассказать, хотя ранее о нём уже были упоминания на канале. Это один из немногих сервисов, которыми я регулярно пользуюсь уже несколько лет.

Webpagetest позволяет протестировать производительность сайта, визуализируя загрузку контента в виде водопада запросов. Также записывается видео загрузки сайта. Функционал у сервиса обширный. Можно считать его профессиональным инструментом тех, кто занимается вопросами ускорения работы сайта. Есть сервисы для обычных людей, типа PageSpeed Insights, где зашел, быстро запустил тест, посмотрел циферки, не понял, что с ними делать и ушёл. Не знаешь даже, из какой географической локации проверка была.

Webpagetest для вдумчивой работы и анализа (проверки PageSpeed Insights он тоже в себя включает). Я как-то написал статью на примере проверки скорости работы сайта с помощью указанного инструмента. Это было давно, но данные там актуальны. Статья не устарела.

Также у меня есть статья на тему установки и настройки своего инстанса Webpagetest. В этом его огромное преимущество перед другими сервисами, которые размещены где-то на сторонних серверах. Тут вы можете всё запустить у себя и быть уверенным, что узким местом не станет ваш сервер или посторонние каналы связи.

Для того, чтобы просто посмотреть о чём идет речь и какой конкретно присутствует функционал, можете воспользоваться бесплатным публичным сервисом - https://webpagetest.org.

Webpagetest создан с заделом на серьезное промышленное использование. Он умеет автоматически масштабироваться в AWS при росте запросов на тесты. У него есть API для автоматизации тестов. В общем, приятный и полезный во всех отношениях продукт. На Linux ставится очень быстро и просто из готовых Docker образов. Хотя я и так его устанавливал, прямо на сервер.

#selfhosted #сервис
​​Вчера на хабре в одной из статей увидел мониторинг, который меня сразу заинтересовал. Называется Monitoror - https://monitoror.com. Привлек он меня в первую очередь простым и лаконичным плиточным дашбордом. Мне он показался идеальным для вывода текстовых метрик. Стал разбираться.

Сам по себе он очень простой и состоит всего лишь из одного бинарника и конфигурационного файла к нему. Отдельным конфигом настраивается web интерфейс. Используется формат json.

Настраивать проверки быстро и просто. Мне так понравился этот мониторинг, что решил немного разобраться в нём и оформил всё в статью, чтобы потом самому не забыть.

Меня привлекла простота парсинга и сбора текстовых данных по http с возможностью их вывести в плитках на дашбодр. Это отличный инструмент для всяких чисел, получаемых из API. На сайте в статье как раз разобрал такой вариант с примером сбора данных из api telegram. Получается быстро и удобно собрать дашборд с нужными данными. Можно обучить даже не специалистов это делать. Там достаточно конфиг менять, monitoror автоматом подхватит изменения.

https://serveradmin.ru/monitoring-monitoror-s-plitochnym-dashboard/

#мониторинг #статья
Существует очень известная и популярная программа для удаленного сканирования хостов - Nmap. Лично у меня она стоит и на рабочем ноутбуке и на некоторых серверах. Используется как для разовых проверок открытых портов какого-то сервера, так и для регулярных автоматических проверок.

Я даже статью как-то написал на тему регулярных проверок своей же инфраструктуры с помощью nmap. Рекомендую ознакомиться. Бывает, что поднимается временно какой-то сервис для теста в отдельной виртуальной машине. Для простоты к нему просто пробрасывается определенный порт. После теста виртуальная машина удаляется, а проброс порта остается.

Через некоторое время на этот же ip адрес может приехать что-то другое. Например, у меня приехал новый сервер и на этот ip был посажен idrac. Каково же было мое удивление, когда я, сканируя внешний ip, увидел доступ к консоли управления сервером. Сначала перепугался, думал кто-то что-то сломал. Полез разбираться, оказалось, что старый проброс 443 порта остался на этом внешнем ip.

Можете настроить что-то простое и банальное, типа подобной проверки и засунуть её в крон:

nmap -T4 87.250.250.242 | mail -s "Nmap Scan 87.250.250.242" serveradmin@gmail.com

Раз в неделю будете получать отчёты на почту по проверке своих IP. И более детальную и подробную проверку сделать. Например, так:

nmap -T0 -A -v 87.250.250.242 | mail -s "Nmap Scan 87.250.250.242" serveradmin@gmail.com

Полный список параметров можно посмотреть в документации - https://nmap.org/man/ru/man-briefoptions.html

Добавлю для информации еще несколько ходовых примеров, чтобы за ними в документацию не лазить.

Сканирование подсети или отдельных адресов:
nmap 192.168.1.0/24 или nmap 192.168.1.*
nmap 192.168.1.1,2,3

Быстрый скан сети пингом. Позволяет сразу увидеть, какие хосты в сети запущены и отвечают на пинг.
nmap -sP 192.168.1.0/24

Скан хоста, не отвечающего на пинг. Актуально, если открытые порты есть, но хост не отвечает на icmp запросы.
nmap -Pn 192.168.1.1

Быстрое сканирование. Если не добавить ключи, увеличивающие скорость, дефолтный скан будет длиться очень долго.
nmap -F 192.168.1.1
nmap -T4 192.168.1.1

Подробный скан всех портов хоста. Небольшой скрипт nmap.sh, который по очереди подробно сканирует все открытые порты. Процесс может длиться долго.
#!/bin/bash
ports=$(nmap -p- --min-rate=500 $1 | grep ^[0-9] | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)
nmap -p$ports -A $1

Использовать
./nmap.sh 192.168.1.1

Как обычно, не забываем забрать в закладки.

#terminal #утилита #nmap
Вчера у меня на канале была реклама курсов SkillBox. Один подписчик скинул мне видео на ютубе с отзывом на этот курс:

https://www.youtube.com/watch?v=lgOdb3_GRcw

Суть в том, что они продают курс, который просто пустой. Он не готов и не наполнен содержимым. Я привык к тому, что курсы постоянно ругают и говорят, что они не стоят своих денег. Всякое бывает. Какие-то курсы хорошие, какие-то плохие. Я сам некоторые курсы проходил и писал отзывы. Но тут совсем другое дело. Курса просто нет, а его продают. Что по сути похоже на сами знаете на что (не пишу прямо, потому что обнаружил, что эта компания любит судиться и убирать негативные отзывы), прикрытый офертой, составленной с нарушением законодательства.

К сожалению, у меня уже подписан договор и оплачен еще один рекламный пост от компании Skillbox. Возможно сейчас этот курс уже доделан, я не знаю наверняка. Но факт из видео говорит сам за себя. После этого оплаченного поста больше у меня рекламы этой онлайн школы не будет.

#курсы
​​Как защититься от взлома через IP-адрес

Интересный факт: каждые 39 секунд в мире происходит одна хакерская атака. Чтобы обезопасить себя, скачайте бесплатно защитное ПО Crowdsec.

Почему им нужно пользоваться:

1. Не привязан к конкретной платформе: данные никуда не утекут. CrowdSec защищает от вредоносных ресурсов и файлов с помощью нескольких команд. 
2. Разные способы блокировки: капча, брандмауэринг, понижение уровня разрешений, многофакторная аутентификация и т. д. Это увеличивает защиту сервера от хакерских атак. 

3. Соответствует требованиям GDPR и политик конфиденциальности, совместим с различными ПО и компонентами, работает компактно: не требует большого объема ОЗУ и ресурсов ЦП.

4. Вы получите фичи в подарок, если поучаствуете в краудсорсинге, и будете помогать выявлять вредоносные IP-адреса. Так мы создаем самую большую в мире базу вредоносных IP-адресов. 

Чтобы перестать бояться взлома и слива данных, а еще стать частью большого дела — скачивайте CrowdSec.

Некоторое время назад я пробовал CrowdSec - установил и настроил. Отличная современная замена Fail2Ban. Обо всем подробно написал в отдельной статье.

#реклама
​​Расскажите, кто как справляется с тем, чтобы не бахать по ошибке команды не в тот терминал? Наверняка каждый с этим сталкивался. Я время от времени так косячу, пока везло, что не фатально.

Как это обычно бывает. Открыто несколько сессий. Ты что-то делаешь, настраиваешь, готовишь команду на выполнение. Потом тебя отвлекают, ты делаешь какие-то другие вещи. Потом возвращаешься к первоначальной задаче и отправляешь команду не в тот терминал.

Я решил написать об этом, потому что вчера накосячил немного. Настраивал очередной сервер 1С под Linux. Там нужно русскую локаль поставить и активировать. Отвлекся и потом это сделал совершенно на другом сервере. Еще удивился, откуда на чистой системе какие-то еще локали, кроме en_us.utf-8. Только потом заметил, что сервер не тот. Откатил изменения обратно.

Я вкладки ssh соединений обычно раскрашиваю в разные цвета, но это не сильно помогает от ошибок. Еще взял за правило, когда выключаешь сервер, через терминал или какую-то консоль управления сервером/гипервизором, остановиться, посмотреть еще раз тот ли ты сервер выключаешь. На уровне рефлекса уже это. Никогда ничего не перезагружаю и не выключаю, не проверив, что это действительно тот сервер. А вот в консоль иногда бахаю не то, что нужно, и что с этим делать - не понятно.

#мысли
​​Существует бесплатная публичная огромная база данных всевозможных уязвимостей - софта, операционных систем, прошивок и т.д. Причём пользоваться ей можно в оффлайне, периодически обновляя базу. Речь идёт о базе Exploitdb и инструменте поиска по ней - SearchSploit.

https://github.com/offensive-security/exploitdb

В дистрибутиве Kali Linux эта база есть в системе и в репозиториях. На все остальные дистрибутивы проще всего склонировать репозиторий:

# git clone https://github.com/offensive-security/exploitdb.git /opt/exploitdb
# ln -sf /opt/exploitdb/searchsploit /usr/local/bin/searchsploit

Пользоваться базой достаточно просто. Поищем уязвимости для roundcube:

# searchsploit 'roundcube'

К каким-то уязвимостям есть только описания, а для кого-то и готовые эксплоиты, написанные на различных языках программирования. Обычно это bash, python, ruby.

Я как-то ставил и тестировал систему автоматического обнаружения уязвимых версий софта и систем на своей инфраструктуре. Работала как плагин к Zabbix Server. Решение было самописное и немного костыльное. В итоге все сломалось и мне стало лень разбираться с ней. Да и Zabbix активно обновляется. Его лучше не трогать.

Кто-нибудь знает хорошие бесплатные системы, которые автоматически будут тебя уведомлять об уязвимостях в твоих версиях систем и пакетов?

#security
​​Существует программа для тестирования производительности сервера - sysbench. Она умеет всякими разными способами нагружать систему, но мне обычно это не надо. Да и в целом софта для теста процессора, памяти, дисков существует много. Гораздо полезнее другая ее возможность - тестирование производительности Mysql или Postgresql сервера.

Программа бесплатная, живет на github. Можно самому собирать, можно поставить из репозитория. Есть под все популярные системы. Быстро добавить репу можно через скрипт. Содержимое небольшое, можно проверить перед установкой:

# curl -s https://packagecloud.io/install/repositories/akopytov/sysbench/script.rpm.sh | sudo bash
# yum install sysbench

Список доступных тестов можно посмотреть в директории /usr/share/sysbench/. Перед началом тестов, надо создать тестовую базу:
> create database sbtest;

Я буду подключаться локально, авторизация через root уже настроена. Наполняем тестовую базу данными. Будут 16 таблиц по 10000 строк в каждой.
# sysbench \
--db-driver=mysql \
--mysql-user=root \
--mysql-db=sbtest \
--mysql-host=127.0.0.1 \
--mysql-port=3306 \
--tables=16 \
--table-size=10000 \
/usr/share/sysbench/oltp_read_write.lua prepare

Смотрим, что получилось:
# du -sh /var/lib/mysql/sbtest/
161M /var/lib/mysql/sbtest/

После этого запускаем сам тест oltp_read_write на 10 секунд:
# sysbench \
--db-driver=mysql \
--mysql-user=root \
--mysql-db=sbtest \
--mysql-host=127.0.0.1 \
--mysql-port=3306 \
--tables=16 \
--table-size=10000 \
--threads=4 \
--time=10 \
--events=0 \
--report-interval=1 \
/usr/share/sysbench/oltp_read_write.lua run

На выходе получите количество транзакций в секунду и некоторые другие данные. Настроек и возможностей у sysbench много, в рамках заметки это всё не рассказать. Надеюсь, показал главное - этой утилитой достаточно легко пользоваться. Не надо долго разбираться. Можно быстро оценить производительность, сравнить разные виртуальные машины или конфигурации mysql / postgresql.

#terminal #утилита
​​Скажите, есть хоть один человек, которому помогла бы решить проблему Диагностика сетевой ошибки Windows? Я когда вижу подобную ошибку, сразу становится грустно. Никогда точно не знаешь, из-за чего она. Надо доставать бубен, стучать по нему, перезагружать комп и надеяться, что всё получится.

В данном случае я даже не стал заморачиваться, так как это старая Win 7, которую я запустил для теста. С других компов на шару нормально заходит. Помню вал таких ошибок, когда только вышла Windows 10. Нельзя было просто взять и расшарить на ней папку, чтобы можно было зайти с Win 7. В половине случаев это заканчивалось подобной ошибкой. Я уже тогда особо не админил виндовые сетки и даже не помню, как решал эти проблемы. Старался просто перекинуть файлы каким-то другим способом, не тратя время на решение этой проблемы.

#ошибка #windows
​​Вчера в комментариях подсказали очень крутой ресурс для проверки уязвимостей установленных пакетов в Linux системе. Речь об этом ресурсе:

https://vulners.com/audit

Можно зайти по ссылке, выбрать систему и загрузить туда список всех своих пакетов. В ответ получите уязвимости в ваших версиях. Я как раз переносил старый файловый сервер на Centos 6 и решил его проверить. Он весь дырявый оказался. Благо работал в закрытой, ограниченной сети.

У этого сервиса есть бесплатный API. Я когда-то давно тестировал его интеграцию с Zabbix по этой статье с хабра. В целом работало, но потом я забросил эту интеграцию, так как не хотелось каждый раз разбираться с проблемами после обновления Zabbix. А он активно развивается, меняется, обновляется.

В закладки себе забрал этот сервис. Искренне благодарю за рекомендацию. Очень полезно. Я еще кое-что забрал из вчерашнего поста в закладки. Со временем напишу обзоры неплохих утилит для безопасности.

#security #сервис
​​На прошлой неделе прочитал достаточно интересную статью - Почему PostgreSQL не лучше MS SQL, где автор сравнил PostgreSQL и MSSQL для использования с 1С. Она мне показалась интересной, поэтому решил сделать для вас выжимку основной информации оттуда, как я её понял!

MSSQL - 20 лет сотрудничества с 1С. К ней все привыкли, у неё лучшие интерфейсы для управления БД с низким порогом входа как для разработчиков, так и поддержки.
 PostgreSQL - настройки в текстовом файле, командная строка Linux, скрипты для обслуживания и бэкапов. Всё это надо изучать, разбираться.
В среднем на MSSQL 1С работает быстрее. Большинство запросов выполняются примерно одинаково. Но бывает так, что на Postgres запросы выполняются значительно медленнее, но обратные ситуации не наблюдаются. То есть Postgres в лучшем случае будет работать так же, разработка под эту БД более требовательна к качеству кода запросов. Ошибок не прощает.
PostgreSQL более экономично относится к памяти, умеет отдавать неиспользованную память обратно системе. MSSQL пожирает всю память, что есть и хочет еще больше.
Бесплатные версии MSSQL и PostgreSQL не сравнимы по функционалу. Последняя уделывает Express версию MSSQL по всем параметрам. Так что по деньгами PostgreSQL будет значительно дешевле, либо вообще бесплатно.
Стоимости MSSQL Enterprise и Postgres Pro Enterprise на одном и том же числе пользователей и железе будут отличаться примерно в 3 раза в пользу Postgres.
У Postgres на Windows много недостатков. Лучше ставить Linux.
У Postgres Pro хорошая русскоязычная поддержка. Реально решают проблемы. Помогают разобрать тормоза конкретных запросов.

Автор статьи - Антон Дорошкевич, руководитель ИТ в компании «Инфософт», в Новосибирске. Является сертифицированным экспертом по эксплуатации PostgreSQL. Уровень сертификата «Эксперт». В течение последних 15-ти лет является эксплуататором больших многокластерных систем на тысячи пользователей и сотни баз – что на MS SQL, что на PostgreSQL.

#1с #postgresql #mssql
​​Дорогие мои любители консоли Linux. Предлагаю вам расположиться поудобнее и приготовить блокнотик, чтобы записать информацию о необычном обучающем проекте, с которым я вчера познакомился. Речь пойдёт про kodekloud-engineer.com. Я не помню, кто и когда мне его посоветовал, нашёл в закладках.

Это бесплатная обучающая платформа весьма необычного формата. Я прям залип вчера и ввязался в обучение. Суть там такая. Вы регистрируетесь и начинаете путь обычного сисадмина. Вас знакомят с проектом, рассказывают, что там к чему. Для него есть подробная схема, wiki, таблица с ip адресами и доступами.

Примерно раз в день вам будут давать какое-то задание по этой инфраструктуре. Начинается игра с обзорной лекции, где всё рассказывают и показывают на индусско-английском языке. Субтитров, к сожалению нет, но я всё понял, хотя на инглише не шпрехаю свободно.

Вводной теории по заданиям нет, то есть тут чисто практика. На выполнение задания даётся час. Всё выполняется в виртуальной консоли в браузере, которая эмулирует консоль Linux. Система там Ubuntu, по крайней мере на тех серверах, где я был по первому заданию.

Теперь о задании. Первое, что мне дали - настроить часовые пояса на некоторых серверах. Я не буду вам подробно рассказывать, что и как делал, а то не интересно будет. Для практикующих админов с этим заданием проблем не будет. Я выполнил за 15 минут.

Сначала засуетился, так как непривычно всё это. Посмотрел вводное видео и тут сразу задание. Я полез изучать схему, wiki, доступы. Немного вкурил всё это, понял как и куда надо зайти и что сделать. В итоге сделал и отдал задание на проверку. Его тут же проверили и сказали, что всё ОК. За выполненное задание начислили очки.

Если в решении ошибётесь, то сможете отправить его на проверку реальным людям, таким же участникам, как я понял, которые его прошли успешно. Там вам либо укажут вашу ошибку, либо просто покажут, как надо было сделать.

Мне идея очень понравилась. Буду по возможности проходить задания при наличии свободного времени. Если будет что-то интересное, напишу заметки по теме. Если кто-то тоже начнёт эту игру и будет проходить быстрее, прошу не писать прямые подсказки и готовые решения, чтобы остальным тоже было интересно.

#обучение
Существует Open Source проект от Cloudflare под названием Flan. Это сетевой сканер уязвимостей. Он основан на nmap и vulners.com, о котором я уже рассказывал ранее.

https://github.com/cloudflare/flan

Об этом сканере мне рассказал @matrix_operator и поделился своим способом автоматизации проверок своих внешних сервисов с помощью этого инструмента, за что ему большая благодарность.

Проверка хостов на CVE на открытых портах + отправка отчета на почту.
Идея там следующая. Заполняем текстовый файл со своими ip адресами. Можно делать вручную или автоматически, если у вас это каким-то образом организовано. Дальше скриптом обновляем репу с актуальными базами, запускаем Flan в докере и мапим к нему наш список ip адресов. Результат отправляем по почте.

Все подробности оформлены в заметку - https://drive.google.com/file/d/15ZTgRZz4NlXBRlrGJN8LMNynXDz3JV9t За комментариями по реализации обращайтесь к автору способа.

#security
Партнерские программы облачного провайдера Cloud4Y 
 
Если Вы: 
🔹Разработчик, IT-аутсорсер, системный интегратор 
🔹Эксперт в IT со своей аудиторией 
🔹Активный участник IT-сообществ 
🔹Компания, занимающиеся ИТ-консалтингом 
🔹Провайдер интернета, связи, хостинга 
 
Выберите одну из программ, подходящую для себя
🔸 Агент - зарабатывайте от 10% с привлеченных по Вашей ссылке клиентов. 
🔸 Партнер - доход до 40% от оборота приведенных к нам клиентов 
🔸 White Label - предоставляйте облачные услуги самостоятельно под своим брендом!  
Узнайте подробнее о программах.

Или Воспользуйтесь тестовым доступом, чтобы оценить возможности инфраструктурных решений. 
 
Коротко о Cloud4Y
- на рынке облаков с 2009 года 
- базовый SLA 99.982% 
- бесплатная техническая поддержка 24/7 
- 4 ЦОД в Москве, Нидерландах, Турции

#реклама
​​Я регулярно использую Docker, но в очень ограниченном режиме. Чаще всего просто запускаю и использую готовые контейнеры. Иногда правлю чужие докер файлы и практически никогда не пишу свои. Нет задач для этого.

Наиболее частые команды, которые приходится использовать, это запуск контейнера:
docker run -d -p 80:80 --restart=always --name nginx-proxy nginx

Просмотр списка запущенных и всех контейнеров:
docker ps
docker ps -a

Просмотр образов:
docker images

Удаление образов, одного или сразу всех:
docker rmi grafana/grafana
docker rmi $(docker images -a -q)

Вход в консоль контейнера:
docker exec -it nginx-proxy bash

Просмотр логов контейнера:
docker logs nginx-proxy
docker logs --tail 100 nginx-proxy

А на днях я узнал еще некоторые команды, которые очень полезны, но я о них просто не знал и никогда не использовал. Когда их увидел и родилась идея написать заметку и сохранить все наиболее часто используемые команды в одном месте, чтобы потом не вспоминать.

Статистика потребляемых ресурсов контейнера или группы контейнеров:
docker stats grafana7
docker stats container1 container2
docker stats grafana7 --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"

Просмотр запущенных процессов в контейнере:
docker top grafana7

Вот пожалуй и всё из основного, что обычно нужно. Для полноты картины добавлю еще несколько полезных команд, которые нужны реже, но всё равно пригодятся.

Информация о контейнере:
docker inspect nginx-proxy

Выполнить команду в контейнере:
docker exec -it nginx-proxy /usr/sbin/nginx -s reload

Очистить неиспользуемые данные:
docker system prune

Проверить занимаемое докером место:
docker system df

Пожалуй это все команды, что я обычно использую. Не считая запуска, перезапуска, удаления контейнеров. Пропустил что-то важное?

#docker #terminal
​​Не совсем по теме канала информация, но хочу ею с вами поделиться, потому что мне она показалась полезной. Речь пойдет про браузер LibreWolf.

https://librewolf-community.gitlab.io/

Когда мне нужно быстро куда-то установить браузер без лишних заморочек, интеграций и т.д., ставил всегда Firefox. Нужен просто современный браузер, чтобы быстро куда-то зайти, что-то скачать, почитать. На какой-то временный сервер, виртуальную машину или родителям.

Firefox, как и все современные браузеры, перегружен ненужными вещами, типа дополнительных интеграций, встроенных сервисов, службой автообновления и т.д. А LibreWolf это тот же Firefox, только оттуда вырезано всё лишнее, что не нужно непосредственно для сёрфинга. Там нет телеметрии, службы автообновления, Pocket и т.д. На сайте все изменения описаны.

Я узнал об этом браузере несколько месяцев назад и с тех пор немного им пользуюсь. Мне нравится. Мне вообще Firefox нравится, особенно после недавнего обновления интерфейса. Некоторое время назад пытался на него полностью перейти, но не получилось. К сожалению, он потерял долю рынка, популярность. Мне попадались сайты и сервисы, которые в нем работали плохо. Пришлось отказаться от него, как основного браузера. Но в системе он так и остался, иногда запускаю. Навешал на него некоторые полезные расширения и использую его с ними. Основной браузер у меня вообще без расширений. Чистый Chrome.

#полезное
​​В понедельник я рассказывал про любопытную обучающую игру для сисадминов. Оказывается, от этой же команды есть платформа с курсами, часть из которых бесплатная. Используется традиционный подход - теория в видеороликах, тестовые задания на готовом стенде и их проверка.

https://kodekloud.com/

Для регистрации и начала обучения достаточно только email. Бесплатно доступны следующие курсы:

Docker for the Absolute Beginner
JSON PATH Quiz
Game of PODs (для тех, кто знаком с Kubernetes)
AWS Cloud for Beginners

Язык курсов - английский. Ведут индусы, кроме последнего. К остальным курсам доступ по подписке. Либо $17.50 в месяц, либо $9.50, если платишь сразу за год ($114). Сравните это с курсами на русском языке 😀

Сам курсы не смотрел, поэтому ничего сказать об их качестве не могу. Если бы у меня стояла задача обучиться Devops, я бы начал с чего-то подобного. 114 баксов за год доступа это вам не 60-100 т.р. как у нас за кота в мешке. Заодно и английский можно подтянуть, без которого никуда.

#курсы
​​Буквально на днях узнал про утилиту консоли Linux - findmnt. Разбирался с проверкой монтирования сетевых дисков перед выполнением их бэкапа в скриптах. В этом вопросе, на самом деле, очень много нюансов.

Проверки можно делать разными способами. Можно банально парсить вывод df, можно вывод mount, можно грепать /proc/mounts и т.д. Кто во что горазд. Я и то, и другое, и третье делал :) Но во всех этих способах есть те или иные нюансы. То подвисает сетевой диск и вывод mount вместе с ним, то с именами путаница возникает, если название дисков частично совпадают, то пробелы в точке монтирования мешают.

Немного поразбирался в теме и выходит, что findmnt самый стабильный надежный вариант. Вот скрипт проверки.

if findmnt -rno TARGET "$1" >/dev/null; then
  echo "$1 mounted."
else
  echo "$1 not mounted."
fi

Вместо $1 поставьте свой путь. Я в таком виде скрипт использовал для тестирования. Примерно так:

./check.sh /mnt/md5

К echo соответственно добавляете или заменяете на целевое действие. Проверки можно делать как по точке монтирования с помощью TARGET, как у меня в примере, так и по устройству, тогда использовать SOURCE. А можно и то и другое одновременно. Это гораздо удобнее и надёжнее парсинга вывода mount или чего-то ещё.

Такую инфу полезно забрать в закладки.

#bash
Ко мне обратился автор курса Docker + Ansible с предложением опубликовать рекламу на него. Курс продаётся на площадке Udemy. Я знаю, что всем уже надоела регулярная реклама курсов от разных школ, тексты для которых пишут маркетологи, а сами курсы неизвестно какого качества.

Я решил сам посмотреть курс, оценить и написать свой отзыв на него. Автор мне просто открыл доступ. Я начал учиться. Сразу скажу, что у меня нет так много времени, которое я могу себе позволить потратить на обучение. Сразу перешел к той теме, которая мне интересна больше всего - Ansible.

Не могу сказать, что я релевантная аудитория этого курса, потому что и Docker, и Ansible я немного знаю. Пару лет назад я проходил по ним курсы. Время от времени использую на практике, но не так часто, потому что не веду масштабных проектов, где в полной мере раскрываются плюсы автоматизации и подхода IaC. Тем не менее, эти технологии востребованы, так что надо разбираться в любом случае.

Сразу скажу, что курс мне понравился. Он рассчитан на новичков. Записан качественно, всё структурировано, пояснено. Речь лектора грамотная, четкая, с хорошим темпом. Слушать комфортно. Я смотрел все уроки на скорости 1,25. Материалов курса вам будет достаточно, чтобы стартануть в этой предметной области. Начинается все с азов и доходит до среднего уровня проекта.

Я не знаю, насколько сейчас актуален Docker Swarm. По поим представлениям он не очень популярен, хотя многие отмечают его простоту настройки и удобство. Сейчас все пытаются изучать и внедрять Kubernetes, но это точно оверскилл для новичка. Так что именно Docker Swarm скорее всего оправдан для старта в теме докера и автоматизации.

Цену курса вы сами видите. Не идёт ни в какое сравнение с тем, что нужно будет отдать в какой-нибудь школе. Хотя понятно, что там программа будет более широкая, но не факт, что уроки будут на хорошем уровне. Как по мне, так этот курс сопоставим с небольшими курсами от той же школы Слёрм, но у них цена в разы выше.

В общем, если хотите бюджетно стартануть в Devops, не продавая почку и не беря кредиты на 5 лет, то рекомендую сначала пройти любой бесплатный курс по git. У меня на канале было много заметок по ним. А дальше пройти предложенный. Потратите минимум денег, а там уже разберётесь, куда двигаться дальше. Это при условии, что есть база по Linux. Если её нет, то начинать надо с неё. В ютубе есть хорошие уроки.

#обучение #курсы
​​У меня была заметка про пакетный менеджер Windows, который запилила сама Microsoft. Идея мягко говоря не нова, причём не только для систем вообще, но и для Windows в частности. Уже 100 лет в обед существует сторонний пакетный менеджер Chocolate.

https://chocolatey.org/
https://github.com/chocolatey-archive/chocolatey

То, что с помощью пакетного менеджера удобно устанавливать софт, думаю и так понятно. Но это второй вопрос. В общем случае обычный пользователь не так часто это делает. Можно и длинный путем пойти. А вот для системных администраторов это может оказаться большой находкой в плане автоматизации.

Например, с помощью Ansible или Puppet, которые имеют интеграцию с Chocolate, можно декларативными конфигами указать состояние системы, в котором она должна находиться в плане софта. Далее он с помощью Chocolate будет установлен. Это может быть альтернативой доставки софта с помощью групповых политик, где есть свои недостатки.

Для меня удивительно, что за столько лет Microsoft так до сих пор и не запустила свой пакетный менеджер и официальный репозиторий к нему. Наверное хотели обойтись только своим магазином, но не вышло. Теперь вот разрабатывают пакетный менеджер. Поздновато опомнились. Chocolate, судя по репозиторию, существует с 2012 года.

#windows
Найти что-то интересное и весёлое на тему IT к пятнице становится всё труднее и труднее. Уже всё самое интересное было на канале. А каких-то новых бомбических видосов не наблюдаю.

Но вот это понравилось. Переозвучка отрывка из фильма Майор Пэйн (Major Pain) об очень тяжелом проекте, с которым столкнулся маленький программист, который смог. Там и про сисадмина есть 😁

https://www.youtube.com/watch?v=NuKREeAnm1s

По началу фигней показалось, но дальше текст такой нормальный пошёл. В общем, мне понравилось. Надеюсь, вам тоже зайдёт.

#юмор