ServerAdmin.ru
27.1K subscribers
189 photos
27 videos
8 files
2.49K links
Авторская информация о системном администрировании.

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

Второй канал: @srv_admin_live
Сайт: serveradmin.ru
Download Telegram
​​Если вам вдруг понадобится база данных PostgreSQL для каких-то целей на время, можно воспользоваться готовым сервисом с бесплатным тарифным планом. Например - https://bit.io. Они бесплатно дают PostgreSQL managed database service с ограничением размера базы в 10 Гб и не более 10 миллионов запросов в месяц.

Подобный сервис может быть полезен в первую очередь для каких-то тестов, когда не хочется поднимать и настраивать свою базу данных. В bit.io для регистрации нужен только email. Сразу после регистрации вы получите тестовую базу данных и параметры подключения к ней. Не удаляйте ее. У меня не получилось после удаления заново создать бесплатную базу. То ли глюк, то ли какое-то ограничение, я не понял.

Чтобы узнать параметры подключения к базе, в личном кабинете слева нажмите на кнопку Connect. Увидите адрес сервера, имя базы, пароль от неё. Доступ к базе возможен как через внешнее подключение, так и через веб интерфейс личного кабинета, что упрощает управление. Я сразу же проверил подключение через HeidiSQL. Без проблем подключился.

#бесплатно #postgresql
​​Ntopng - анализатор сетевого трафика, в том числе в режиме реального времени. Также он умеет принимать и анализировать netflow потоки. Это достаточно мощная система, которая имеет в том числе бесплатную версию с открытыми исходниками под лицензией GPLv3.

Основные возможности ntopng:
Веб интерфейс для управления
Визуализация трафика в режиме реального времени
Фильтрация и группировка трафика по различным признакам
Группировка хостов по различным признакам (ГЕО, AS, система и т.д.)
Хранение исторических данных в БД
Формирование предупреждений на основе различных событий
Отправка оповещений по email, telegram, discord и т.д.

Ставится и настраивается ntopng очень просто. Для deb и rpm дистрибутивов есть репозитории. А сама программа поддерживает практически все современные ОС, среди которых Linux, Windows, MacOS, Freebsd. Запустить проще всего в Docker:

# docker run -it -p 3000:3000 \
-v $(pwd)/ntopng.license:/etc/ntopng.license:ro \
--net=host ntop/ntopng:stable -i ens18

После этого идём в веб интерфейс http://192.168.13.157:3000/, учётка admin / admin. Дальше уже разберётесь, там всё интуитивно понятно. Трафик с указанного интерфейса ens18 сразу же начнет анализироваться.

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

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

Сайт - https://www.ntop.org/
Исходники - https://github.com/ntop/ntopng
Dockerhub - https://hub.docker.com/r/ntop/ntopngs
Обзор - https://www.youtube.com/watch?v=sJkLmjaj02E

#gateway #netflow
​​Хотите прослыть крупным специалистом среди обычных людей? Особенно хорошо сработает предложенный метод, если сидите с ними в одном кабинете. Для пущей убедительности понадобится еще один монитор. Открываете на нём терминал и там запускаете генератор бессмысленной активности. О том, что активность бессмысленная, не должен никто догадаться.

Если запускаете генератор в отдельном мониторе, выработайте привычку вдумчиво смотреть в него, когда о чем-то задумываетесь. Если у вас только один монитор, то генератор активности запускайте, когда куда-то уходите.

А поможет вам в этом деле genact - https://github.com/svenstaro/genact. Работает и под виндой, и под линуксом. Для пущей убедительности запускать можно в докере:
# docker run -it --rm svenstaro/genact
Либо просто скачайте бинарник и запустите. Можно указать конкретные модули имитации активности, среди доступных: botnet, bootlog, kernel_compile, memdump, cargo, cc, composer, docker_build, cryptomining, download, mkinitcpio, weblog, docker_image_rm, simcity.

Во всем этом деле главное дурачком не прослыть 😁 Так что действуйте на свой страх и риск.

#разное #devops
​​Прочитал вчера неприятную историю про TeamViewer, решил с вами поделиться. Думаю, всем знакома эта программа. Одно время хотел её купить, так как часто пользовался, но потом передумал 😁 А сейчас вообще не пользуюсь.

Один человек оплатил подписку на год, попользовался пару месяцев, а потом забыл про неё. Через год у него автоматом списали 16 000 ₽ и отдавать не хотят. Оказывается, в договоре, на который соглашаешься, где-то в незаметном месте есть такой пункт:

Сроĸ действия лицензии на подписĸу автоматичесĸи продлевается еще на 12 месяцев, если она не была отменена в письменной форме за 28 дней до даты истечения сроĸа.

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

В общем, будьте аккуратны с TeamViewer и прочими такими хитрожопыми компаниями. Я из-за этого никогда не оформляю подписки на всякие "месяц бесплатно", а если и приходится, то использую виртуальные карты. Есть вообще такие, которые берут деньги за месячную подписку, а потом делают списание сразу за 1-2 года вперед. И у них это прописано где-то в договоре, на который соглашаешься при месячной оплате.

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

Источник новости про TeamViewer.
​​Сколько себя помню, всегда использовал в Linux и Freebsd файловый менеджер MC (Midnight Commander). Я даже и не слышал никогда о каких-нибудь других. Решил посмотреть, а есть ли вообще какие-то сколь-нибудь популярные аналоги. Оказывается есть - Ranger. Причем он есть в базовых репозиториях. В Rocky Linux поставил его из epel.

# dnf install ranger

Где-то полчаса им попользовался и сейчас пишу эту заметку. Впечатление неоднозначные. Выглядит он немного непривычно после MC, так как нет границ панелей, только черный фон. Понятное дело, все горячие клавиши другие, что для меня просто фатально после стольких лет использования MC. Руки автоматом жмут на горячие клавиши.

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

В Ranger удобные горячие клавиши. Если нажать быстро aa, можно переименовать файл. Если выберите файл и нажмёте i, откроется просмотр, если →, то редактор. Я попользовался, посмотрел доступные горячие клавиши и понял, что перемещаться по каталогам, работать с файлами в Ranger удобнее, чем в MC.

Много писать не буду, так как длинные заметки все равно мало кто читает. Могу порекомендовать посмотреть на Ranger. Если еще не совсем приросли к MC, возможно он вам понравится больше. Я пользоваться вряд ли буду, не хочу переучиваться.

#разное
​​Как понять, что ты в контейнере?

Ко мне обратился знакомый и попросил помочь с установкой и запуском Docker на виртуальной машине. Говорит, вроде все поставили, но не запускается. Не можем понять, почему.

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

Дале запустил ps ax и удивился очень короткому выводу. Я не знаю, что там гарантированно должно быть, не разбирался подробно в теме, но системных процессов и потоков ядра почти не было. Сразу закрались сомнения.

Посмотрел список дисков, там было что-то вроде /dev/ploop45653p1. Тоже странно для обычной витуалки. Я уже понял, что это не она, а какой-то контейнер. Решил точно это установить. Есть совет, проверить cgroup.
# cat /proc/1/cgroup
В выводе ничего, что указало бы на наличие контейнера, не заметил. Нет упоминания ни docker, ни lxc.

Пошёл дальше, посмотрел окружение первого процесса:
# cat /proc/1/environ
HOME=/TERM=linuxcontainer=206
Тут окончательно убедился, что у ребят не виртуалка а контейнер, причем на базе openvz скорее всего, так как именно эта технология активно использовалась раньше у хостеров, а сейчас сходит на нет. Редко где вижу, но тем не менее встречается. Цены чуть ниже, чем у виртуалок, так что некоторые не понимают разницу и берут их.

Если знаете еще способы быстро и просто определить, что ты в контейнере, поделитесь. Я вообще первый раз попал в такую историю, что не понятно было сразу, что это контейнер. На практике кроме докера, контейнеры особо не используют, особенно в публичном хостинге.
​​Как многие наверно уже слышали, вышел релиз Proxmox 7.1, где на удивление много новых и полезных штук завезли. Я решил не откладывать в долгий ящик и сразу посмотреть нововведения на своем тестовом сервере.

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

И вот я вчера накатил обновление. Как думаете, я вспомнил про то, что нужно было сначала пересобрать модуль под новое ядро с работающими драйверами сетевухи? Конечно нет. Я обновился, перезагрузился и всё пропало. Теперь надо подключать моник, перекидывать исходники нового ядра, собирать модуль и загружать в новое ядро. А пока сети нет.

Будет чем заняться в пятницу вечером. Всем хороших выходных. И не ставьте костыли в production. Лучше, как я, домой.

#proxmox
​​В продолжении вчерашнего поста про определение типа контейнера, в котором ты находишься. Я попробовал разные способы и самым простым и информативным оказался с помощью systemd. Правда для этого сама система инициализации должна быть установлена в контейнере. Скорее всего она там будет, так как по умолчанию стоит практически во всех дистрибутивах Linux. А раз вы оказались в контейнере по ssh и пытаетесь определить, что это за окружение, то там скорее всего контейнер максимально похожий на виртуальную машину и systemd должен стоять.

Контейнер Docker:
# hostnamectl status
Static hostname: 95e12c0e824c
Icon name: computer-container
Chassis: container
Virtualization: docker
Operating System: Debian GNU/Linux 11 (bullseye)
Kernel: Linux 5.4.0-88-generic
Architecture: x86-64

Контейнер LXC:
# hostnamectl status
Static hostname: n/a
Transient hostname: rockylinux8-ct
Icon name: computer-container
Chassis: container
Virtualization: lxc
Operating System: Rocky Linux 8.4 (Green Obsidian)
CPE OS Name: cpe:/o:rocky:rocky:8.4:GA
Kernel: Linux 5.11.22-4-pve
Architecture: x86-64

Контейнер OpenVZ:
# hostnamectl status
Static hostname: ovz1
Icon name: computer-container
Chassis: container
Virtualization: openvz
Operating System: Ubuntu 20.04.3 LTS
Kernel: Linux 5.4.0
Architecture: x86-64

Виртуальная машина KVM:
# hostnamectl status
Static hostname: ubuntu
Icon name: computer-vm
Chassis: vm
Virtualization: kvm
Operating System: Ubuntu 20.04.3 LTS
Kernel: Linux 5.4.0-88-generic
Architecture: x86-64

Кстати, в контейнере OpenVZ оказалось можно было запустить нормально Docker. У хостера есть своя панель управления контейнерами, откуда можно устанавливать софт. Если поставить Docker через эту панель, он нормально запускается. Подозреваю, что необходимо добавить какие-то настройки в хосте для этого контейнера, чтобы Docker заработал. Скорее всего не хватало прав на создание сетевых интерфейсов.

#terminal #bash
​​Продолжаем тему контейнеров. Есть классный консольный интерфейс для управления Docker контейнерами - lazydocker. С его помощью можно быстро и удобно накликать мышкой всё, что вам нужно.

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

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

Быстрый запуск без установки:
docker run --rm -it -v \
/var/run/docker.sock:/var/run/docker.sock \
-v ~/lazydocker:/.config/jesseduffield/lazydocker \
lazyteam/lazydocker

Написан на гошечке. Все быстро, удобно, приятно. Хороший софт. Под виндой тоже работает.

❗️Кстати, вы пользуетесь мышкой при работе в консоли?

Исходники - https://github.com/jesseduffield/lazydocker
Видеообзор - https://www.youtube.com/watch?v=NICqQPxwJWw

#docker #terminal
​​Сейчас будет информация об очень суровой игре для настоящих хакеров и линуксоидов. Ненастоящие просто не поймут даже как запустить эту игру. А в самой игре кроме консоли Linux нет ничего. Принимаете вызов? Виндузятникам можно даже не начинать.

Игра настолько сурова и олдова, что у неё даже сайта не осталось. Качать придётся из веб архива. Речь про игру Fate. Сама игра это 16-разрядное досовское приложение. Для запуска на Windows 10 я использовал Dosbox.

Для запуска через Dosbox, его нужно установить, запустить, примонтировать директорию с игрой:
> mount c "c\Users\User\Downloads\Fate"
> C:
> Fate.exe

Запустится игра. Я не удержался и сам поиграл. Было любопытно посмотреть. Подскажу немного, иначе не понятно вообще с чего начинать. Intro пропускать не надо, нажав X, как предлагают на заставке. Нажмите Enter и увидите вступление с подсказкой.

Далее логинитесь на сервер и осматриваетесь. В домашней директории будет файл Welcome, посмотрите его. Далее нам нужно получить пароль root. В файле /etc/passwd есть его hash, а подобрать по нему пароль можно с помощью утилиты /usr/john/john. Запускаете утилиту, вводите hash, получаете пароль. Заходите с помощью su под рутом, смотрите домашнюю директорию. И так далее.

Игра суровее некуда. Я более реалистичных симуляторов хакера не встречал.

Обзор - https://www.youtube.com/watch?v=DKQRp8XHp0g
Сайт - http://web.archive.org/web/20160209125815/http://fatetek.net
Игра - http://web.archive.org/web/20160209125815/http://fatetek.net/Fate.zip
DosBox - https://www.dosbox.com/

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

Есть другое решение - X2Go. Работает на базе протокола NX, который показывает хорошее быстродействие по сравнению с VNC, особенно на медленных каналах. X2Go - сервер, который устанавливается непосредственно на Linux машину. А подключаться к ней можно с любой другой системы, в том числе и Windows, с помощью клиента под неё.

Попробовать всё это дело проще простого. Покажу на примере рабочего окружения XFCE на Ubuntu 20. Ставим XFCE:
# apt install xfce4 xfce4-goodies xorg \
dbus-x11 x11-xserver-utils
Теперь X2Go:
# apt install x2goserver x2goserver-xsession

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

Подключимся с виндовой машины. Для этого качаем клиент - https://wiki.x2go.org/doku.php/download:start. Запускаете и настраиваете параметры подключения. Достаточно указать ip адрес, учётку ssh и окружение XFCE. Все очень легко и быстро. Я сам все попробовал, понравилось.

У меня была раньше виртуалка в Европе на Linux с графическим окружением. Использовал для работы в браузере с европейских ip, чтобы не морочиться с прокси или vpn. Нужен был чистый отдельный комп и браузер. Но быстро надоело, так как по VNC некомфортно сёрфить. Попробую теперь с X2Go.

Сайт - https://wiki.x2go.org/

Получилась готовая инструкция, забирайте в закладки.

#remote
​​Последнее время у Zabbix регулярные вебинары на русском языке однотипные. Рассказывают одно и то же по кругу каждую неделю:
Установите и настройте Zabbix за 5 минут
Обзор системы мониторинга Zabbix

Раньше было гораздо больше тем и интересных выступлений. Я регулярно слушал. Решил посмотреть другие языки. Оказывается, на английском разнообразия больше. Записался на ближайший вебинар - Zabbix Performance & Tuning. Тема заявлена любопытная. Посмотрю, насколько полезны вебинары на английском.

Список вебинаров - https://www.zabbix.com/ru/webinars
Регистрация на этот вебинар в zoom
Не забывайте учитывать часовой пояс. Как я понял, этот вебинар пройдет в 15:00 по Москве.

#zabbix
​​Снова возвращаюсь к проблеме с обновлением Proxmox, которая возникла после перехода на версию 7. Не буду всё подробно описывать, так как было много заметок по этой теме. Вот последняя с некоторыми итогами и рабочим решением. Написать еще раз решил, потому что за последние несколько дней мне 3 человека написали и поделились информацией о зависании виртуалок, пока не изменишь настройку aio=native, убрав io_uring.

Я изначально думал, что это проблема какого-то самосбора или нестандартного железа, но нет. У знакомого этот же глюк с зависанием воспроизводится на Dell T610 с контроллером perc h700. Он обновил Proxmox с 6 до 7.1. Ниже полезная информация от другого читателя:

Вышел 7.1. Работает замечательно. Но проблема со сломанным io_uring никуда не делась, только усугубилась. Виснут машины, умирают данные на дисках. Чтобы этого не было, диски необходимо подключать к SCSI и писать aio=threads (если включено кеширование) или aio=native (если выключено кеширование).

Какая-то грустная история с этим глюком. Я кое-где обновился до 7-й версии, все нормально. Но обновлять остальное теперь боюсь. Не хочется получить зависание прода. Лазить постоянно в настройки виртуалок и руками менять конфиги не хочется. Костыльно это как-то. Надеюсь рано или поздно проблема решится. Думал, что в 7.1 будет решение, по факту нет. Ничего не изменилось.

#proxmox
​​Я давно знал, что Docker есть под Windows, но только сейчас дошли руки его попробовать. Приятно удивлён, как там все устроено. Работает нормально, всё удобно. Ставится отдельная приложуха и всё управление через неё - запуск и остановка контейнеров, просмотр логов, образов и т.д.

Для установки на Windows 10 или 11, достаточно скачать и установить приложение Docker Desktop for Windows. А также включить компонент Windows - WSL2.

Установка Docker возможна и на Windows Server. Для этого сначала надо установить компонент PowerShell - DockerMsftProvider. После этого через Powershell ставим сам докер:
Install-Package -Name docker -ProviderName DockerMsftProvider

Управлять контейнерами на сервере можно в том числе и с помощью Windows Admin Center. Для этого надо установить расширение "Контейнеры". Я сам лично на сервер докер не ставил, не проверял. А вот на десктоп поставил и пользуюсь.

Я себе локально установил dns сервер от Adguard в контейнере, чтобы было удобнее отлавливать локальные запросы к DNS.

#docker #windows
​​Вчерашняя заметка про Proxmox вызвала бурные обсуждения в комментариях на тему использования различных гипервизоров. Звучали мнения, что Proxmox нафиг не нужен, так как есть бесплатный esxi.

Мне лично Proxmox нравится больше всего тем, что его можно установить на софтовый рейд mdadm. Это основное преимущество для меня. Кто-то любит zfs и поэтому использует Proxmox. Esxi, к примеру, вообще не поддерживает софтовые рейды, только железные и то не все. Но лично мне больше нравятся именно софтовые рейды, в частности mdadm. С ним меньше всего хлопот, у него очень предсказуемое и надежное поведение. Никогда не было с ним проблем.

Таким образом, Proxmox можно установить на любой самосбор с двумя дисками и получить вполне надежное решение, особенно если подобных самосборов будет несколько и они объединены в кластер. Удобно, когда и прод и тестовые машины одинаковые, а на тест можно что-то дешманское купить. Я активно эксплуатирую бюджетные двухдисковые сервера от Selectel и ставлю туда Proxmox на mdadm из готового шаблона. Ничего настраивать не надо. Заказал сервер и получил готовый Proxmox на софтовом RAID1.

Кстати, когда XenServer можно было тоже установить на mdadm, я использовал его. Мне очень нравился этот гипервизор за его удобное приложение под Windows для управления виртуалками. Прекратил использовать Xenserver с выходом 7-й версии, когда он перестал нормально устанавливаться и обновляться на mdadm. После этого перешёл на Proxmox. А сейчас с выходом Proxmox Backup Server у него вообще нет бесплатных альтернатив.

Иногда ставлю бесплатный Hyper-V Server, если предполагается использование виндовых серверов. У меня есть ни на чём не основанное мнение, что виндовые сервера лучше запускать на Hyper-V. Да и просто хлопот меньше с драйверами. Все сразу работает и поддерживается.

#виртуализация
​​Посмотрел вчера вебинар Zabbix на английском языке, о котором писал накануне. Поначалу так жиденько показалось, но в итоге посмотрел его весь. Длился час. Информация давалась базовая, которую лично я всю знал. Смотрел чисто чтобы оценить уровень материала. Сначала не очень понравилось, потому что информация вся обзорная, базовая. Думал по верхам попрыгают и закончат за 20 минут.

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

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

Завтра будет событие года для Zabbix под названием Zabbix Summit Online 2021, где будет анонс Zabbix 6.0. Я изначально не планировал слушать, хотел подождать Zabbix Meetup на русском языке. Но в итоге не удержался и решил хотя бы начало послушать, где Алексей Владышев презентует изменения в 6.0.

https://www.zabbix.com/ru/events/zabbix_summit_2021
Регистрация бесплатная, нужен email. Начало в 15:00 по Москве.

#zabbix
​​Очередной полезный сервис с бесплатным тарифным планом. На этот раз аналог известной облачной платформы Heroku - Qoddi (https://qoddi.com/). Если знакомы с Heroku, то про Qoddi вам добавить нечего. Их главное отличие - огромная разница в цене. Qoddi намного дешевле.

Раньше я о них не слышал. Думаю, что сервис молодой, поэтому даёт очень хорошие лимиты на бесплатном тарифе. Можно поднять 3 ноды с ресурсами 1 CPU, 512 RAM, 10 Gb диск. В качестве ноды, к примеру, может выступать база данных Mysql, запущенная как сервис. То есть сразу получите параметры подключения к базе, но только внутри инфраструктуры. Внешнего подключения не будет, как недавно было с postgresql.

Для тех, кто не совсем понимает, как работают подобные сервисы, расскажу на пальцах. Создаёте новое приложение и выбираете его тип. Например, веб сервис. Далее указываете, какие еще сервисы ему нужны. К примеру, база данных Mysql. У вас будут созданы 2 ноды - приложение и база данных.

Для базы данных сразу же получаете параметры доступа. Для веб приложения подключаете репозиторий git, откуда будет приезжать код. Я для примера взял их тестовую репу для php - https://github.com/qoddiapps/getting-started-with-php, форкнул к себе и подключил репозиторий.

У меня всё задеплоилось, на выходе получил урл для доступа - http://obcvpqxwkt.eu05.qoddiapp.com/ Можете сходить, глянуть, что там. Это php код из моей репы. Можно подключить свой домен и настроить TLS. Дальше пишите код, коммитите и деплоите в облако. Всё максимально просто. Через веб панель меняете настройки, смотрите логи. В общем, админы больше не нужны, расходимся. Ну вы поняли 🙅🏻‍♂️

Подобный сервис идеален для своих ботов в телеге. Ну или для каких-то pet проектов на php, python, nodejs, ruby. Можно какие-то сервисы проверок для мониторинга вешать туда и дергать, чтобы не настраивать окружение у себя. В общем, применений много можно найти, была бы фантазия.

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

1️⃣ Более простой случай, особенно если у вас гипервизор на Linux. Сам гипервизор становится маршрутизатором для виртуальных машин. Настраиваете на нём firewall, nat и проброс нужных портов в виртуальные машины. В этом случае вообще не нужно трогать сетевые настройки на гипервизоре. Достаточно будет добавить один виртуальный интерфейс и подключать его виртуалкам. Через него они будут взаимодействовать с хостом.

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

2️⃣ Шлюзом для гипервизора и виртуальных машин выступает одна из виртуалок. Для подобной настройки на первое время понадобится прямой доступ через ip-kvm к консоли гипервизора, так как велика вероятность потери связи с хостом во время настройки. Когда я часто настраивал подобную схему, получалось всё провернуть быстро без потери связи, если нигде не ошибиться.

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

Создаёте виртуалку, которая будет шлюзом. К ней подключаете бридж и виртуальный интерфейс. На бридже настраиваете внешний ip. На виртуалке какую-то локальную сеть для связи виртуальных машин и гипервизора. Далее настраиваете всё, что нужно обычному шлюзу - firewall, nat, проброс портов. Я обычно здесь же настраиваю vpn и proxy-nginx. По необходимости dhcp и dns.

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

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

3️⃣ Заказываете дополнительные адреса и не тратите время на сетевые настройки. Но если у вас инфраструктура будет состоять из нескольких гипервизоров и вам захочется их объединить по vpn, то отдельный шлюз все равно пригодится, даже если адресов в избытке.

Если реально заинтересовались второй схемой, то почитайте более подробное описание в статье. Я там прям на конкретном примере с реального гипервизора показываю, как это на практике выглядит.

#виртуализация
​​Существует простой и удобный способ для записи и публикации действий в консоли - asciinema.org. Достаточно установить клиент на сервер, запустить его, выполнить какую-то комбинацию действий в консоли и остановить запись. После этого вам будет предложено либо сохранить запись локально, либо сразу залить в облачный сервис и тут же получить ссылку для просмотра и настройки доступа.

Приложение asciinema есть почти во всех системных репах, в том числе в pip и портах freebsd. Ставим:
# apt install asciinema
# dnf install asciinema
# pkg install py37-asciinema

После этого в консоли запускаем запись:
# asciinema rec
и начинаем что-то делать. Как закончим, останавливаем:
# exit

Получаете ссылку, идёте на сайт, регистрируетесь, настраиваете отображение и параметры доступа: публиковать или нет в публичный доступ.

Пример того, как это может выглядеть - docker run docker:
https://asciinema.org/a/24707

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

#разное #сервис
​​Есть очень старый сайт с интересными историями из мира it - https://ithappens.me. Он, к сожалению, не обновляется с 2015 года. Не знаю, что с ним случилось. Раньше я его регулярно читал, было интересно. На днях вспомнил про него, зашёл, почитал. Посмотрите, может тоже понравится. Пример того, что понравилось лично мне из того, что прочитал:

Нашёл работу в США и в первый же день, сам того не желая, затроллил местного админа.

Мне нужно было поставить дополнительную программу на компьютер. Прав админа у меня, понятное дело, нет, так что всё должен был делать местный специалист. Я ему звоню, он через Радмин берёт управление на себя и, начав перелогиниваться, говорит: мол, иди на обед, часа два на это уйдёт.

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

— @#$, уже час залогиниться не могу! Что за &%$@#, я уже всё перепробовал!

Глянул в угол экрана — таки да, «RU» там, а не «EN». Бедный американский админ и представить себе не мог, что на компе бывают какие-то другие раскладки, кроме английской. На мой Alt + Shift он смотрел откровенно квадратными глазами.

И это мой первый день. Надеюсь, он на меня не обиделся, а то месть админов бывает страшна.

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

#юмор
​​Я давно уже привык использовать proxy nginx для http подключений. С ней удобно управлять запросами, распределять их на разные сервисы, кэшировать, логировать и мониторить в одном месте. Недавно познакомился с подобным инструментом, только для mysql подключений - ProxySQL.

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

Настроить и запустить в работу ProxySQL достаточно просто.

Сайт - https://proxysql.com/
Исходники - https://github.com/sysown/proxysql/

▶️ Интересные и полезные видео по теме, которые посмотрел сам и могу рекомендовать:
ProxySQL: быстрый кэш запросов в MySQL 8.0 и не только (тут прям конкретная настройка и примеры работы):
https://www.youtube.com/watch?v=QCylrIyiHwg
MySQL orchestrator, ProxySQL – это продукты, которые вам нужны (HighLoad ++, доклад):
https://www.youtube.com/watch?v=YvbELUvqLm8

#mysql