Всем зрасти. Забирайте спеца на работу.
Codename: Андрей
Rank: Овер-преисполнившийся Linux-админ
Контакт: @egoza73
🛠 #кандидаты #кадры
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
Codename: Андрей
Rank: Овер-преисполнившийся Linux-админ
⚪ Последнее время активно занимается мониторингом, особенно Zabbix, хотя может и в пром с графаной
⚪ Помогал мне тестировать и писать шаблоны для PVE/PBS и эта штука с небольшими видоизменениями с 6го заббикса стала официальной
⚪ Отлично разбирается в Linux, с закрытыми глазами разберет и соберет ядро с учетом нюансов железа и ПО
⚪ Кубер не уважает, к ансиблистам относится очень настороженно
⚪ Владеет светлой магией Bash, тёмной магией Perl, и немного Python
Контакт: @egoza73
—
Please open Telegram to view this post
VIEW IN TELEGRAM
Разбираемся с options и inputs в gitlab
ㅤ
Частенько ребята с LF стали приходить с такой проблемой:
Это кусокговна пайплайна, который при запуске формирует выпадающий список окружений, выбираешь окружение и деплой проходит в него.
Ошибок синтаксиса в ямликах нет, каких-то разумных сообщений и наводок от гитлаба тоже нет. Чё делать?
➡️ Решение
Идем:
Всё! Теперь выпадающие списки вновь начинают работать.
А еще людей смущает новая штука
Оно будет пиздеть во внутреннем редакторе -
А зачем нам этот input ведь с options и так всё работает?
Ну хотя бы из-за типизированных параметров:
То есть:
- можно сделать чекбокс (boolean)
- можно сделать список (array)
- можно сделать ограничение по диапазону (number)
- можно сделать строгие варианты (options)
- можно сделать regex-валидацию
А обычный
GitLab постепенно превращает CI в настоящий «Pipeline as Functions».
Например, в проекте А:
И проекте B можно вызвать:
Это как вызов функции с аргументом.
Что еще:
- Inputs работают даже при trigger-пайплайнах
- Inputs могут быть required
- Inputs отображаются отдельно и аккуратно в UI
- Inputs часть нового стандарта GitLab CI Components
Короче одни плюсы. Но есть большое НООООО!
Это пиздец усложняет процесс разработки и отладку пайплайна.
Да, стало удобнее и гибче, но всё это превращается в безумное ООП, где без базы и документации к проекту — ты хуй разберешься.
Пока тебе хватает обычных
Изучай!
Как говорится — и не такие метели в ебало летели!
🛠 #devops #cicd #linuxfactory
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
ㅤ
Частенько ребята с LF стали приходить с такой проблемой:
stages:
- deploy
variables:
ENVIRONMENT:
description: "Deployment environment"
value: "N/A"
options:
- "N/A"
- "STAGE"
- "PRODUCTION"
deploy:
stage: deploy
script:
- echo "Выбрано окружение:" "${ENVIRONMENT}"
rules:
- when: manual
Это кусок
НО — этот список перестал появляться. Причем избрано, у кого-то есть, у кого-то хуй с маслом.
Ошибок синтаксиса в ямликах нет, каких-то разумных сообщений и наводок от гитлаба тоже нет. Чё делать?
Идем:
Settings → CI/CD → Variables и кликаем в радио-батон — Developer.Всё! Теперь выпадающие списки вновь начинают работать.
А еще людей смущает новая штука
inputs, которая совсем недавно появилась. Работает она с 17й версии.spec:
inputs:
environment:
description: "Куда деплоим?"
type: string
default: "N/A"
options:
- "N/A"
- "STAGE"
- "PRODUCTION"
---
stages:
- deploy
deploy:
stage: deploy
rules:
- when: manual
script:
- echo "Выбрано окружение: $[[ inputs.environment ]]"
Оно будет пиздеть во внутреннем редакторе -
Incorrect type. Expected "string | array".yaml-schema, но будет работать если запустить пайплайн.Ошибка возникает, потому, что Pipeline Editor использует старый YAML-валидатор. Так что, не обращай внимание на этот пиздёж.
А зачем нам этот input ведь с options и так всё работает?
Ну хотя бы из-за типизированных параметров:
type: string | number | boolean | array
То есть:
- можно сделать чекбокс (boolean)
- можно сделать список (array)
- можно сделать ограничение по диапазону (number)
- можно сделать строгие варианты (options)
- можно сделать regex-валидацию
А обычный
variables такого не умеют.GitLab постепенно превращает CI в настоящий «Pipeline as Functions».
Например, в проекте А:
spec:
inputs:
env:
type: string
options: [stage, prod]
---
deploy-job:
script: deploy_to $[[ inputs.env ]]
И проекте B можно вызвать:
deploy:
trigger:
project: A
inputs:
env: prod
Это как вызов функции с аргументом.
Что еще:
- Inputs работают даже при trigger-пайплайнах
- Inputs могут быть required
- Inputs отображаются отдельно и аккуратно в UI
- Inputs часть нового стандарта GitLab CI Components
Короче одни плюсы. Но есть большое НООООО!
Это пиздец усложняет процесс разработки и отладку пайплайна.
Да, стало удобнее и гибче, но всё это превращается в безумное ООП, где без базы и документации к проекту — ты хуй разберешься.
Пока тебе хватает обычных
options используй их. Не лезь в это ООП, оно пока рано и избыточно, особенно если ты новичок.Изучай!
Как говорится — и не такие метели в ебало летели!
—
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
7 40
Надоел и приелся VirtualBox/VMWare? Хочется новенького?
Да легко, опять же эта новая херабора как-то мимо многих прошла, включая меня. Нет это не LXC, vagrant и даже не docker.
Короче, это — Multipass от Canonical. И да, полностью бесплатная и с мордой.
ㅤ
Выдумать ничего не буду, лови нативку с сайта:
Работает под Linux, Wiundows, Mac
Что же это за зверь?
Multipass использует доступный гипервизор в зависимости от платформы:
- Linux — KVM
- macOS — HyperKit или QEMU
- Windows — Hyper-V или VirtualBox (в новых версиях QEMU)
Можно управлять как через морду, так и через командную строку. Это развязывает руки. Например, можно накодить себе bash скрипт и через него поднимать виртуалки под лабы.
Чё прикольно, для него есть Terraform провайдер, ну прям не инструмент, а золото.
Работает элементарно, если через морду — выбираешь дистрибутив, накручиваешь ползунки и жмешь Launch, через 40 секунд у тебя готовая виртуалка.
Ну либо headless (через командную):
Основные команды:
Из дистрибутивов только Ubuntu, но этого достаточно чтобы что-то протестировать либо погонять. Ребята в LF активно этим инструментом пользуются и создают тестовые кубер-кластера, ну и ансибл оттачивают.
Настроек там жопой ешь, так что можно и статические айпишники мутить, выбирать сетевые режимы и многое другое.
В общем рекомендую, инструмент зачетный, никакой ёбли как VBox и VMWare.
🛠 #devops #vm #linux
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
Да легко, опять же эта новая херабора как-то мимо многих прошла, включая меня. Нет это не LXC, vagrant и даже не docker.
Дело пахнет писюнами…
Короче, это — Multipass от Canonical. И да, полностью бесплатная и с мордой.
ㅤ
Выдумать ничего не буду, лови нативку с сайта:
Получитепо ебалумгновенную виртуальную машину Ubuntu с помощью одной команды. Multipass может запускать виртуальные машины и настраивать их с помощью cloud-init, как в общедоступном облаке. Прототип вашего облака запускается локально и бесплатно.
Работает под Linux, Wiundows, Mac
Что же это за зверь?
Multipass использует доступный гипервизор в зависимости от платформы:
- Linux — KVM
- macOS — HyperKit или QEMU
- Windows — Hyper-V или VirtualBox (в новых версиях QEMU)
Можно управлять как через морду, так и через командную строку. Это развязывает руки. Например, можно накодить себе bash скрипт и через него поднимать виртуалки под лабы.
Чё прикольно, для него есть Terraform провайдер, ну прям не инструмент, а золото.
terraform {
required_providers {
multipass = {
source = "larstobi/multipass"
version = "~> 1.4.2"
}
}
}Работает элементарно, если через морду — выбираешь дистрибутив, накручиваешь ползунки и жмешь Launch, через 40 секунд у тебя готовая виртуалка.
Ну либо headless (через командную):
Основные команды:
multipass launch --name foo
multipass exec foo -- lsb_release -a
multipass list
multipass stop foo bar
multipass start foo
multipass delete bar
multipass purge
multipass find
multipass launch -n bar --cloud-init cloud-config.yaml
multipass help
Из дистрибутивов только Ubuntu, но этого достаточно чтобы что-то протестировать либо погонять. Ребята в LF активно этим инструментом пользуются и создают тестовые кубер-кластера, ну и ансибл оттачивают.
Настроек там жопой ешь, так что можно и статические айпишники мутить, выбирать сетевые режимы и многое другое.
В общем рекомендую, инструмент зачетный, никакой ёбли как VBox и VMWare.
—
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
5 57
Недавно я обмолвился про Karpenter в Selectel, ну так вот, теперь этот инструмент можно потыкать в реальных условиях.
Работает это так — сервис обладает информацией о доступных ресурсах и ценах, а далее автоматически подбирает конфиги в зависимости от твоих хотелок.
Киллер-фича — создание оптимальных узлов под фактическую нагрузку, а не предварительное масштабирование определенных node groups.
По итогу автоскейлинг становится быстрее, дешевле и умнее. Karpenter создает идеальные ноды под конкретные поды «на лету», а не выбирает из заранее заданных node groups.
Мир меняется, технологии меняются.
Установи Karpenter в Managed Kubernetes и оптимизируй расходы на инфраструктуру → https://slc.tl/hr1d3
Реклама, АО «Селектел», erid: 2VtzqvvWPbP
Если запамятовал, то Karpenter это штука, разработанная AWS, которая позволяет масштабировать инфраструктуру и снижать затраты.
Работает это так — сервис обладает информацией о доступных ресурсах и ценах, а далее автоматически подбирает конфиги в зависимости от твоих хотелок.
Киллер-фича — создание оптимальных узлов под фактическую нагрузку, а не предварительное масштабирование определенных node groups.
По итогу автоскейлинг становится быстрее, дешевле и умнее. Karpenter создает идеальные ноды под конкретные поды «на лету», а не выбирает из заранее заданных node groups.
Мир меняется, технологии меняются.
Установи Karpenter в Managed Kubernetes и оптимизируй расходы на инфраструктуру → https://slc.tl/hr1d3
Если Karpenter молчит — это не значит, что он завис. Это значит, что он думает, как сделать ещё дешевле.🥳
Реклама, АО «Селектел», erid: 2VtzqvvWPbP
Please open Telegram to view this post
VIEW IN TELEGRAM
selectel.ru
Managed Kubernetes | Сервис для создания и управления кластерами Kubernetes
Ускоряйте процесс тестирования и внедрения приложений с помощью сервиса Managed Kubernetes. Оплата только за потребленные ресурсы и использованные нагрузки.
А вот это нам надо!
TUI админка для Proxmox. И да, ее можно поставить себе локально и цепануть к ней все твои Proxmox кластера, которые находятся где-то в сети.
ㅤ
Называется всё это добро — pvetui
Работает под всеми операционками, так как реализован на GO.
А зачем? Ну я заебался каждый раз лезть в браузер, чтобы сделать какие-то рутинные действия, да и айпишники я никогда не помню чтобы к ним по ssh подключиться. А через
Установка и запуск:
Под другие ОС:
При первом запуске утилита попросит сконфигурировать её. Жмем пару раз Enter, открывается редактор конфига, заполняем необходимые поля.
Я заполнил URL, логин и пароль от панели Proxmox. Чтобы оно не орало, нужно стереть данные в полях API, тогда оно даст сохранить конфигурационный файл.
Инициализация, закончена, видим сообщение:
Запускаем морду и смотрим что получилось.
Эту штуку можно повесить на alias либо прописать в PATH, чтобы полные пути до бинарника каждый раз не писать.
А получилось у нас прям заебись. Теперь я нажимаю ALT+2 и попадаю в список всех своих виртуальных машин. Стрелочками выбираю нужную мне машину и нажимаю букву «m», открывается менюшка.
В менюшке можно сразу провалиться в машину по SSH, что мне и нужно. Но это еще не всё, там и ребуты и миграции, даже VNC есть (нужен xdg). Короче базовый минимум поадминить присутствует.
Да, если нажать «ESC» то откроется еще одна глобальная менюшка для конфигурации самой утилиты, выбор профилей, управление плагинами и т.п.
Короче явки-ссылки я тебе дал, дальше сам смотри, всё там гибко конфигурируется и настраивается. И тем более TUI интерфейсы сейчас прям в трендах.
Хорошей тебе рабочей недели! Не болей!
🛠 #selfhosting #linux #devops
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
TUI админка для Proxmox. И да, ее можно поставить себе локально и цепануть к ней все твои Proxmox кластера, которые находятся где-то в сети.
ㅤ
Называется всё это добро — pvetui
Работает под всеми операционками, так как реализован на GO.
А зачем? Ну я заебался каждый раз лезть в браузер, чтобы сделать какие-то рутинные действия, да и айпишники я никогда не помню чтобы к ним по ssh подключиться. А через
pvetui такое можно провернуть в два счета.Ты скажешь — дак сделай алиасы для айпишников и цепляйся к нужным виртуалкам. Справедливо, но мне лень. Тем более виртуалки у меня постоянно создаются, удаляеются и я ебал каждый раз алиасы делать.
Установка и запуск:
go install github.com/devnullvoid/pvetui/cmd/pvetui@latest
/home/user/go/bin/pvetui
Под другие ОС:
yay -S pvetui-bin
yay -S pvetui-git
brew install --cask devnullvoid/pvetui/pvetui
scoop bucket add pvetui https://github.com/devnullvoid/scoop-pvetui
scoop install pvetui
# либо из исходников
git clone https://github.com/devnullvoid/pvetui.git
cd pvetui
make install
При первом запуске утилита попросит сконфигурировать её. Жмем пару раз Enter, открывается редактор конфига, заполняем необходимые поля.
Я заполнил URL, логин и пароль от панели Proxmox. Чтобы оно не орало, нужно стереть данные в полях API, тогда оно даст сохранить конфигурационный файл.
Но опять же если у тебя API ключ, делаешь под своё конфигурацию.
Инициализация, закончена, видим сообщение:
✅ Configuration is ready!
🔄 Please re-run 'pvetui' to start the application with your new configuration.
🚪 Exiting.
Запускаем морду и смотрим что получилось.
/home/user/go/bin/pvetui
Эту штуку можно повесить на alias либо прописать в PATH, чтобы полные пути до бинарника каждый раз не писать.
А получилось у нас прям заебись. Теперь я нажимаю ALT+2 и попадаю в список всех своих виртуальных машин. Стрелочками выбираю нужную мне машину и нажимаю букву «m», открывается менюшка.
В менюшке можно сразу провалиться в машину по SSH, что мне и нужно. Но это еще не всё, там и ребуты и миграции, даже VNC есть (нужен xdg). Короче базовый минимум поадминить присутствует.
Да, если нажать «ESC» то откроется еще одна глобальная менюшка для конфигурации самой утилиты, выбор профилей, управление плагинами и т.п.
Короче явки-ссылки я тебе дал, дальше сам смотри, всё там гибко конфигурируется и настраивается. И тем более TUI интерфейсы сейчас прям в трендах.
Хорошей тебе рабочей недели! Не болей!
—
Please open Telegram to view this post
VIEW IN TELEGRAM
7 42