Jenkins git checkout submodules

Иногда в Jenkins pipelines нужно сделать checkout репозитория, но так чтобы сабмодули этого репозитория тоже стянулись для пайплайна. Для этого можно использовать extensions с опциями.

Внимание! Если сабмодуль это форк с паблик репозитория, то parentCredentials необязательно использовать.

Docker Cp Command – Copy File to Container

Иногда нужно скопировать файл из контейнера на хост машину или наоборот – из локальной файловой системы в контейнер, который уже запущен.

Берем контейнер c0a5a4666441 и скопируем файл example.bin в контейнер:

Если нужно наоборот, то меняем местами:

 

Managing multiple clusters with kubectl

Часто необходимо работать с несколькими кластерами k8s и kubectl. Можно очень просто переключать контексты с кластерами если правильно все настроить. Покажу на примере двух кластеров. Имеем remote cluster  и kubernetes локальный на Mac. Обычно конфиг храниться на кластере тут /etc/kubernetes/admin.conf Берем все конфиги с кластеров, которые будут использоваться и кладем в /home/USERNAME/.kube/ Далее редактируем конфиги и […]

Local Kubernetes – MicroK8S

Про Minikube я уже как-то писал тут Minikube on MacOS А тут на днях на Kubecon на стенде с убунтой все пиарили свой MicroK8S. Я решил попробовать и понять чем оно лучше или хуже Minikube. https://microk8s.io/ MicroK8S это single package k8s, то есть kubernetes все в одном для локального использования. Поднять его можно как на Linux(Ubuntu+Snap) […]

GKE+k8s+terraform

Запилил тестовый гугловый аппликейшн Guestbook на гугл клауде в k8s. Проект на гитхабе https://github.com/mikonoid/terraform-gke Структура

gke директория содержит все для поднятия кластера k8s – все что надо для менеджмента kubernetes  

Docker slave plugin quick start

Overview   This plugin allows to execute a jenkins job inside a (set of) container(s). Jenkins job run into slave containers which linked between each other. Jenkins uses own mechanism to control build on slaves(docker slave containers). Jenkins connects to docker API (socket in our case) and API allows to control remote processes as well. […]

Ansible how to work with lists

В  Ansible иногда нужно работать со списками, чтоб проитерироваться по списку каких-либо значений. Например, когда нужно поставить список пакетов через apt:

Но бывает, что нужно формировать список из переменных и потом уже итерироваться по этому списку, так же список может меняться на лету, могут добавляться\удаляться элементы и пр. Возьмем такой пример – нужно инициализировать […]

AWS Cloudformation create VPC

Добавлю просто свой JSON для Cloudformation из лабы для Linuxacademy. https://github.com/mikonoid/aws-cloudformation-build-VPC Небольшое описание по данному стеку, ресурсы по порядку: VPC – Описывает какой VPC мы создаем. 10.0.0.0/16 – блок адресов для данного VPC. Value: Public означает что сеть будет иметь доступ наружу Public Subnet . – выбираем блок адресов для публичной сетки Internet Gateway создаем […]

AWS Load balancer : Back-end server is at capacity

Создал classic Load-balancer в AWS и добавил туда инстансы с wordpress. После этого fqdn балансера не работает и отлетает по таймауту. Смотрю курлом

Тогда стало немного понятно, идем в логи апача на инстансе

Видим картину

Чекается файл index.php, проверяем – файла такого нет. Потому балансер и не работает. Добавляем check.php в директорию […]