INT 21h

Копирование и перенос контейнеров LXC

№ 8540 В разделе "Администрирование" от October 12th, 2017,

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

Ниже приведен текст скрипта и я думаю вам не составит труда разобраться в нем самостоятельно.

Запускается root@boroda:~# ./lxc_move.sh inbox root@myserver.ru

#!/bin/bash
container_name="$1"
connect_string="$2"

if [ -z "$container_name" ];
then
 echo "Container name not given!"
 exit 1
fi

if [ -z "$connect_string" ];
then
 echo "Connect string not given!"
 exit 1
fi

#check status, if not STOPPED run again after tar
lxc_status=$(lxc-info -n $container_name|grep "STOPPED")

if [ -z "$lxc_status" ];
then
 lxc-stop -n "$container_name"
 run_again="yes"
fi

tar --numeric-owner -czvf /tmp/container_fs.tar.gz -C /var/lib/lxc/ $container_name

if [ -n "$run_again" ];
then
 lxc-start -n "$container_name"
fi

scp /tmp/container_fs.tar.gz $connect_string:/var/lib/lxc/
rm -f /tmp/container_fs.tar.gz
ssh $connect_string tar -xvf /var/lib/lxc/container_fs.tar.gz -C /var/lib/lxc/
ssh $connect_string rm -f /var/lib/lxc/container_fs.tar.gz

Хорошо бы еще добавить проверку на существование контейнера на удаленной машине. Вдруг он уже там? Но мне лень 🙂

Нет комментариев »

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Комментарии

  • 21h: нене ) без меня )
  • Серегй: Не совсем грабить)) если грабить можно и без рации, есть...
  • 21h: магазин грабить собрались? ) не, тут я не помощник ;)
  • Серегй: А что бы мне поймать чужую волну, что мне для этого нужно...
  • 21h: слушать никто не запрещает. нет закона, который запрещает...
  • Серегй: Я хотел узнать могу ли я просто прийти с данной рацией baofeng...
  • 21h: У меня есть только эти 2. По другим ничего не знаю. В интернете...

© Vladimir Smagin, 2005-2017. Копирование материалов без разрешения запрещено.
Яндекс.Метрика