Kubernetes: Исследование с помощью Minikube - часть 3

Это продолжение второй части. На данный момент мы уже знаем некоторые объекты в Kubernetes и умеем пользоваться Helm. Что можно сделать дальше? Конечно, добавить больше автоматизации, секретов, хранилищ - много чего. Целью сегодняшней части будет являтся автоматизация и упрощение процесса упаковки описания приложения в helm chart. Часть 3. Еще больше упрощаем deploy приложения Попробуем упаковать наш helm chart стандартными средствами: helm package helm-php-sample-app Successfully packaged chart and saved it to: .../php-sample-app-0.1.0.tgz Теперь можно не пользоваться git для загрузки helm chart, а сохранять каждую версию в виде артефакта сборки (например, добавив эту сборку в GitHub Actions). Это действие мы и будем автоматизировать. ...

July 7, 2021 · 3 min · 567 words · Me

Kubernetes: Исследование с помощью Minikube - часть 2

Это продолжение первой части, которое надеюсь, служит логичным ее продолжением - мы имеем кластер Kubernetes, работаем в отдельном Namespace, умеем запускать небольшое stateless приложение на PHP и знаем, как получить к нему доступ. Что дальше можно сделать? Вероятнее всего, нужно упрощать обновление приложения - так как тяжело каждый раз вручную копировать Deployment в консоль с лишь одной обновленной строкой (в нашем случае это ID коммита), пример из первой части: image: g3rhard/php-sample-app:467794 Небольшая часть с лайфхаками Для удобного просмотра состояния объектов в кластере можно использовать k9s: ...

July 6, 2021 · 4 min · 805 words · Me

Полезные однострочники - часть 5

1. Узнать ID приложения в MacOS APP_NAME=Slack osascript -e 'id of app "$APP_NAME"' 2. Удалить строчку из файла в MacOS sed -i '' '/pattern to match/d' FILE_NAME 3. Подмена заголовков, для тестирования локальных сайтов (не используя hosts файл): curl -H "Host: example.com" http://localhost/ 4. Удалить дубликаты файлов, используя утилиту fdupes fdupes -r PATH -q -d --noprompt 5. Обновление версий Github Actions find . -type f -name "*.yml" | grep ".github/" | xargs sed -i '' 's/setup-helm@v1/setup-helm@v3/g 6. Красивый вывод состояния контейнеров Docker ...

July 6, 2021 · 1 min · 160 words · Me

Kubernetes: Исследование с помощью Minikube - часть 1

В этой (и надеюсь последующих) статьях будут описаны личные заметки по погружению в мир Kubernetes. Данная заметка не претендует на академическую точность и была сделана как пример, с которого можно начинать работу с Kubernetes, не арендуя большие вычислительные мощности. Часть 0. Подготовка Сначала подготовим все, что понадобится для развертывания окружения. Подразумевается, что у нас уже есть ноутбук/компьютер/арендованный инстанс где можно запустить minikube. По моим личным наблюдениям, комфортная работа начинается на машинах c 8+Gb RAM, хотя показатели потребления памяти внутри панелей Kubernetes достаточно скромны. Для себя я выбрал Linode, так как там демократичные цены и бонус в $100 при регистрации. Инструкции ниже подразумевают, что у вас есть root доступ на сервера, уже установлен Docker, а для работы minikube был создан отдельный пользователь, пример: ...

July 5, 2021 · 3 min · 600 words · Me

English Training - EP06 - Space Opera - pt.1

Not so long time ago I finished read a book, which author received many awards and this book has a name “Embers of War”. It’s a story about space ship, which has an AI. You can read this story, that written from a face of few characters, including the space ship. And like an other books in this genre (and maybe in a different genres) - in the begining you can read and don’t understand how all this characters is connected between but in the end all characters will be interact with each other. ...

May 1, 2021 · 1 min · 148 words · Me