ServerAdmin.ru
28K subscribers
221 photos
26 videos
10 files
2.54K links
Авторская информация о системном администрировании.

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

Второй канал: @srv_admin_live
Сайт: serveradmin.ru
Download Telegram
​​🎓 Я сейчас прохожу обучение у Скоромнова Дмитрия на его очном курсе Архитектура современных компьютерных сетей. Позже будет отзыв по итогу. Лектор посоветовал неплохой курс по сетям от МФТИ, который они выложили в онлайн во время пандемии в 2021 году.

Лекции по курсу "Компьютерные сети", Климанов М.М.
https://www.youtube.com/playlist?list=PLthfp5exSWErPFK_-EAhVtxO3XoY0gsSe

Это не первый курс МФТИ, про который я пишу. У этого института довольно много бесплатного образовательного материала хорошего качества, в том числе на тему IT. Сам я курс не смотрел. Если кто-то видел, дайте обратную связь по нему.

Вот ещё качественный курс на базе этого же института на тему администрирования Linux. Не так давно писал о нём.

Администрирование Linux
https://www.youtube.com/playlist?list=PLrCZzMib1e9rx3HmaLQfLYb9ociIvYOY1

#обучение
​​У вас были ситуации, когда хотелось скрыть, что вы работаете в IT, умеете настраивать компьютеры и смартфоны? 😁

Автор юмористического ролика с переозвучкой известного фильма как-то раз проболтался и потом пожинал плоды.

Я вообще здесь работаю юристом. Будь проклят тот день, когда по доброте душевной я переустановил в этой организации винду.

Настрой сеть, установи браузер, запароль Wi-FI, почисти кэш, обожми кабель, ребутни роутер, поменяй краску на принтере, напиши сайт, программу, мануал, второй том "Мёртвых душ" и всё это за первый час рабочего дня!

Будни техподдержки (Переозвучка)
https://www.youtube.com/watch?v=bCDjHVhgDDQ

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

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

#юмор
​​🎓Делюсь с вами ресурсом с набившим оскомину названием DevOps Roadmap. Подобных "дорожных карт" сейчас много, и я обычно не обращаю на них внимание. Но на эту обратил.

Меня привлекла качественная реализация этой карты. Тут не просто набор технологий и инструментов, но и подробные описания со ссылками и примерами по каждому пункту.

Тут мало того, что отрисовано красиво и информативно, так ещё и темы раскрыты. Можно использовать и как справочник, и как отправную точку для изучения.

Я просмотрел весь сайт. Там много разных карт, но именно по DevOps мне показалось, что самая лучшая реализация. Помимо непосредственно сайта есть ещё и репозиторий на github с каким-то невероятным количеством звезд (233к 😮). Я вообще столько никогда не видел. Посмотрел на список contributors. Такое ощущение, что вся IT Индия отметилась.

Сайт / Исходники

#обучение #devops
В воскресенье решил порассуждать на вечную тему — как не задалбываться на работе и не только. Я постоянно вижу среди знакомых, читаю в комментариях или статьях в интернете, как люди совершают одни и те же ошибки. Им всё надоело, но они уговаривают себя, заставляют, пытаются собраться, подключить силу воли и двигаться дальше.

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

Лет до 30-ти я и выпивал, и курил. С переменным успехом бросал последнее несколько раз. Но бросил окончательно только тогда, когда забыл про силу воли и применил метод осознанности. Проанализировал влияние алкоголя и табака на свой организм, увидел и осознал вред. После этого перестал употреблять и то, и другое без каких-либо проблем. Результат устойчивый. Хотя до этого курить бросал раза 3 и снова начинал.

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

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

Наша трудовая сфера открывает для нас практически безграничные возможности по смене деятельности. Мы можем работать как очно, так и удалённо. Мы можем менять как работодателей, так и направления деятельности. Вакансий в ИТ по прежнему много (для вас открыт рынок всего мира) и дефицит профессиональных кадров никуда не делся. Вы можете из админа стать девопсом или сетевыми инженером. Заняться безопасностью или поддержкой веб сервисов. Углубиться в мониторинг или сопровождение разработки. Каждый может найти то, что ему нравится и получается лучше, чем что-то другое.

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

Я рассуждаю не гипотетически. Всё, что я описываю, испытывал сам и применял на себе. Несколько раз заметно менял сферу деятельности, но по прежнему оставался в IT. В итоге остановился на том, что нравится и получается лучше всего. Да, иногда тоже устаю или кажется, что всё надоело. Но у меня это обычно быстро проходит и является скорее следствием усталости, а не самого направления деятельности. Я осознанно пришёл к тому, что нравится и получается, методом проб себя в разных сферах.

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

🙏🏻 Надеюсь эта заметка сподвигнет кого-нибудь сделать новый шаг и изменить свою жизнь к лучшему.

#мысли
У меня на канале накопилось очень много заметок о различных полезных сервисах. Периодически меня спрашивают про них, но я сам и названия, и ссылки позабывал уже, так как постоянно всё это не нужно, а когда надо, не помнишь, где искать 🤡 Решил собрать их в список.

digwebinterface.com — dig через web. Удобен тем, что можно сформировать ссылку с параметрами и отправить кому-то итоговый результат. Да и в целом удобен минималистичный интерфейс с полной копией консольного функционала.

🔥crt.sh — проверка выпущенных TLS сертификатов для всех поддоменов любого домена. Так как сейчас всё на TLS, так что легко искать чужие поддомены.

🔥shellcheck.net — проверка синтаксиса shell скриптов. Имеет смысл прогнать свой скрипт и проверить рекомендации.

🔥cheat.sh — продвинутый man с примерами на любые линуксовые темы, к которому можно обращаться из командной строки и получать подсказки по очень широкому спектру вопросов.

hcl2json.com — проверка синтаксиса и конвертация json, yaml и hcl друг в друга.

explainshell.com — удобная шпаргалка по стандартным консольным утилитам типа tar, find, grep и т.д.

webpagetest.org — лучший сервис по анализу скорости работы сайта.

asciinema.org — публикация записи консоли в веб. Постоянно вижу записи с него в репозиториях гитхаба или в статьях с примерами.

ilovepdf.com — лучший онлайн сервис для работы с pdf.

📌Отдельно у меня были хорошие подборки для работы с:

почтовым сервером
json
regex

Regex прям очень рекомендую. Эти ссылки у меня постоянно под рукой. Часто нужны.

#подборка #сервис
​​Очень простой в установке и использовании инструмент для анализа работы СУБД Postgres — pgCenter. Это open source разработка нашего соотечественника Алексея Лесовского, который сейчас трудится в PostgresPro. Он давно известен своим проектом zabbix-extensions (проект давно заброшен и неактуален), где собрана куча скриптов для мониторинга всего и вся в Linux.

PgCenter — набор утилит командной строки, которые позволяют анализировать состояние СУБД в режиме реального времени, наподобие программы top и других подобных инструментов.

PgCenter пригодится как обычным админам, чтобы быстро оценить состояние СУБД (использование ресурсов, просмотр ошибок и т.д.), так и DBA для детального изучения (встроенная статистика) и решения проблем (долгие транзакции, конфликты репликации и т.д.).

В репозитории автоматически собираются rpm и deb пакеты для локальной установки, а также Docker образы. Попробовать проще всего вот так:
# docker run -it --rm lesovsky/pgcenter:latest pgcenter top \
-h 1.2.3.4 -U user -d dbname

У автора есть ещё несколько полезных утилит. Скорее всего напишу о них отдельно:
Noisia — генератор нагрузки PostgreSQL.
pgSCV — экспортёр метрик для Prometheus и Victoriametrics.
pgstats.dev — веб проект с описанием метрик Postgres для мониторинга.

Исходники

#postgresql
​​Для создания своего "облачного" хранилища файлов, похожего на Dropbox, Google Drive, Yandex.Disk и т.д. можно воспользоваться известным open source решением Seafile. Это популярный сервер, про который я вообще ни разу не упоминал, хотя услышал про него впервые очень давно, ещё до того как появился owncloud, который породил форк Nextcloud — наиболее известный на сегодняшний день продукт для автономного файлового хранилища.

Seafile существует как в коммерческой, так и в Community редакции с открытым исходным кодом. Код также открыт и для клиентов под все популярные системы: Windows, Linux, Macos, Android. Для Linux версии есть консольный клиент. Для самого сервера есть веб интерфейс, через который осуществляется управление.

Основной особенностью Seafile можно считать маленькие требования к ресурсам, так что его можно запускать на Raspberry Pi. Для этого существует отдельная сборка сервера.

Несмотря на свою простоту и лёгкость, Seafile предлагает неплохой бесплатный функционал:
создание и управление аккаунтами пользователей
версионирование файлов и логирование доступа к ним
мобильный клиент
возможность подключать хранилище в виде виртуального диска
создание ссылок для общего доступа к файлам или по паролю
шифрование файлов
просмотр медиа файлов через веб интерфейс
онлайн редактор для совместной работы над текстовыми файлами в формате Markdown (другие форматы, типа docx, xlsx и т.д. не поддерживаются).

Оценить функционал можно в публичном demo - https://demo.seafile.com.
Запустить у себя тоже нет никаких проблем. Есть готовый docker-compose.yml от разработчиков. Там же все инструкции.

Ядро сервера Seafile написано на C 😎 (вспомнилось Папа может в си). Этим объясняется его легкость и быстродействие. Веб интерфейс на Python (django) и JavaScript.

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

Сайт / Исходники / Демо

#fileserver
​​Я неоднократно получал как вопросы, так и запросы на настройку аватарок в почтовых клиентах. Подобные вещи реализованы в популярных почтовых сервисах, типа yandex или gmail. К сожалению, сделать так же у себя не получится.

В почтовых протоколах smtp и imap нет понятия аватар. Соответственно почтовые системы по умолчанию никакие аватары принимать и понимать не могут. Изображения к контактам интерпретируют почтовые клиенты на основе своей базы контактов. Каждый сервис ведёт свою базу контактов и аватарок к ним. Реализация закрыта, так что мы наверняка не может судить откуда они берут картинки. Также нет и доступа к общей базе данных контактов.

Реализовать такое на своём почтовом сервере не представляется возможным, если, конечно, вы не захотите написать свой почтовый клиент и реализовать там эту возможность, как это сделали почтовые гиганты.

#mailserver
Решил собрать в одну публикацию все варианты настройки и управления OpenVPN сервера через web интерфейс. Я напишу то, что знаю сам. Буду рад, если кто-то ещё поделится рабочими и удобными вариантами.

Access Server — родное решение от авторов OpenVPN. Это платный продукт, а бесплатная версия ограничена двумя пользователями. Для единоличного использования подходит. Если нужно больше, то есть лекарство, легко ищется. Если вас это не смущает, то можно пользоваться.

Pritunl — один из лучших веб интерфейсов для OpenVPN и Wireguard. К сожалению, платный. Бесплатная версия практически не имеет настроек, но при этом нет никаких ограничений по пользователям. В целом, если вам нужен базовый vpn сервер, то это нормальное решение. Возможно, лучшее.

Рутокен VPN — open source решение от авторов Рутокен. Настройки базовые, можно менять конфигурацию сервера и добавлять пользователей. Бонусом идёт свой клиент под Windows, который поддерживает аутентификацию через ключи рутокен. Только последним он и интересен, так как аналогов не видел.

Veeam PN — это было отличное бесплатное решение для организации vpn сервера от компании Veeam. Поддерживалась как OpenVPN, так и Wireguard. Когда писал эту заметку, с сожалением узнал, что этот проект закрыт, новых версий больше нет. Его интегрировали в платную версию DR Services.

Webmin + OpenVPN-admin — известная веб панель для управления сервером и модуль для OpenVPN. Решение удобно в том плане, что это будет обычный Linux сервер на ваш вкус, в который можно лазить и что-то доделывать, изменять вручную. Я не раз пользовался подобной связкой. Не скажу, что сильно удобно, но в целом нормально для управления пользователями, когда не хочется каждый раз лазить в консоль и скриптами генерить сертификаты и настройки.

PfSense, OPNSense, Clearos и т.д. — в этих продуктах тоже есть раздел для управления OpenVPN. С учётом того, что эти системы нетребовательны к ресурсам, можно поднять и для одной роли vpn сервера. Решение вполне нормальное, с заделом на больший функционал.

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

#openvpn #подборка
​​Максимально простой и удобный способ ограничить на локальном сервере или компьютере скорость сетевого интерфейса или конкретного процесса. Для этого можно воспользоваться open source инструментом TrafficToll.

Это приложение написано на Python, так что поставить можно из pip. Для Debian это выглядит так:

# apt install python3-pip
# pip3 install traffictoll

Для управления настройками используется конфиг в yaml формате. Простейший вид вот такой:

download: 1mbps
upload: 1mbps
download-minimum: 100kbps
upload-minimum: 100kbps

Ограничиваем максимальную скорость и гарантируем минимальную. Запускаем TrafficToll:

# tt eth0 eth0.yaml

Теперь попробуйте что-то загрузить на сервер. Скорость интерфейса будет ограничена одним мегабайтом в секунду. В конфигурации используется нижний регистр, что, по-моему, неверно в данном случае. Мегабайты пишутся с заглавной буквы и без p, то есть Mps. Тем не менее, я это проверил на практике.

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

Исходники

#network
​​Если хотите посмотреть, попробовать, изучить работу кластера PostgreSQL, можно воспользоваться готовым плейбуком ansible — postgresql_cluster. Это production ready решение, которое просто и легко устанавливается. У меня получилось базовую версию без балансировки на haproxy и consul развернуть сходу.

Всё описание есть в репозитории. Если нет опыта в этом хозяйстве, то развернуть лучше Type B: один мастер и две реплики. Это будет обычный HA кластер на базе Patroni. Если не ошибаюсь, на текущий момент это самое популярное решение для построения кластеров PostgreSQL.

Для установки желательно знать Ansible, но в целом можно и копипастом развернуть, но без понимания основ скорее всего не получится по инструкции правильно заполнить инвентарь и переменные. Это как раз пример того, почему важно знать Ansible, даже если у вас под управлением нет десятков хостов, для которых будет актуальна автоматизация процессов, и вы сами не пишите плейбуки. Очень много готовых продуктов устанавливаются через Ansible.

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

После установки статус кластера смотрите командой:
# patronictl -c /etc/patroni/patroni.yml list

Можете отключать ноды и смотреть, как кластер будет на это реагировать.

#postgresql
​​Если вам нужно запускать Android приложения на PC, то предлагаю вариант с использованием эмулятора Memuplay. В общем и целом, особых проблем с работой эмуляторов нет. Их немало, есть из чего выбирать. Но все они используют виртуализацию, поэтому запускать их надо на железе, а не в виртуальной машине.

Я запускал memuplay в виртуальной машине Win10 на гипервизоре Proxmox. Для корректной работы эмулятора, нужно настроить вложенную виртуализацию (Nested Virtualization). Без этого эмулятор не заработает.

Memuplay бесплатен и это вызывает некоторые опасения. В подобного рода продукты любят зашивать вирусы и черви. Я запускал эмулятор с включенным Kaspersky Security Cloud. Он никаких проблем не заметил. Надеюсь, что эмулятор чист.

В виртуальной машине с подключением по RDP интерфейс неотзывчивый. Пользоваться не очень комфортно, но для каких-то простых задач сойдёт.

Альтернативный вариант — бесплатная версия Genymotion. Для домашнего использования она доступна с некоторыми ограничениями. Сам я её не пробовал. Она тоже требует виртуализацию, так что на арендованных VPS подобные эмуляторы запускать скорее всего не получится. Единственный вариант — договориться с тех. поддержкой о включении вложенной виртуализации, но не уверен, что кто-то будет это делать.

Сайт

#android
На прошлой неделе я проходил очное обучение у Дмитрия Скоромнова по его курсу Архитектура современных компьютерных сетей. По итогу обучения написал небольшую статью, чтобы вы имели представление, что это такое и как проходит обучение.

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

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

Приведу пару примеров. Ещё больше есть в статье. Я научился нормально работать в Wireshark и полностью понимать всю информацию, что можно в ней увидеть. Раньше я в основном интуитивно смотрел там информацию об источниках и объёме трафика. Проанализировать содержимое не мог, так как банально не понимал структуру ethernet кадров. Тема эта не очень простая для самостоятельного обучения.

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

В общем, сам курс могу порекомендовать, так как весь его прошёл. А подробности читайте в статье.

https://serveradmin.ru/otzyv-na-kurs-arhitektura-sovremennyh-kompyuternyh-setej-ot-kursy-po-it-rf/

#обучение
​​Понравилась шутка с ChatGPT (см. внизу картинку 👇). Сейчас его пиарят, как не в себя, приписывая зачастую невероятные возможности. Я видел много статей в топе хабра или vc (подписан на еженедельные рассылки топовых статей) на эту тему, но не читал ни одну. Хочу поделиться своим мнением на этот счёт.

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

Например, та же игра в шахматы. Это решение конкретных утилитарных задач с помощью комбинаторики. В случае с GPT это комбинаторика смысловыми блоками, которых собрали миллионы. Когда человек по-настоящему изучит себя, свой интеллект и сможет воспроизводить его или изменять, тогда начнётся другая эпоха и возможно появление интеллекта искусственного. Пока что человек к этому не особо приблизился и себя он слабо знает. Предпочитает изобретать техногенные подпорки к организму, а не развивать его. Мне кажется, это тупиковый путь развития, который рано или поздно приведёт к краху, так как организм слабеет и какая-то катастрофа (природная или техногенная) выбьет из под ног все подпорки.

Теперь вернёмся к ChatGPT. Заменить слабых программистов, которые пишут в основном копипастом, он, скорее всего, сможет. Так как они не придумывают ничего нового, а зачастую и интеллект не подключают. То же самое касается копирайтеров, которых ChatGPT заменит 100%. Уже ожидаю вал новых сайтов с текстовой информацией, написанной ИИ. Это замусорит выдачу поисковиков ещё сильнее, так что найти материалы реального умного человека станет ещё сложнее. Возможно, имеет смысл возродить идею каких-то досок с подборками хороших ресурсов, как было в 90-е.

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

Так что нам можно не волноваться. ❗️Самое главное — заниматься интеллектуальной деятельностью и тогда как минимум на этом, а может и следующем поколении бояться конкуренции с ИИ не придётся. А дальше видно будет.

#мем
​​Наконец-то произошло это знаменательное событие и в веб интерфейсе Proxmox стало можно сортировать виртуальные машины не только по VMID, но и по имени. Буквально на днях, когда собирал тестовый кластер из виртуалок, думал, как же неудобно сделано. На тестовом сервере десятки виртуалок с разными системами и я никак не могу их отсортировать.

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

Это и прочие изменения появились вместе с релизом 7.4. Там помимо прочей ненужной ерунды (сарказм) добавилась тёмная тема. Теперь все фанаты тёмных тем будут спокойны.

#proxmox
На прошлых выходных затронул тему про работу и увидел неожиданный интерес к ней. Решил её немного развить, показав примеры из своей жизни, подтверждающие те рассуждения.

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

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

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

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

Я ушел с постоянной работы, открыл ИП и стал работать в формате фрилансера. Нашёл несколько небольших компаний, которых взял на поддержку. Через год доход вернулся к офисному, но в плюс получил свободный график, что мотивировало работать быстро и эффективно. Я общался напрямую с собственниками бизнеса и мог решать вопросы в формате обсуждений и договорённостей, а не безусловного исполнения. В малом бизнесе управленцы обычно компетентны и рассудительны, иначе бизнес не вытянуть. Были те, с кем работать было некомфортно, расставался. Это плюс такого формата работы. Не нужно никого терпеть и подстраиваться.

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

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

Сейчас у меня примерно поровну разделилась занятость. Половина времени уходит на удалённую работу по настройке и поддержке информационных систем. Вторая половина уходит на Telegram канал и сайт. Методом последовательных итераций я вышел на устраивающий меня формат занятости и доход. Реализовал и развил те навыки, к которым у меня есть врождённые способности и которые мне приносят удовольствие.

❗️Всё, что я написал, не пример того, к чему надо стремиться вам. Я показал, как искал себя в течении большого отрезка жизни, и как пришёл к тому, что устраивает. У каждого свои способности и возможности. Ваша задача увидеть их, развить и получить комфортную среду для созидательного труда.

#мысли
Продолжу тему с работой. Раскрою плюсы и минусы того рабочего режима, в котором нахожусь. Сразу отвечу на вопрос, который неоднократно задавали — откуда я беру клиентов. Тут всё просто. Я давно публичный человек. Сначала был популярен сайт, сейчас Telegram. Мне постоянно пишут люди в личные сообщения (часто не отвечаю). Каждый день с какими-нибудь вопросами. И примерно 2-3 раза в неделю кто-то предлагает работу. Я и себя трудоустроил и несколько знакомых. Уже никто не берёт заказы 😁 Поначалу все клиенты с удалённой работой пришли с сайта. А поддержку офисов я нашёл через hh и avito.

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

🔴 Дома работать трудно. Даже если тихо и никого нет. Дома человек отдыхает, если у него всё хорошо в семье. Это место, где он расслаблен. Трудиться дома не хочется. Поэтому я иногда уезжаю на дачу, где никого нет. Мне там нравится. Могу на несколько дней уехать и провести их там один, сделать основной объём дел на неделю. Также снимаю коворкинг. Одно время помесячно платил, но выходит дороговато, плюс я не постоянно туда езжу. Сейчас снимаю по дням, когда есть возможность весь день поработать. В коворкинге лучше всего организоваться. Там своя атмосфера, все работают. Я никого не знаю, никто не отвлекает. Плюс, должен быть хороший дизайн помещений. Мне так работается лучше. В более дешёвых убитых помещениях некомфортно и работать там не хочется.

🔴 У вас не будет отпусков и больничных. Это напрягает. Во время ковида я очень переживал, что заболею. На меня завязаны некоторые процессы, которые трудно передать. Есть предоплата за многие вещи. Если у вас работа сдельная, то отпуск вы оплачиваете себе сами. Это надо учитывать, когда считаете годовой доход. Ваш суммарный доход на самом деле может оказаться не таким, как вы себе представляете. Этот пункт больше всего бьёт по нервам.

Теперь про плюсы:
🟢 У вас нет потолка по доходу. Всё в ваших руках. Это мотивирует и двигает дальше. Я расстраиваюсь, если доход год от года не растёт. Стараюсь, чтобы рос.

🟢 У вас свободный график, который ни с кем не надо согласовывать. Это очень удобно. Я не представляю, как бы я вёл стройку, если бы не было свободного графика. Была куча дел, начиная с выбора и покупки участка, и заканчивая внутренней отделкой дома. Я постоянно незапланированно приезжал на дачу. Плюс, у меня трое детей. Я хожу на все собрания и детские праздники. Иногда вожу детей к врачам, иногда отдыхать куда-то езжу в будни, когда в общественных местах мало людей. Мне нравится участвовать в их жизни. С графиком 5/2 не представляю, как это делать.

🟢 Если очень хочется сделать выходной, это не проблема. Если я прям чувствую, что сегодня не хочу ничего делать, могу себе это позволить. Поспать до 10-11, потом час-два сделать важные дела, а дальше где-то отдохнуть. Тут главное не злоупотреблять. Есть возможность сходить в спортзал, когда там мало людей, куда-то проехать без пробок.

🟢 У вас нет начальника. Вы сам себе хозяин. Мне кажется, для мужчины это важно. Привычка за всё отвечать самостоятельно благотворно влияет и на семейную иерархию: муж ⇨ жена ⇨ дети. В семье спрос за всё с мужчины, хотя не все это понимают и принимают. При этом я понимаю, что в рамках социума не могут все быть сами себе начальниками. Современные социальные системы не могут существовать без иерархичной подчинённости.

❗️Трудиться в таком режиме подойдёт не всем. Это надо чётко понимать. У каждого свой характер, привычки, способности, потребности. Отработать подчинённым пятидневку в офисе намного проще, чем каждый день ставить себе задачи, думать о доходе, планировать развитие. Где-то на второй год такой работы я получил очень хорошее предложение на 5/2. Был на собесе, денег предложили больше, чем имел. Много думал. В итоге отказался. Сейчас не жалею.

#мысли
​​Хочу напомнить про одну из популярных и удобных систем для нагрузочных тестирований для сайтов — Yandex.Tank. Она написана лет 10 назад и с тех пор особо не менялась, хотя в репозитории видна активность. За проектом присматривают и поддерживают в актуальном состоянии.

Она удобна в первую очередь тем, что есть интеграция с бесплатным сервисом overload.yandex.net, куда Yandex.Tank автоматически загружает результаты. Для этого нужно там зарегистрироваться и получить токен. А дальше нарисовать небольшой конфиг для тестирования:

overload:
 enabled: true
 package: yandextank.plugins.DataUploader
 token_file: "token.txt"
phantom:
 address: news.mail.ru:443
 header_http: "1.1"
 headers:
  - "[Host: news.mail.ru]"
  - "[Connection: close]"
 uris:
  - /
  - /economics/
 load_profile:
  load_type: rps
  schedule: line(5, 10, 1m)
 ssl: true
autostop:
 autostop:
  - http(5xx,10%,5s)
console:
 enabled: true
telegraf:
 enabled: false

И запустить тест:
# docker run --rm -v ~/yandex.tank:/var/loadtest \
-it yandex/yandex-tank

В процессе тестирования получите ссылку вида https://overload.yandex.net/589382, по которой можно наблюдать ход тестирования в режиме реального времени, либо изучать его результаты потом. Простую статистику можно наблюдать в консоли по ходу теста.

Yandex Tank продвинутый инструмент, которые поддерживает разнообразные схемы запросов, различные настройки нагрузки и т.д. В качестве генераторов нагрузки может использовать Phantom, Pandora, BFG (написаны самим Яндексом для него), либо известный Jmeter. В качестве внешних сервисов для загрузки артефактов, помимо Yandex.Overload можно использовать InfluxDB.

Все модули, настройки, возможности и примеры использования описаны в документации. Я когда-то давно писал статью с примером запуска Yandex.Tank. Она полностью актуальна, можно пользоваться.

Аналоги Yandex.Tank:
◽️ artillery.io
◽️ k6
◽️ Locust
◽️ Taurus

Исходники / Документация / Визуализация

#нагрузочное_тестирование
​​Когда вам нужно быстро посмотреть, кто и где занимает больше всего места на диске, можно использовать разные подходы. Расскажу про 3, которые я применяю при разных обстоятельствах.

1️⃣ Установить программу ncdu. Она обычно есть в стандартных репозиториях популярных дистрибутивов. Это самый простой и удобный вариант. Если постоянно приходится по какой-то причине следить вручную за местом, то ставлю эту программу. Но не всегда. В списке обязательных для установки у меня её нет. Чаще всего обхожусь без неё.

2️⃣ Быстро оценить размер каталога или нескольких каталогов можно, выделив их в Midnight Commander и нажав Ctrl + Пробел. Этим постоянно пользуюсь, так как MC ставлю на все сервера под своим управлением.

3️⃣ Воспользоваться консольной командой du с параметрами. Например вот так:
# du -hs * | sort -hr | head -10
Иногда кладу на сервер с бэкапами или сайтами небольшой скрипт, чтобы быстро оценить занимаемое каждой директорией место, а заодно сохранить результат прошлых проверок.

#!/bin/bash

echo "==================================" >> dir_size.txt
echo "Dirs size `date +"%Y-%m-%d_%H-%M"`" >> dir_size.txt
echo "==================================" >> dir_size.txt
du -hs * | sort -hr | head -10 >> dir_size.txt

Есть ещё какие-то простые и удобные способы? Больше ничего в голову не приходит.

#bash #terminal
​​Сколько я перепробовал всевозможных эмуляторов Android, вместо того, чтобы просто поставить его как виртуалку. Я просто не знал, что так можно. А это очень просто. Рассказываю, как установить Android OS в качестве виртуальной машины Proxmox. Работает отлично, ничего не тормозит. Магазин, приложения, учётная запись. Всё отлично.

1️⃣ Качаем с сайта android-x86.org образ android-x86_64.iso и загружаем в Proxmox.

2️⃣ Создаём виртуальную машину со следующими параметрами:
- Type: Linux, 6.x - 2.6 Kernel
- Grafic Card: Default
- SCSI Controller: VirtIO SCSI single
- Disk: SCSI
Всё остальное как обычно, по умолчанию. Диск нужен не меньше 20Gb. После установки у меня было занято 14Gb.

3️⃣ Запускаем VM, выбираем Installation. Создаём раздел на диске, от использования GPT отказываемся. В cfdisk создаём раздел, делаем его bootable, сохраняем, выходим. Выбираем этот раздел для установки, файловую систему ext4, ставим grub, на предложение выбора режима read only отказываемся. После установки перезагружаемся.

4️⃣ Загружаемся в Android, выполняем типовую стартовую настройку. Выбираем подключение к WIFI. Будет доступна одна сеть под названием VirtWifi. Подключившись к ней, я получил IP адрес от DHCP сервера, который работает на бридже, который я добавил в эту виртуалку.

На этом всё. Подключаем свою учётную запись и пользуемся. Мне лично эта виртуалка нужна для установки некоторых приложений, которые не хочу ставить на смартфон, так как там они не нужны. Один раз меня просили сделать такую виртуалку для работы с Instagram за компьютером, так как веб версия для PC неудобна.

#android
Ко мне регулярно обращаются люди с предложением разовой или постоянной работы. Если отказываюсь, просят порекомендовать знакомых или кого-то ещё, кто может решить их проблему. Я никогда не рекомендую людей, которых не знаю лично, так что чаще всего никого не рекомендую, а предлагаю обратиться к какому-нибудь известному аутсорсеру. Во многих случаях мне видится это более разумных подходом, особенно там, где нужна поддержка 24/7.

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

Также рекомендую обратить внимание на эти компании тем, кто ищет удалённую работу системным администратором или devops инженером. У этих компаний практически всегда открыты вакансии по профильным направлениям. Это отличная возможность быстро прокачать свои навыки на разнородных задачах. Я бы туда на любые деньги устраивался, если бы была необходимость быстро прокачать навыки и получить опыт работы в распределённой команде на реальных проектах.

fevlake.com — основатель известный многим Василий Озеров. Он же запустил школу Rebrain. С Василием есть интересное интервью, рекомендую к просмотру.

southbridge.io — они же бывшие centos-admin.ru, они же организаторы школы Слёрм. Я проходил несколько обучений у этой школы. Курсы пишут в том числе и действующие инженеры, как и в Rebrain. Аутсорсеры известные и именитые.

flant.ru — именитый аутсорсер и главный внедренец kubernetes в РФ. Это в основном крупный бизнес, тогда как у первых двух можно заказать поддержку даже одного сервера.

nixys.ru — знаю их по известной программе nxs-backup (странно, что ни разу не написал о ней), которую видел в работе и у других аутсорсеров. У них неплохой блог на Хабре.

👨‍💻 Вот вам сразу вакансии, чтобы не искать по сайтам:
https://southbridge.io/vacancies#list
https://job.flant.ru/vacancies
https://nixys.ru/jobs/
У Fevlake сейчас нет открытых вакансий. По открытым вакансиям заказчик может оценить, кто будет работать с его инфраструктурой.

Если у вас есть личные рекомендации каких-то хороших аутсорсеров, особенно если с ними работали и всё понравилось, то поделитесь в комментариях. Я соберу всё в общий список.

#разное