Secara umum ada tiga jenis komputasi awan yang kami sebutkan: Perangkat Lunak sebagai Layanan (SaaS), Platform sebagai Layanan (PaaS) dan Infrastruktur sebagai Layanan (IaaS). Saat pertama kali konsep cloud keluar, orang bilang membingungkan dan tidak jelas. Kini teknologi cloud sudah mengakar kuat di hati masyarakat. Mungkin tanpa Anda sadari, Anda menggunakan cloud . Untuk lebih memahami ketiga cloud yang berbeda ini, kita dapat mengambil Google sebagai contoh. Perusahaan ini menyediakan tiga bentuk layanan cloud. Pertama, lihat Aplikasi seperti Google Gmail/Docs/Gtalk/Maps semuanya dijalankan di Google Cloud., jadi mereka menyediakan "perangkat lunak sebagai layanan" untuk pengguna biasa, Google juga menyediakan AppEngine untuk pengembang, yang memungkinkan pengembang menggunakan Python, java, dan bahasa lain serta API yang mereka sediakan untuk mengembangkan perangkat lunak dan layanan, jadi mereka menyediakan "Platform sebagai Layanan" kepada pengembang; Google sendiri telah membangun infrastruktur cloud dasar yang besar berdasarkan GFS, BigTable, dan MaPReduce untuk menyediakan "Infrastruktur sebagai Layanan" kepada staf internalnya .
OpenNebula adalah seperangkat alat manajemen dasar komputasi awan sumber terbuka yang memfasilitasi administrator untuk menyebarkan, membuat, mengalokasikan, dan mengelola sejumlah besar mesin virtual di pusat data secara seragam. Pusat data perusahaan dapat menggunakan rangkaian alat ini untuk membangun cloud pribadi mereka sendiri dan menyediakan layanan IaaS internal, produk sumber terbuka serupa termasuk Eucalyptus, openQRM, dll. Proses instalasi berikut diselesaikan pada dua server VPSee yang dilengkapi dengan sistem CentOS 5.5. Satu server digunakan sebagai front end OpenNubula (node00), dan server lainnya digunakan sebagai node (node01) untuk membangun "cloud" minimal. Jika Anda ingin memperluas cloud ini, Anda hanya perlu menambahkan node secara bertahap (node02, node03, ...).
Instal dan konfigurasikan front-end (Front-End)
Tambahkan sumber CentOS Karan:
# cd /etc/yum.repos.d
# wget http://centos.karan.org/kbsingh-CentOS-Extras.repo
# pembaruan enak
Instal paket perangkat lunak yang diperlukan oleh OpenNebula dan alat yang diperlukan untuk mengkompilasi kode sumber OpenNebula:
# yum install gcc gcc-c++ buat openssl-devel flex bison
# yum install ruby ruby-devel ruby-docs ruby-ri ruby-irb ruby-rdoc
# yum instal rubygems
#permata instal nokogiri rake xmlparser
# yum instal scons
# yum install xmlrpc-c xmlrpc-c-devel
Versi sqlite yang disertakan dengan CentOS tidak berfungsi. Anda perlu mengunduh dan mengkompilasi versi sqlite 3.6.17:
# wget http://www.sqlite.org/sqlite-amalgamation-3.6.17.tar.gz
# tar xvzf sqlite-amalgamation-3.6.17.tar.gz
# cd sqlite-3.6.17/
# ./configure; buat;
Setelah mengunduh dan mengkompilasi paket sumber opennebula 2.0.1, dekompresi, kompilasi dan instal:
# tar zxvf opennebula-2.0.1.tar.gz
# cd opennebula-2.0.1
#scons
# ./install.sh -d /srv/cloud/one
# ls /srv/cloud/satu/
bin dll termasuk lib share var
Sebelum memulai OpenNebula, Anda perlu mengkonfigurasi variabel lingkungan ONE_AUTH. Variabel lingkungan ini dibaca dari file $HOME/.one/one_auth, jadi Anda harus membuat file one_auth terlebih dahulu dan kemudian memulainya (program layanan OpenNebula):
# cd /root/
# mkdir .satu
# cd .satu/
# cat "oneadmin:passWord" > one_auth
# satu permulaan
OpenNebula mendukung tiga teknologi virtualisasi: KVM, Xen dan VMware. Kita juga perlu memberi tahu OpenNebula mana yang ingin kita gunakan, dan memulai ulang salah satunya agar konfigurasi dapat diterapkan:
# vi /etc/one/oned.conf
...
IM_MAD = [
nama = "im_xen",
dapat dieksekusi = "one_im_ssh",
argumen = "xen" ]
VM_MAD = [
nama = "vmm_xen",
dapat dieksekusi = "one_vmm_ssh",
argumen = "xen",
default = "vmm_ssh/vmm_ssh_xen.conf",
ketik = "xen" ]
...
# satu perhentian
# satu permulaan
Instal dan konfigurasikan node (Compute Node)
Lingkungan virtual Xen atau KVM perlu diinstal pada setiap node. Untuk detailnya, silakan cari referensi: Menginstal dan mengonfigurasi Xen di CentOS dan Menginstal dan mengonfigurasi KVM di CentOS juga diperlukan:
# enak instal ruby
Tukarkan Kunci SSH
Karena komunikasi antara OpenNebula Front dan Nodes dilakukan melalui SSH, login tanpa kata sandi SSH harus diatur antara bagian depan dan node untuk menghindari memasukkan kata sandi saat bagian depan menjalankan skrip pada node atau mengkloning gambar :
# vi /etc/ssh/sshd_config
Otentikasi RSA ya
Otentikasi Pubkey ya
# /etc/init.d/ssh memulai ulang
Buat kunci di depan (node00) dan salin ke node (node01):
# ssh-keygen -t rsa
# ssh-copy-id -i ~/.ssh/id_rsa.pub node01
Buat kunci pada satu node (node01) dan salin ke depan (node00):
# ssh-keygen -t rsa
# ssh-copy-id -i ~/.ssh/id_rsa.pub node01
satuhost
Setelah bagian depan dapat berkomunikasi dengan setiap node melalui ssh tanpa kata sandi, Anda dapat menggunakan perintah buat onehost di bagian depan untuk menggabungkan node satu per satu, dan menggunakan daftar onehost untuk memeriksa apakah pembuatan berhasil:
# onehost membuat node01 im_xen vmm_xen tm_ssh
# daftar onehost
NAMA ID CLUSTER RVM TCPU FCPU ACPU TMEM FMEM STAT
1 node01 default 0 400 400 400 3,8G 383M aktif
Jika kesalahan dilaporkan saat menjalankan pembuatan onehost, periksa log oned.log dan temukan kata-kata sudo: maaf, Anda harus memiliki tty untuk menjalankan sudo. Alasannya adalah OpenNebula memerlukan ssh/sudo jarak jauh untuk menjalankan perintah, dan sudo CentOS opsi requiretty diaktifkan secara default. ssh A tty diperlukan untuk mengeksekusi, jadi sudo jarak jauh akan menyebabkan kesalahan:
# onehost membuat node01 im_xen vmm_xen tm_ssh
# ekor /var/log/one/oned.log
Sel 22 Feb 11:08:58 2011 [InM][I]: Eksekusi perintah gagal: 'if [ -x "/var/tmp/one/im/run_probes" ]; xen 172.16.39.111; lain keluar 42;
Sel 22 Feb 11:08:58 2011 [InM][I]: STDERR menyusul.
Sel 22 Feb 11:08:58 2011 [InM][I]: sudo: maaf, Anda harus memiliki tty untuk menjalankan sudo
Sel 22 Feb 11:08:58 2011 [InM][I]: Kesalahan saat mengeksekusi xen.rb
Solusinya adalah dengan mematikan (mengomentari) baris persyaratan:
# chmod 600 /etc/sudoers
# vi /etc/sudoers
#Persyaratan default
Karena dua server VPSee menggunakan proksi HTTP untuk mengakses Internet, OpenNebula membaca variabel lingkungan http_proxy sistem dan menemukan kesalahan respons HTTP di log sched.log. Saat ini, http_proxy harus ditutup:
# kucing /var/log/one/sched.log
Sel 22 Feb 14:27:39 2011 [HOST][E]: Pengecualian muncul: Tidak dapat mengangkut XML ke server dan mendapatkan respons XML kembali
Sel 22 Feb 14:27:39 2011 [POOL][E]: Tidak dapat mengambil info pool dari ONE
# batalkan http_proxy
Buat dan edit file konfigurasi jaringan virtual, lalu buat jaringan virtual OpenNebula:
# vi jaringan_kecil.net
NAMA = "Jaringan kecil"
JENIS = TETAP
JEMBATAN = br0
SEWA = [ip="192.168.0.5"]
SEWA = [IP="192.168.0.6"]
SEWA = [IP="192.168.0.7"]
# onevnet membuat small_network.net
# daftar onevnet
ID USER NAMA JENIS JEMBATAN P #LEASES
0 oneadmin Jaringan kecil Memperbaiki br0 N 0
satuvm
Buat dan edit file konfigurasi startup mesin virtual. Centos.5.5.x86.img di sini dapat diunduh dari http://stacklet.com/ (berbayar) atau Anda dapat membuatnya sendiri menggunakan alat Xen:
# wget http://stacklet.com/sites/default/files/centos/
centos.5.5.x86.img.tar.bz2
# tar jxvf centos.5.5.x86.img.tar.bz2
# mv centos.5.5.x86.img /srv/cloud/one/var/images/
# vi centos.satu
NAMA = centos
CPU = 1
MEMORI = 256
DISK = [
sumber = "/srv/cloud/one/var/images/centos.5.5.x86.img
sasaran = "sda1",
klon = "ya",
hanya baca = "tidak" ]
NIC = [ MAC = "00:16:3E:00:02:64", jembatan = xenbr0 ]
OS = [ bootloader = "/usr/bin/pygrub" ]
Gunakan perintah onevm create untuk memulai file konfigurasi VM di atas, dan mesin virtual akan dibuat di node01. Gunakan daftar onevm untuk memeriksa dan Anda akan melihat status prol, yang menunjukkan bahwa proses pembuatan sedang berlangsung , statusnya akan berubah menjadi runn:
# onevm membuat centos.one
# daftar satuvm
ID NAMA PENGGUNA STAT CPU MEM HOSTNAME WAKTU
1 centos oneadmin prol 0 0K node01 00 00:09:09
# daftar satuvm
ID NAMA PENGGUNA STAT CPU MEM HOSTNAME WAKTU
1 centos oneadmin dijalankan 0 0K node01 00 00:22:17
Dengan cara ini, kami menerapkan cloud minimal di dua server, node00 (depan) dan node01 (node), dan menjalankan mesin virtual berbasis Xen di node01.
Sumber artikel: http://www.vpsee.com/2011/02/install-opennebula-on-centos/