Производительность Linux
Нашел в сети отличную инфографику: Linux observability tools, Linux static performance analysis tools, Linux benchmarking tools, Linux tuning tools, и Linux sar.
В хорошем качестве здесь
Нашел в сети отличную инфографику: Linux observability tools, Linux static performance analysis tools, Linux benchmarking tools, Linux tuning tools, и Linux sar.
В хорошем качестве здесь
👍4
Знали ли вы про такую команду в linux как - «yes»?
Например, есть у вас консольная команда, которая во время своей работы будет запрашивать подтверждение: а вы точно уверены, что удаляете тестовую базу данных? Вот на такие случаи и нужна команда «yes», чтобы не руками вводить подтверждение, а делегировать это действие.
Полезно для пайплайнов. Бывает такое, что у программы нет ключей типа apt -y install, а подтверждать как-то в автоматическом режиме нужно.
Синтаксис проброса стандартный, через систему пайпов:
В примере выше, когда пакетный менеджер попросит нажать Y, команда «yes» автоматически это сделает и начнется процесс установки.
Не забываем, про передачу аргументов, если внешняя программа например хочет чтобы вы ввели слово: «hello» делаем так:
Если есть команда «yes», значит должна быть и «no». Но увы😁 . Так вот если нужно отменить, передайте в «yes» аргументом строку «no».
Что-то может запросить простого нажатия Enter, например когда в репозиторий добавляется gpg ключ. Как послать Enter? А вот так:
Команда yes служит для вывода в стандартный поток (stdout) строки «y» или любой другой строки. Если ее запустить по умолчанию, команда будет бесконечно сыпать строку «y».
Например, есть у вас консольная команда, которая во время своей работы будет запрашивать подтверждение: а вы точно уверены, что удаляете тестовую базу данных? Вот на такие случаи и нужна команда «yes», чтобы не руками вводить подтверждение, а делегировать это действие.
Полезно для пайплайнов. Бывает такое, что у программы нет ключей типа apt -y install, а подтверждать как-то в автоматическом режиме нужно.
Синтаксис проброса стандартный, через систему пайпов:
yes | apt install nginx
В примере выше, когда пакетный менеджер попросит нажать Y, команда «yes» автоматически это сделает и начнется процесс установки.
Не забываем, про передачу аргументов, если внешняя программа например хочет чтобы вы ввели слово: «hello» делаем так:
yes hello | apt install nginx
Но обычно на практике, в 99% случаев команда «yes» запускается без аргументов, так как большинство запрашивает именно Yes.
Если есть команда «yes», значит должна быть и «no». Но увы
Что-то может запросить простого нажатия Enter, например когда в репозиторий добавляется gpg ключ. Как послать Enter? А вот так:
yes "" | <твоя команда>
Это сработает как Enter потому, что команда «yes» выводит в stdout не просто сроку Y, но еще и завершает ее в конце символом Enter. Вот именно поэтому при запуске чистого «yes», строчки на экране будут идти столбиком.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
8 стратегий деплоя в Kubernetes и как они работают
🔹 Деплой с полным пересозданием
🔹 Поэтапный деплой
🔹 Деплой по схеме "синяя/зелёная" среда
🔹 Канареечный деплой
🔹 Деплой с A/B-тестированием
🔹 Теневой деплой
🔹 Управляемый деплой по принципу "по возможности"
🔹 Медленный градуальный деплой
https://www.groundcover.com/blog/kubernetes-deployment-strategies
https://www.groundcover.com/blog/kubernetes-deployment-strategies
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
Репозиторий с подборкой проверенных ресурсов для изучения DevOps
https://github.com/Lets-DevOps/awesome-learning
https://github.com/Lets-DevOps/awesome-learning
❤🔥3
Ночной подгон от Anthropic — парни выпустили собственные бесплатные курсы! 😳
Внутри десятки лекций, тесты и даже сертификаты по различным темам: от Anthropic API до MCP и лучших практик Claude Code. Всё с реальными примерами от разработчиков.
Забираем годноту здесь.
Внутри десятки лекций, тесты и даже сертификаты по различным темам: от Anthropic API до MCP и лучших практик Claude Code. Всё с реальными примерами от разработчиков.
Забираем годноту здесь.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Создание качественных контейнерных образов — это не ракетостроение
Применяя всего два подхода, можно сократить размер образа и количество CVE на 50–80%:
🔹 Использование multi-stage сборки
🔹 Выбор базового образа подходящего размера
Учиться можно на практике: https://labs.iximiuz.com/skill-paths/build-container-images
Применяя всего два подхода, можно сократить размер образа и количество CVE на 50–80%:
Учиться можно на практике: https://labs.iximiuz.com/skill-paths/build-container-images
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
В настоящее время, во многих компаниях из-за соображений безопасности, многое работает только через SSH туннели. Давайте разберемся, как их открывать
Для windows необходимо наличие OpenSSH клиента. Пишут, что с "Windows 10 1809" он установлен по умолчанию. Если у вас версия старее, либо по какой-то другой причине отсутствует клиент, то его необходимо установить.
На MacOS клиент установлен по умолчанию.
Команда для открытия туннеля
local-port - указывается порт, который будет открыт на вашем устройстве, с которого запускаете команду;
target-server - указывается хост, до которого необходимо открыть туннель;
target-port - указывается порт, до которого необходимо открыть туннель;
ssh-username - имя пользоваться для ssh аутентификации на сервере туннелей;
ssh-hostname - хост сервера туннеля.
Но зачем нужен SSH-тунель?
SSH-тунель нужен, чтобы безопасно подключаться к удалённому компьютеру или серверу, когда напрямую нельзя или небезопасно.
Например:
Ты дома и хочешь подключиться к рабочей базе данных, но доступ к ней открыт только внутри офиса. С помощью SSH-туннеля ты делаешь так, что твой компьютер как будто оказался в офисе, и можешь работать с базой, хотя на самом деле ты дома.
вот как раз пример с базой данных
Для windows необходимо наличие OpenSSH клиента. Пишут, что с "Windows 10 1809" он установлен по умолчанию. Если у вас версия старее, либо по какой-то другой причине отсутствует клиент, то его необходимо установить.
На MacOS клиент установлен по умолчанию.
Команда для открытия туннеля
ssh -L -N <local-port>:<target-server>:<target-port> <ssh-username>@<ssh-hostname>
local-port - указывается порт, который будет открыт на вашем устройстве, с которого запускаете команду;
target-server - указывается хост, до которого необходимо открыть туннель;
target-port - указывается порт, до которого необходимо открыть туннель;
ssh-username - имя пользоваться для ssh аутентификации на сервере туннелей;
ssh-hostname - хост сервера туннеля.
Но зачем нужен SSH-тунель?
SSH-тунель нужен, чтобы безопасно подключаться к удалённому компьютеру или серверу, когда напрямую нельзя или небезопасно.
Например:
Ты дома и хочешь подключиться к рабочей базе данных, но доступ к ней открыт только внутри офиса. С помощью SSH-туннеля ты делаешь так, что твой компьютер как будто оказался в офисе, и можешь работать с базой, хотя на самом деле ты дома.
вот как раз пример с базой данных
ssh -L -N 5430 :TARGET-POSTGRESS.COM: 5432 user@HOST_CAN_CONNECT_TO_TARGET_POSTGRESS.COM
🔥3
OpenRouter Bot - позволяет за несколько минут запустить своего Telegram бота для общения с бесплатными и платными моделями ИИ через OpenRouter, или локальными LLM, например, через LM Studio.Этот репозиторий является форком проекта
openrouter-gpt-telegram-bot, который реализует форматирование Markdown в ответах бота и оптимизирует процесс запуска в контейнере.https://github.com/Lifailon/openrouter-bot
Автор проекта наш соотечественник Alex Kup - @Lifailon Не забудьте поддержать, поставив звезду в репку !
👍4❤3
Выложен в открытый доступ продвинутый курс по разработке СУБД от ШАД Яндекса.
https://youtube.com/playlist?list=PL6Wui14DvQPwuUE1tijVmiBSl2LCLH3ru&si=HqIhX9BYaP1PINsV
https://youtube.com/playlist?list=PL6Wui14DvQPwuUE1tijVmiBSl2LCLH3ru&si=HqIhX9BYaP1PINsV
❤🔥3
devops-survival-checklist.md
9 KB
Собрал тут чек-лист из 50 пунктов, с которым стоит сверяться при настройке стендов и работе DevOps
🔥3