Artifact ID: | fea6d9cc9319df27edc2128e78a6c9b06d599041 |
---|---|
Page Name: | lxd_test_cluster |
Date: | 2017-03-23 19:03:08 |
Original User: | bjbarcla |
Mimetype: | text/x-markdown |
Parent: | 1d85edaefbe36f395d9f8da5327bdace2bc0c815 (diff) |
Next | b0a0ba07791522b06f3f1ae41e7d87e18c54750f |
Table of Contents
- 1. Setup lxd cluster for megatest
- 1.1. I setup 3 container "boxes" - pablo, ruby, ash
- 1.2. install lxd - loosely followed this
- 1.3. put containers on home LAN- followed this procedure
- 1.4. setup shared space across containers, mounted from host fs
- 1.5. Setup containers
- 1.6. setup ssh host keys across mtuser
- 1.7. pick a container and setup X / vnc
- 1.8. fix consternating issue breaking tab completion working in any term:
- 1.9. start a vnc session (so iup works)
- 1.10. from home network, use vnc client to connect to container:1
Setup lxd cluster for megatest
I setup 3 container "boxes" - pablo, ruby, ash
- shared disk space at /lxd-shared
- picked pablo to serve vnc
- put containers on home network to make things easy
install lxd - loosely followed this
put containers on home LAN- followed this procedure
host# mkdir /lxd-shared
host# chown 100000:100000 /lxd-shared
host# chmod 777 /lxd-shared
host# xc remote add images images.linuxcontainers.org
host# lxc launch images:ubuntu/xenial/amd64 ruby
host# lxc launch images:ubuntu/xenial/amd64 pablo
host# lxc launch images:ubuntu/xenial/amd64 ash
setup shared space across containers, mounted from host fs
mkdir /lxd-shared
my root disk is bigly
chmod 777 /lxd-shared
host# lxc config device add ruby sharedtmp disk path=/lxd-shared source=/lxd-shared host# lxc config device add ash sharedtmp disk path=/lxd-shared source=/lxd-shared
host# lxc config device add pablo sharedtmp disk path=/lxd-shared source=/lxd-shared
Setup containers
Foreach container {container}:
host# lxc exec {container} /bin/bash
container# apt update container# apt upgrade container# apt-get install -y openssh-server htop ncurses-term fossil make container# service ssh start
container# addgroup megatest container# adduser --ingroup megatest mtuser
container# apt-get install -y libreadline-dev container# apt-get install -y libwebkitgtk-dev libfreetype6-dev libx11-dev libxpm-dev libxmu-dev libxft-dev libgtk2.0-dev container# libgl1-mesa-dev libglu1-mesa-dev libpangox-1.0-dev container# bison libwebkitgtk-3.0-dev container# apt-get install -y libmotif-common container# apt-get install -y uuid-dev
setup ssh host keys across mtuser
host# lxc exec container1 /bin/bash
container1# su - mtuser
% ssh-keygen
leave password blank, take all defaults
% cat .ssh/id_rsa.pub > .ssh/authorized_keys % chmod go= .ssh/authorized_keys % tar czvf /lxd-shared/mtuser-ssh.tgz .ssh % ssh container2 tar xzvf /lxd-shared/mtuser-ssh.tgz % ssh container3 tar xzvf /lxd-shared/mtuser-ssh.tgz
ssh between all pairs to initialize host keys. should be passwordless now.
pick a container and setup X / vnc
container# apt-install vnc4server xfce4
container# su -c mtuser
% vncpasswd
put following in .vnc/xstartup
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION\_MANAGER
# exec /etc/X11/xinit/xinitrc
#[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
#[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
#xsetroot -solid grey
#vncconfig -iconic &
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &
#!/bin/sh
unset SESSION\_MANAGER
unset DBUS\_SESSION\_BUS\_ADDRESS
startxfce4 &
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
mtuser% vncserver -geometry 1366x746 -depth 24
fix consternating issue breaking tab completion working in any term:
- edit ~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml
find the line
<property name="<Super>Tab" type="string" value="switch\_window\_key"/>
and change it to
<property name="<Super>Tab" type="empty"/>
restart vnc (vncserver -stop :1 ;
start a vnc session (so iup works)
from home network, use vnc client to connect to container:1
setup shop in /lxd-share, eg:
% cd /lxd-share % fossil clone http://kiatoa.com/fossils/megatest megatest.fossil .....