remove jave from mac osx lion
sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
install URL of CentOS 6.2 x86_64
http://mirror.centos.org/centos/6.2/os/x86_64/
howto Cron job
Lock file with cron job
http://stackoverflow.com/questions/9390134/rsync-cronjob-that-will-only-run-if-rsync-isnt-already-running
introduction to cron command
http://troy.jdmz.net/cron/
make centos repository
http://www.centos.org/modules/tinycontent/index.php?id=22
document page
http://opennebula.org/documentation:rel3.4:ignc#centos_platform_notes
Install OpenNebula and Sunstone server on Xen over Xen hypervisor
Step 1) Get EPEL repository
webpage explaining this repository: http://fedoraproject.org/wiki/EPEL#How_can_I_use_these_extra_packages.3F
Download page http://dl.fedoraproject.org/pub/epel/6/x86_64/repoview/epel-release.html
Wget the file and yum install on the machine
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-6.noarch.rpm yum install epel-release-6-6.noarch.rpm
Step 2) Download and install the package
download from the site http://downloads.opennebula.org/
install with yum
yum install CentOS-6.0-opennebula-3.4.1-2.x86_64.rpm
Usually, it installs without any problem.
This will have the Cloud platform installed, but of less use without a proper configuration and a GUI. Next steps are about installing those.
Step 3) install gem and other required packages
OpenNebula comes with a script to install ruby gems, it will prompt if ruby or other requests are not met.
yum install rubygems yum install ruby-devel /usr/share/one/install_gems
on computer node, the hypervisor should be properly installed and configured first of all. And Ruby should be installed, sshd should be installed.
apt-get install ruby openssh-server
Step 4) setup oneadmin user on both control and compute node
get the information of created oneadmin user information on control node
[oneadmin@centos121 ~]$ id oneadmin uid=497(oneadmin) gid=495(oneadmin) groups=495(oneadmin)
Add this user on all the compute node with same group id and uid add a group with specific id
groupadd --gid 495 oneadmin
add a user in specific group and specific id and specific home path
useradd --uid 497 -g oneadmin -d /var/lib/one oneadmin
Step 5) setup ssh access from control node to compute node
switch to oneadmin and generate ssh key. Press enter when prompted for a phrasepass
sudo su oneadmin ssh-keygen
Append the public key to the allowed access
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
change the permission of the files otherwise the system will not run due to protection policy
chmod 700 ~/.ssh/ chmod 600 ~/.ssh/id_rsa.pub chmod 600 ~/.ssh/id_rsa chmod 600 ~/.ssh/authorized_keys
create the configure file for ssh not to ask for permission to access unknown machine
vim ~/.ssh/config ############### content of the file ########### Host * StrictHostKeyChecking no
change also the permission of this file
chmod 600 ~/.ssh/config
copy the whole folder to the compute node
scp -r ~/.ssh root@192.168.2.12:/var/lib/one/
check and correct the permission on compute node
ls -la /var/lib/one/.ssh
In case of success, oneadmin should be able to ssh compute node without password
Now we can test if everything works
[oneadmin@centos121 ~]$ onevm list Connection refused - connect(2)
This means that the oned is not running, start it by (always run one as oneadmin):
one start [oneadmin@centos121 ~]$ onevm list ID USER GROUP NAME STAT CPU MEM HOSTNAME TIME
Step 6) Setup Sunstone GUI server
The server should come with the opennebula installation. If not yet installed, install it
[root@centos121 ~]# /usr/share/one/install_gems sunstone Gems already installed
Install the noVNC, so that user can access the VNC through web
cd /usr/share/one ./install_novnc.sh
let the webserver listen to every address
vim /etc/one/sunstone-server.conf ########## content of the file ########### # Server Configuration :host: 192.168.2.121 :port: 9869
And now the server is listening on port 9869
Start the monitoring daemon and sunstone server as oneadmin
oneacctd start sunstone-server start
The GUI is only accessible on the local machine for now. To be able to access is, a SSH channel can be used
Configure netowrk, cluster, host
network
http://opennebula.org/documentation:rel3.4:nm
- dummy: Default driver that doesn't perform any network operation. Firewalling rules are also ignored.
- fw: Firewall rules are applied, but networking isolation is ignored.
- 802.1Q: restrict network access through VLAN tagging, which also requires support from the hardware switches.
- ebtables: restrict network access through Ebtables rules. No special hardware configuration required.
- ovswitch: restrict network access with Open vSwitch Virtual Switch.
- VMware: uses the VMware networking infrastructure to provide an isolated and 802.1Q compatible network for VMs launched with the VMware hypervisor.
Use dummy for now
cluster
add cluster
onecluster create cluster01
host
add host
onehost create test2 --im im_xen --vm vmm_xen --net dummy
error
The monitor cannot start
[oneadmin@centos121 one]$ onehost list ID NAME CLUSTER RVM TCPU FCPU ACPU TMEM FMEM AMEM STAT 4 test2 - 0 0 0 100 0K 0K 0K err tail /var/log/one/oned.log sudo: no tty present and no askpass program specified
The reason is one is trying to execute sudo xen.rb on the compute node, but sudo is not installed and oneadmin is not in the sudoer.
apt-get install sudo vim /etc/sudoers #### content #### oneadmin ALL=NOPASSWD: ALL # This will allow script to run without interactive TTY
After changing this everthing runs smoothly
[oneadmin@centos121 one]$ onehost list ID NAME CLUSTER RVM TCPU FCPU ACPU TMEM FMEM AMEM STAT 5 test2 - 0 200 170 200 7.7G 4M 7.7G on