Создадим контейнер
# lxc-create -t ubuntu -n xenial_lxc -- -r xenial -a amd64
Клонировать контейнер
# lxc-clone -o xenial_lxc -n db2_11_lxc
Сохранение контейнера xenial_lxc
# cd /var/lib/lxc/
# tar -cvzf xenial_lxc.tar.gz ./xenial_lxc
# cp /home/user/_soft/db2/v11.1_linuxx64_expc.tar.gz /var/lib/lxc/db2_11_lxc/rootfs/home/ubuntu
# cd /var/lib/lxc/db2_11_lxc/rootfs/home/ubuntu
# tar xvzf v11.1_linuxx64_expc.tar.gz
# rm -R /var/lib/lxc/db2_11_lxc/rootfs/home/ubuntu/v11.1_linuxx64_expc.tar.gz
Старт контейнера
# lxc-start -n db2_11_lxc -d
Посмотреть ip
# lxc-ls -f
$ sudo su
# apt-get update -y
# apt-get upgrade -y
# apt-get install -y mc htop samba nano
# nano /etc/sysctl.conf
В конец файла:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить.
# sysctl -p
Проверка:
# cat /proc/sys/net/ipv6/conf/all/disable_ipv6
# nano /etc/hosts
127.0.0.1 localhost
127.0.1.1 desktop_lxc
Сохранить.
Установка db2 утилитой db2_install
Зададим пользователей:
# groupadd db2iadm1
# useradd -g db2iadm1 -m -d /home/db2inst1 db2inst1
# passwd db2inst1
# groupadd db2fadm1
# useradd -g db2fadm1 -m -d /home/db2fenc1 db2fenc1
# passwd db2fenc1
# dpkg --add-architecture i386
# apt-get update
Пакет libaio1 есть.
# apt-get install libx32stdc++6 -y
# apt-get install libpam0g:i386 -y
# apt-get install binutils -y
# apt-get install libnuma-dev -y
# cd /home/ubuntu/expc
# ./db2prereqcheck -v 11.1.0.0
инсталляция
# ./db2_install
# rm -R /home/ubuntu/expc
Настройка db2 для работы с 1С
# cd /opt/ibm/db2/V11.1/instance
# ./db2icrt -u db2fenc1 db2inst1
# su - db2inst1
Конфигурируем DB2 для работы с 1С:
$ db2set DB2_WORKLOAD=1C
Запускаем экземпляр DB2:
При установке db2setup экземпляр db2 уже запущен, пропускаем
$ db2start
!!!без apt-get install libnuma-dev -y
!!!db2start: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No !!!such file or directory
Посмотреть версию DB2
$ db2ls
Посмотреть БД
$ db2ilist
$ exit
# cd /opt/ibm/db2/V11.1/instance
# ./db2iauto -on db2inst1
Итог db2 не запускается автоматом.
Напишем свой systemd сервис для db2
Скрипт
How to Auto Start more then one instance of DB2 in linux environment
# nano /usr/local/bin/db2.sh
#!/bin/sh
#
# Startup script for DB2
# by A.F.
#
DB2_USER=db2inst1
### BEGIN INIT INFO
# Provides: $DB2_USER
# Required-Start: $network $remote_fs
# Required-Stop: $network $remote_fs
# Default-Start: 3
# Default-Stop: 0 1 2 5 6
# Short-Description: DB2 $DB2_USER job service
# Description: DB2 Instance $DB2_USER job service
### END INIT INFO
# Find the name of the script
NAME=`basename $0`
start() {
DB2_START=$"Starting ${NAME} service: "
su - $DB2_USER -c '. ./sqllib/db2profile; \
./sqllib/adm/db2start > /dev/null'
ret=$?
if [ $ret -eq 0 ]
then
echo "$DB2_START Success."
else
echo "$DB2_START Failed!"
exit 1
fi
echo
}
stop() {
echo -n $"Stopping ${NAME} service: "
su - $DB2_USER -c '. ./sqllib/db2profile; \
./sqllib/adm/db2stop > /dev/null'
ret=$?
if [ $ret -eq 0 ]
then
echo "Success."
else
echo "Failed!"
exit 1
fi
echo
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0
Сохранить.
# chmod +x /usr/local/bin/db2.sh
# nano /etc/systemd/system/db2.service
[Unit]
Description = db2 daemon
[Service]
Type = forking
ExecStart = /usr/local/bin/db2.sh start
ExecStop = /usr/local/bin/db2.sh stop
ExecReload = /usr/local/bin/db2.sh restart
[Install]
WantedBy = multi-user.target
Сохранить.
----------------------------------
# systemctl start db2
# systemctl status db2
# systemctl enable db2
!!!# systemctl disable db2
# reboot
Проверка
# ps -eaf|grep -i db2sysc
# ps -eaf|grep -i db2sysc
db2inst1 694 692 0 09:41 ? 00:00:00 db2sysc
root 771 760 0 09:42 pts/4 00:00:00 grep --color=auto -i db2sysc
# poweroff
Сохранение контейнера db2_11_lxc
# cd /var/lib/lxc/
# tar -cvzf db2_11_lxc.tar.gz ./db2_11_lxc
__________________________________________________
Установка 1С
Клонировать контейнер # lxc-clone -o db2_11_lxc -n db2
# mkdir /var/lib/lxc/db2/rootfs/home/ubuntu/8.3.10.2168
# cp /home/user/_soft/8.3.10.2168/deb64.tar.gz /var/lib/lxc/db2/rootfs/home/ubuntu/8.3.10.2168/
Старт контейнера
# lxc-start -n db2 -d
Посмотреть ip
# lxc-ls -f
# ssh ubuntu@db2
$ sudo su
# su - db2inst1
Запускаем экземпляр DB2:
$ db2start
$ exit
# ps -eaf|grep -i db2sysc
db2inst1 754 752 0 15:42 pts/4 00:00:00 db2sysc
root 779 272 0 15:43 pts/4 00:00:00 grep --color=auto -i db2sysc
# apt-get install imagemagick -y
Строка ниже срабатывает далеко не всегдаю
# apt-get install ttf-mscorefonts-installer -y
------------------------------------------------------------
Альтернативно:
# apt-get install wget -y
# mkdir /home/ubuntu/Downloads
# wget http://ftp.de.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb -P /home/ubuntu/Downloads
# apt install /home/ubuntu/Downloads/ttf-mscorefonts-installer_3.6_all.deb
# fc-cache -f -v
------------------------------------------------------------
Дистрибутивы в папке soft
!!!# ln -s /usr/lib/x86_64-linux-gnu/libMagickWand.so.5 /usr/lib/x86_64-linux-gnu/libMagickWand.so
# cd /home/ubuntu/8.3.10.2168/
# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install
# apt autoremove -y
# cd ..
# rm -R /home/ubuntu/8.3.10.2168
# chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль pass
# passwd usr1cv8
Теперь создадим базу 1С на сервере DB2.
добавим пользователя usr1cv8 в группу доступа db2iadm1
# usermod -aG db2iadm1 usr1cv8
# echo ". /home/db2inst1/sqllib/db2profile" >> /home/usr1cv8/.profile
# service srv1cv83 start
# service srv1cv83 status
!!!# service srv1cv83 restart
# poweroff
Старт контейнера
# lxc-start -n db2 -d
Посмотреть ip
# lxc-ls -f
# ssh ubuntu@db2
!!!$ sudo su
!!!# su - db2inst1
!!!Запускаем экземпляр DB2:
!!!$ db2start
!!!$ exit
# ps -eaf|grep -i db2sysc
!!!# service srv1cv83 start
# service srv1cv83 status
Создадим базу
# poweroff
Сохранение контейнера db2
# cd /var/lib/lxc/
# tar -cvzf db2.tar.gz ./db2
Восстановление контейнера
!!!# cd /var/lib/lxc
!!!# tar xvzf db2.tar.gz
Старт контейнера # lxc-start -n db2 -d
Посмотреть ip
# lxc-ls -f
Клонирование контейнера с заменой кластера 1с
Клонировать контейнер
# lxc-clone -o db2 -n db2_1
Почистить кластер 1с
# rm -R /var/lib/lxc/db2_1/rootfs/home/usr1cv8/.1cv8
Создадим базу (база подхватится из клонируемого контейнера):
Сохранение контейнера db2_1
# cd /var/lib/lxc/
# tar -cvzf db2_1.tar.gz ./db2_1
Восстановление контейнера
!!!# cd /var/lib/lxc
!!!# tar xvzf db2_1.tar.gz
# lxc-create -t ubuntu -n xenial_lxc -- -r xenial -a amd64
Клонировать контейнер
# lxc-clone -o xenial_lxc -n db2_11_lxc
Сохранение контейнера xenial_lxc
# cd /var/lib/lxc/
# tar -cvzf xenial_lxc.tar.gz ./xenial_lxc
# cp /home/user/_soft/db2/v11.1_linuxx64_expc.tar.gz /var/lib/lxc/db2_11_lxc/rootfs/home/ubuntu
# cd /var/lib/lxc/db2_11_lxc/rootfs/home/ubuntu
# tar xvzf v11.1_linuxx64_expc.tar.gz
# rm -R /var/lib/lxc/db2_11_lxc/rootfs/home/ubuntu/v11.1_linuxx64_expc.tar.gz
Старт контейнера
# lxc-start -n db2_11_lxc -d
Посмотреть ip
# lxc-ls -f
$ sudo su
# apt-get update -y
# apt-get upgrade -y
# apt-get install -y mc htop samba nano
# nano /etc/sysctl.conf
В конец файла:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить.
# sysctl -p
Проверка:
# cat /proc/sys/net/ipv6/conf/all/disable_ipv6
# nano /etc/hosts
127.0.0.1 localhost
127.0.1.1 desktop_lxc
Сохранить.
Установка db2 утилитой db2_install
Зададим пользователей:
# groupadd db2iadm1
# useradd -g db2iadm1 -m -d /home/db2inst1 db2inst1
# passwd db2inst1
# groupadd db2fadm1
# useradd -g db2fadm1 -m -d /home/db2fenc1 db2fenc1
# passwd db2fenc1
# dpkg --add-architecture i386
# apt-get update
Пакет libaio1 есть.
# apt-get install libx32stdc++6 -y
# apt-get install libpam0g:i386 -y
# apt-get install binutils -y
# apt-get install libnuma-dev -y
# cd /home/ubuntu/expc
# ./db2prereqcheck -v 11.1.0.0
инсталляция
# ./db2_install
# rm -R /home/ubuntu/expc
Настройка db2 для работы с 1С
# cd /opt/ibm/db2/V11.1/instance
# ./db2icrt -u db2fenc1 db2inst1
# su - db2inst1
Конфигурируем DB2 для работы с 1С:
$ db2set DB2_WORKLOAD=1C
Запускаем экземпляр DB2:
При установке db2setup экземпляр db2 уже запущен, пропускаем
$ db2start
!!!без apt-get install libnuma-dev -y
!!!db2start: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No !!!such file or directory
Посмотреть версию DB2
$ db2ls
Посмотреть БД
$ db2ilist
$ exit
# cd /opt/ibm/db2/V11.1/instance
# ./db2iauto -on db2inst1
Итог db2 не запускается автоматом.
Напишем свой systemd сервис для db2
Скрипт
How to Auto Start more then one instance of DB2 in linux environment
# nano /usr/local/bin/db2.sh
#!/bin/sh
#
# Startup script for DB2
# by A.F.
#
DB2_USER=db2inst1
### BEGIN INIT INFO
# Provides: $DB2_USER
# Required-Start: $network $remote_fs
# Required-Stop: $network $remote_fs
# Default-Start: 3
# Default-Stop: 0 1 2 5 6
# Short-Description: DB2 $DB2_USER job service
# Description: DB2 Instance $DB2_USER job service
### END INIT INFO
# Find the name of the script
NAME=`basename $0`
start() {
DB2_START=$"Starting ${NAME} service: "
su - $DB2_USER -c '. ./sqllib/db2profile; \
./sqllib/adm/db2start > /dev/null'
ret=$?
if [ $ret -eq 0 ]
then
echo "$DB2_START Success."
else
echo "$DB2_START Failed!"
exit 1
fi
echo
}
stop() {
echo -n $"Stopping ${NAME} service: "
su - $DB2_USER -c '. ./sqllib/db2profile; \
./sqllib/adm/db2stop > /dev/null'
ret=$?
if [ $ret -eq 0 ]
then
echo "Success."
else
echo "Failed!"
exit 1
fi
echo
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0
Сохранить.
# chmod +x /usr/local/bin/db2.sh
# nano /etc/systemd/system/db2.service
[Unit]
Description = db2 daemon
[Service]
Type = forking
ExecStart = /usr/local/bin/db2.sh start
ExecStop = /usr/local/bin/db2.sh stop
ExecReload = /usr/local/bin/db2.sh restart
[Install]
WantedBy = multi-user.target
Сохранить.
----------------------------------
# systemctl start db2
# systemctl status db2
# systemctl enable db2
!!!# systemctl disable db2
# reboot
Проверка
# ps -eaf|grep -i db2sysc
# ps -eaf|grep -i db2sysc
db2inst1 694 692 0 09:41 ? 00:00:00 db2sysc
root 771 760 0 09:42 pts/4 00:00:00 grep --color=auto -i db2sysc
# poweroff
Сохранение контейнера db2_11_lxc
# cd /var/lib/lxc/
# tar -cvzf db2_11_lxc.tar.gz ./db2_11_lxc
__________________________________________________
Установка 1С
Клонировать контейнер # lxc-clone -o db2_11_lxc -n db2
# mkdir /var/lib/lxc/db2/rootfs/home/ubuntu/8.3.10.2168
# cp /home/user/_soft/8.3.10.2168/deb64.tar.gz /var/lib/lxc/db2/rootfs/home/ubuntu/8.3.10.2168/
Старт контейнера
# lxc-start -n db2 -d
Посмотреть ip
# lxc-ls -f
# ssh ubuntu@db2
$ sudo su
# su - db2inst1
Запускаем экземпляр DB2:
$ db2start
$ exit
# ps -eaf|grep -i db2sysc
db2inst1 754 752 0 15:42 pts/4 00:00:00 db2sysc
root 779 272 0 15:43 pts/4 00:00:00 grep --color=auto -i db2sysc
# apt-get install imagemagick -y
Строка ниже срабатывает далеко не всегдаю
# apt-get install ttf-mscorefonts-installer -y
------------------------------------------------------------
Альтернативно:
# apt-get install wget -y
# mkdir /home/ubuntu/Downloads
# wget http://ftp.de.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb -P /home/ubuntu/Downloads
# apt install /home/ubuntu/Downloads/ttf-mscorefonts-installer_3.6_all.deb
# fc-cache -f -v
------------------------------------------------------------
Дистрибутивы в папке soft
!!!# ln -s /usr/lib/x86_64-linux-gnu/libMagickWand.so.5 /usr/lib/x86_64-linux-gnu/libMagickWand.so
# cd /home/ubuntu/8.3.10.2168/
# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install
# apt autoremove -y
# cd ..
# rm -R /home/ubuntu/8.3.10.2168
# chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль pass
# passwd usr1cv8
Теперь создадим базу 1С на сервере DB2.
добавим пользователя usr1cv8 в группу доступа db2iadm1
# usermod -aG db2iadm1 usr1cv8
# echo ". /home/db2inst1/sqllib/db2profile" >> /home/usr1cv8/.profile
# service srv1cv83 start
# service srv1cv83 status
!!!# service srv1cv83 restart
# poweroff
Старт контейнера
# lxc-start -n db2 -d
Посмотреть ip
# lxc-ls -f
# ssh ubuntu@db2
!!!$ sudo su
!!!# su - db2inst1
!!!Запускаем экземпляр DB2:
!!!$ db2start
!!!$ exit
# ps -eaf|grep -i db2sysc
!!!# service srv1cv83 start
# service srv1cv83 status
Создадим базу
# poweroff
Сохранение контейнера db2
# cd /var/lib/lxc/
# tar -cvzf db2.tar.gz ./db2
Восстановление контейнера
!!!# cd /var/lib/lxc
!!!# tar xvzf db2.tar.gz
Старт контейнера # lxc-start -n db2 -d
Посмотреть ip
# lxc-ls -f
Клонирование контейнера с заменой кластера 1с
Клонировать контейнер
# lxc-clone -o db2 -n db2_1
Почистить кластер 1с
# rm -R /var/lib/lxc/db2_1/rootfs/home/usr1cv8/.1cv8
Создадим базу (база подхватится из клонируемого контейнера):
Сохранение контейнера db2_1
# cd /var/lib/lxc/
# tar -cvzf db2_1.tar.gz ./db2_1
Восстановление контейнера
!!!# cd /var/lib/lxc
!!!# tar xvzf db2_1.tar.gz
.
Комментариев нет:
Отправить комментарий