Difference between revisions of "Ubuntu Enterprise Cloud: Catatan kecil Instalasi & Operasi"

From OnnoWiki
Jump to navigation Jump to search
Line 180: Line 180:
 
  emi="emi-ECC8155F"; eri="none"; eki="eki-35AD1A67";
 
  emi="emi-ECC8155F"; eri="none"; eki="eki-35AD1A67";
  
Untuk cara ini kita membutuhkan UEC image dari Ubuntu.com. Hanya saja '''Warning: no ramdisk found, assuming '--ramdisk none'''' ternyata membuat masalah.
+
Untuk cara ini kita membutuhkan UEC image dari Ubuntu.com. Hanya saja '''Warning: no ramdisk found, assuming '--ramdisk none'''' ternyata membuat masalah & kepala pusing.
  
 
Cara yang lebih baik untuk mendaftarkan image tar.gz ke Cloud Controller adalah dengan menambahkan ramdisk -r misalnya
 
Cara yang lebih baik untuk mendaftarkan image tar.gz ke Cloud Controller adalah dengan menambahkan ramdisk -r misalnya
  
  uec-publish-tarball -r i386 maverick-server-uec-i386.tar.gz mybucket
+
  uec-publish-tarball -r eri-0E79157B maverick-server-uec-i386.tar.gz mybucket
  
 
Pastikan bahwa kita telah mengupload ramdisk eri-0E79157B sebelumnya sehingga hasilnya
 
Pastikan bahwa kita telah mengupload ramdisk eri-0E79157B sebelumnya sehingga hasilnya

Revision as of 08:03, 27 December 2010

Install Ubuntu Enterprise Cloud

  • Masukan CD Ubuntu Server
  • Boot Komputer
  • Install UEC

Cek KVM

kvm-ok

Pastikan keluarannya

INFO: Your CPU supports KVM extensions
INFO: /dev/kvm exists
KVM acceleration can be used

Jika tidak,

  • Pastikan CPU yang anda gunakan mensupport VT
  • Pastikan BIOS mengaktifkan VT

Siapkan EUCA

Di Cloud Controller

Pastikan eucalyptus beroperasi

sudo service eucalyptus restart


Di Client

Akses ke Could Controller (192.168.0.10)

https://192.168.0.10:8443/#credentials

Dengan

username admin
password admin


Jika di perlukan

sudo apt-get install euca2ools

Lakukan

mkdir ~/.euca
cp euca2-admin-x509.zip ~/.euca/
cd ~/.euca
unzip euca2-admin-x509.zip

Cek availability zone

. ~/.euca/eucarc
source ~/.euca/eucarc
euca-describe-availability-zones verbose
AVAILABILITYZONE	cluster1	192.168.0.10
AVAILABILITYZONE	|- vm types	free / max   cpu   ram  disk
AVAILABILITYZONE	|- m1.small	0004 / 0004   1    192     2
AVAILABILITYZONE	|- c1.medium	0004 / 0004   1    256     5
AVAILABILITYZONE	|- m1.large	0002 / 0002   2    512    10
AVAILABILITYZONE	|- m1.xlarge	0001 / 0001   2   1024    20
AVAILABILITYZONE	|- c1.xlarge	0000 / 0000   4   2048    20

Jika VCPU bernilai NOL coba lakukan langkah troubleshooting jika VCPU bernilai NOL

Mengambil Image UEC dari Internet

Agar hidup kita lebih mudah akan lebih baik mengambil Image UEC yang sudah jadi dari Internet, misalnya dari

Menggunakan image yang sudah jadi lebih di rekomendasikan. Bagi mereka yang mempunyai cukup nyali dapat membuat image sendiri


Mendaftarkan Image ke Eucalyptus

Langkah selanjutnya adalah mengupload image kernel dan ramdisk ke Could Controller Eucalyptus. File yang perlu di upload untuk contoh di atas adalah

  • /boot/vmlinuz-2.6.35-22-generic-pae
  • /boot/initrd.img-2.6.35-22-generic-pae

Copy kernel dan initrd image dari VM image (atau Node Controller) ke mesin client yang akan mengupload image ke Cloud Controller (dalam contoh ini client adalah 192.168.0.61). Hal ini di perlukan untuk digunakan selanjutnya waktu membuat dan mengupload complete virtual image ke Eucalyptus.

Lihat initrd.img dan vmlinuz di /boot di node controller

$ sudo ls /boot

copy ke mesin client

$ scp /boot/initrd.img-2.6.35-22-generic-pae user@192.168.0.61:
$ scp /boot/vmlinuz-2.6.35-22-generic-pae user@192.168.0.61:

Sebelum menjalankan upload shutdown VM. Perhatikan 'user' di atas adalah username yang kita buat saat instalasi.

Mendaftarkan kernel image

Jalankan perintah berikut dari salah satu komputer client untuk mem-bundel dan mendaftarkan kernel image (vmlinuz-2.6.35-22-generic-pae)

$ . ~/.euca/eucarc
$ source ~/.euca/eucarc
$ euca-bundle-image -i vmlinuz-2.6.35-22-generic-pae --kernel true
$ euca-upload-bundle -b mybucket -m /tmp/vmlinuz-2.6.35-22-generic-pae.manifest.xml
$ euca-register mybucket/vmlinuz-2.6.35-22-generic-pae.manifest.xml

Simpan output yang dihasilkan oleh perintah terakhir di atas (eki-XXXXXXXX misalnya eki-CFBD149B), yang akan dibutuhkan untuk mendaftarkan disk image

Mendaftarkan ramdisk image

Jalankan perintah berikut untuk mem-bundel dan mendaftarkan ramdisk image (initrd.img-2.6.35-22-generic-pae)

$ . ~/.euca/eucarc
$ source ~/.euca/eucarc
$ euca-bundle-image -i  initrd.img-2.6.35-22-generic-pae
$ euca-upload-bundle -b mybucket -m /tmp/initrd.img-2.6.35-22-generic-pae.manifest.xml
$ euca-register mybucket/initrd.img-2.6.35-22-generic-pae.manifest.xml

Simpan output yagn dihasilkan oleh perintah terakhir di atas (eri-XXXXXXXX misalnya eri-0E79157B), yang akan dibutuhkan pada saat mendaftarkan disk image.


Mendaftarkan disk image

Ganti eki-XXXXXXXX dan eri-XXXXXXXX dengan nilai yang kita peroleh sebelumnya

euca-bundle-image -i image.img --kernel eki-XXXXX --ramdisk eri-XXXX
euca-upload-bundle -b mybucket -m /tmp/image.img.manifest.xml
euca-register mybucket/image.img.manifest.xml

Biasanya sesudah euca-register akan di keluarkan emi-XXXXXXXX misalnya emi-ECA31559


Mendaftarkan disk image dari file distribusi UEC

Pastikan pada home directory ada file *.img dan pendukungnya. Misalnya kita ingin menggunakan ls maverick-server-uec-i386*

ls ~/maverick-server-uec-i386*
maverick-server-uec-i386-floppy
maverick-server-uec-i386-loader
maverick-server-uec-i386-vmlinuz-virtual
maverick-server-uec-i386.img
maverick-server-uec-i386.tar.gz

Kalau tidak ada, copy dan extract mengunakan perintah

cp maverick-server-uec-i386.tar.gz ~
cd ~
tar zxvf maverick-server-uec-i386.tar.gz 
euca-bundle-image -i maverick-server-uec-i386-vmlinuz-virtual -r i386 --kernel true
euca-upload-bundle -b mybucket -m /tmp/maverick-server-uec-i386-vmlinuz-virtual.manifest.xml
euca-register mybucket/maverick-server-uec-i386-vmlinuz-virtual.manifest.xml

Biasanya sesudah euca-register akan di keluarkan eki-XXXXXXXX misalnya eki-ECA31559

euca-bundle-image -i maverick-server-uec-i386.img -r i386 --kernel eki-35BC1A6D
euca-register mybucket/maverick-server-uec-i386.img.manifest.xml

Biasanya sesudah euca-register akan di keluarkan emi-XXXXXXXX misalnya emi-ECA31559

Mendaftarkan UEC Image ke Cloud Controller

Cara sederhana untuk mendaftarkan Image ke Cloud Controller adalah sebagai berikut

uec-publish-tarball maverick-server-uec-i386.tar.gz mybucket
Fri Dec 24 09:54:10 WIT 2010: ====== extracting image ======
Warning: no ramdisk found, assuming '--ramdisk none'
kernel : maverick-server-uec-i386-vmlinuz-virtual
ramdisk: none
image  : maverick-server-uec-i386.img
Fri Dec 24 09:54:21 WIT 2010: ====== bundle/upload kernel ======
Fri Dec 24 09:54:24 WIT 2010: ====== bundle/upload image ======
Fri Dec 24 09:55:46 WIT 2010: ====== done ======
emi="emi-ECC8155F"; eri="none"; eki="eki-35AD1A67";

Untuk cara ini kita membutuhkan UEC image dari Ubuntu.com. Hanya saja Warning: no ramdisk found, assuming '--ramdisk none' ternyata membuat masalah & kepala pusing.

Cara yang lebih baik untuk mendaftarkan image tar.gz ke Cloud Controller adalah dengan menambahkan ramdisk -r misalnya

uec-publish-tarball -r eri-0E79157B maverick-server-uec-i386.tar.gz mybucket

Pastikan bahwa kita telah mengupload ramdisk eri-0E79157B sebelumnya sehingga hasilnya

Mon Dec 27 06:08:57 WIT 2010: ====== extracting image ======
kernel : maverick-server-uec-i386-vmlinuz-virtual
ramdisk: eri-0E79157B
image  : maverick-server-uec-i386.img
Mon Dec 27 06:09:15 WIT 2010: ====== bundle/upload kernel ======
Mon Dec 27 06:09:17 WIT 2010: ====== bundle/upload image ======
Mon Dec 27 06:10:41 WIT 2010: ====== done ======
emi="emi-EC87155B"; eri="eri-0E79157B"; eki="eki-35AD1A6E";

Jika kita lupa maka kita dapat menambahkan ramdisk dan kernel pada saat run instance kemudian.

Jika kita ingin melihat kemungkinan untuk membuat script file dapat membaca alternatif cara menjalankan Instance

Melihat daftar Image

Image baru yang sudah di upload dapat dilihat menggunakan perintah euca-describe-images

$ euca-describe-images
IMAGE	eki-35AD1A67	mybucket/maverick-server-uec-i386-vmlinuz-virtual.manifest.xml	admin	available	public		i386	kernel		
IMAGE	emi-ECC8155F	mybucket/maverick-server-uec-i386.img.manifest.xml	admin	available	public		i386	machine	eki-35AD1A67	

Tentang bagaimana managing instances akan di terangkan di bagian selanjutnya.


Deregister Image

Kita dapat men-deregister image jika dibutuhkan

euca-deregister emi-70280EAC


Pembuatan Pasangan Kunci

Kita membutuhkan pasangan kunci untuk berhubungan dengan instance yang akan di jalankan di cloud. Pasangan kunci dapat di hasilkan menggunakan perintah berikut

cd ~/.euca
source eucarc
euca-add-keypair mykey > mykey.priv
chmod 600 mykey.priv

Untuk melihat pasangan kunci

$ euca-describe-keypairs
KEYPAIR	mykey	18:7d:ae:d6:5d:03:d0:7c:90:53:47:bf:36:16:e0:d5:b4:df:1b:04

Untuk men-delete pasangan kunci dapat menggunakan perintah

$ euca-delete-keypair mykey


Menjalankan dan Memanage Instance

Perintah berikut dapat digunakan untuk untuk menjalankan instance dengan menggunakan pasangan kunci yang kita buat, mencek status instance, dan meng-connect ke instance.

Cek zone & cek images yang ada

. ~/.euca/eucarc
source ~/.euca/eucarc
euca-describe-availability-zones verbose
euca-describe-images

Beberapa pilihan perintah untuk menjalankan instance emi-XXXXX

$ euca-run-instances -k mykey -t c1.medium emi-EC721551
$ euca-run-instances -k mykey -t m1.large emi-EC721551
$ euca-run-instances -k mykey -t m1.xlarge emi-EC721551

Jika kita ingin menspesifikasi kernel / ramdisk tertentu yang di jalankan beserta image dapat menggunakan perintah berikut

$ euca-run-instances --kernel eki-CFBD149B --ramdisk eri-0E79157B -k mykey -t m1.large emi-EC721551


Jika berhasil jalan dengan baik akan keluar

RESERVATION	r-458B091C	admin	admin-default
INSTANCE	i-3ED50736	emi-EC721551	0.0.0.0	0.0.0.0	pending	mykey	0		m1.large	2010-12-26T23:31:34.85Z	cluster1	eki-CFBD149B	eri-0E79157B


Untuk melihat lebih detail tentang instance tersebut kita dapat menggunakan perintah

$ euca-describe-instances
RESERVATION	r-458B091C	admin	default
INSTANCE	i-3ED50736	emi-EC721551	192.168.0.20	172.19.1.2	pending	mykey	0		m1.large	2010-12-26T23:31:34.85Z	cluster1	eki-CFBD149B	eri-0E79157B


Jika ingin melakukan looping lakukan

$ watch -n5 euca-describe-instances

Pada saat caching pertama kali dilakukan maka tahapan instance adalah 'pending'. Pastikan "pending" menjadi "running". Jika tidak berhasil berarti instance tidak berjalan dengan baik.

Cek di /var/log/eucalyptus di Node

Kalau cukup iseng kita juga dapat mencek di Node /var/log/eucalyptus. Lakukan

tail /var/log/eucalyptus/nc.log 
[Fri Dec 24 10:16:40 2010][002040][EUCADEBUG ] doDescribeResource() invoked
[Fri Dec 24 10:16:40 2010][002040][EUCADEBUG ] doDescribeInstances() invoked
[Fri Dec 24 10:16:40 2010][002040][EUCADEBUG ] doDescribeInstances(): instanceId=i-57110A2D publicIp=0.0.0.0 privateIp=172.19.1.2 mac=D0:0D:57:11:0A:2D vlan=10 networkIndex=2


Cek tail /var/log/eucalyptus/axis2c.log

Pada saat

tail /var/log/eucalyptus/axis2c.log

tampak

[Mon Dec 27 06:43:12 2010] [error] error.c(94) OXS ERROR [x509.c:287 in openssl_x509_get_subject_key_identifier] oxs defualt error , The extenension index of NID_subject_key_identifier is not valid
[Mon Dec 27 06:43:12 2010] [error] error.c(94) OXS ERROR [x509.c:287 in openssl_x509_get_subject_key_identifier] oxs defualt error , The extenension index of NID_subject_key_identifier is not valid
[Mon Dec 27 06:43:12 2010] [error] error.c(94) OXS ERROR [x509.c:287 in openssl_x509_get_subject_key_identifier] oxs defualt error , The extenension index of NID_subject_key_identifier is not valid

Ini tidak masalah karena ini adalah bug yang di ketahui di Eucalyptus

Berinteraksi dengan Instance

Melihat console output

Jika Instance sudah 'running' maka kita dapat melihat apa yang terjadi di console melalui perintah

$ euca-get-console-output i-49FA09ED

Jika belum 'running' maka akan tampak

VmControl: Instance i-49FA09ED is not in a running state.

Shutdown Instance

$ euca-terminate-instances i-49FA09ED


Reboot Instance

$ euca-reboot-instances i-49FA09ED


SSH ke Instance

Jika Instance sudah berjalan dengan baik harusnya kita dapat masuk menggunakan SSH

$ ssh -i mykey.priv administrator@192.168.0.20


Referensi

Pranala Menarik