UEC: Manajemen Instance

From OnnoWiki
Jump to navigation Jump to search

Secara umum ada tiga (3) tipe tools yang dapat digunakan untuk me-manage instance Eucalyptus.

  1. Firefox Plugins – Elasticfox dan Hybridfox
  2. Command Line tools seperti euca2ools
  3. Custom application yang di kembangkan menggunakan EC2 APIs. ( Tidak akan di bahas di sini )


Elasticfox

Elasticfox adalah open source Mozilla Firefox extension yang dapat bekerja di Firefox Version 2.0 ke atas untuk membantu kita dalam me-manage account di Amazon EC2 – menjalankan instance baru, mount volume Elastic Block Storage, map Elastic IP addresses, dan masih banyak lagi. Elasticfox awalnya di tulis untuk EC2, tapi sekarang dia juga dapat digunakan untuk manage account Eucalyptus yang kita punya, karena API Eucalyptus compatible dengan EC2.

Fitur

  • Melihat daftar image yang tersedia (AMI untuk AWS dan EMI untuk Eucalyptus)
  • Melihat daftar instance yang berjalan
  • Menjalankan instance baru dari AMI/EMI
  • Me-manage security group dan rule
  • Manage Snapshot/EBS volume

Installation on Firefox

Install extension dari http://s3.amazonaws.com/ec2-downloads/elasticfox.xpi

Kita perlu me-restart Firefox sebelum kita dapat mulai menggunakan Elasticfox. Kita dapat menjalankan Elasticfox melalui menu ‘Tools’ dari Firefox.

Configuration

Mendefinisikan Region

  • Klik pada tombol Region
  • Masukan nama logical untuk region (Misalnya: “Eucalyptus” , “MyEucalyptus” dll)
  • Masukan nilai dari EC2_URL dari file eucarc sebagai Endpoint URL(http://192.168.10.121:8773/services/Eucalyptus misalnya)

Mendefinisikan Credential

  • Klik pada tombol Credential
  • Masukan nama logical untuk sebuah set credential (Misalnya: “EucaAcc1″ dll.)
  • Masukan EC2_ACCESS_KEY dan EC2_SECRET_KEY dari file eucarc sebagai AWS Access Key dan AWS Secret Access Key

Mendefinisikan Pasangan Kunci

  • Klik pada tab KeyPairs
  • Klik pada icon “Create a key keypair”
  • Masukan nama pasangan kunci (Misalnya : “eucakey” dll.)
  • Pilih lokasi dari mesin client untuk menyimpan id file tersebut (Kita memerlukan ini menggunakan putty dll untuk melakukan sambungan SSH)

Mendefinisikan Group Security

  • Klik pada tab SecurityGroups
  • Masukan nama dari group (Misalnya: “Eucalyptus”, “EucaGroup” dll.)
  • Masukan deskripsi dan klik tombol create
  • Kita akan memperoleh pilihan untuk menentukan beberapa port dasar seperti SSH/RDP yang perlu di buka saat membuat group tersebut. Setelah group dibuat, kita dapat menambahkan aturan kapan saja, dengan cara memilih security group di lajur kiri yang berjudul “Your groups” dan menambahkan aturan di lajur kanan yang berjudul “Group Permissions”

Untuk informasi lebih lanjut bisa di ambil di http://ec2-downloads.s3.amazonaws.com/elasticfox-owners-manual.pdf

Hybridfox

Hybridfox adalah sempalan dari Elasticfox agar lebih bisa digunakan menggunakan Eucalyptus, Elasticfox hanya bekerja untuk AWS. Hybridfox dapat digunakan menggunakan satu interface baik untuk AWS dan Eucalyptus.

Interface dari Hybridfox mirip dengan Elasticfox dan semua langkah di atas untuk Elasticfox berlaku juga untuk Hybridfox.

Bahkan setelah release terakhir dari Elasticfox (version 1.7) yang mendukung Eucalyptus, Hybridfox menambahkan beberapa fitur tambahan yang membuatnya lebih menarik untuk pengguna Eucalyptus:

  • Menjalankan instance dengan IP Private
  • Membuat pemetaan antara tipe instance dan tipe arsitektur
  • Mendukung 1.5.x maupun 1.6.x
  • Beberapa perbaikan agar dapat digunakan lebih baik lagi

Kita dapat menginstalasi extension tersebut dari http://code.google.com/p/hybridfox/downloads/list.

Kita perlu me-restart Firefox sebelum kita dapat menggunakan Hybridfox. Kita dapat mengakses Hybridfox dari menu ‘Tools’ di Firefox.

Images.png
Launch.png
Instances.png
Keypairs.png


Command Line Tool (Euca2ools)

Euca2ools dari Eucalyptus menyediakan beberapa command line tool untuk memanage eucalyptus. Perintah-perintah tersebut membantu kita dalam me-manage images, instances, storage, networking dll. Beberapa perintah yang akan berguna bagi kita akan di perlihatkan di bawah ini.

Instalasi euca2ools

$ sudo apt-get install euca2ools


Pembuatan Pasangan Kunci

Eucalyptus berharap client tool untuk menggunakan dua (2) macam credential. Satu set credential di sebut Access Key dan Secret Key yang digunakan oleh semua client yang membutuhkan untuk meminta sesuatu dari Cloud Controller. Setiap user yang terdaftar di interface web akan mempunyai set ini yang dibuatkan untuk masing-masing user. Kita dapat mengambilnya melalui Web seperti dijelaskan sebelumnya pada bagian “Web Interface”.

Kita juga perlu membuat sebuah pasangan kunci yang terdiri dari private key/public key untuk dapat menjalankan instance di Eucalyptus. Kunci ini di injeksi di instance dan dapat digunakan untuk melakukan akses passwordless SSH ke instance.

Pasangan kunci dapat di hasilkan menggunakan perintah berikut

uecadmin@client1:~$ cd ~/.euca
uecadmin@client1:~/.euca$ source eucarc
uecadmin@client1:~$ euca-add-keypair mykey > mykey.priv
uecadmin@client1:~$ chmod 600 mykey.priv

Perintah di atas akan membuat pasangan key yang baru di sebut mykey. Private key mykey.priv akan di simpan secara lokal yang akan digunakan untuk menyambungkan ke instance yang di jalankan dengan mykey sebagai pasangan kunci.

Untuk melihat daftar pasangan kunci:

uecadmin@client1:~$ euca-describe-keypairs
KEYPAIR mykey   f7:ac:8e:f5:05:19:2b:31:28:8c:9b:d7:b8:07:0c:3c:b6:34:8f:79
KEYPAIR helloworld      12:96:b3:21:34:8d:6a:3f:92:2e:2b:70:23:ff:7f:51:b5:b7:ad:37
KEYPAIR ubuntu f6:af:9a:59:65:35:32:c4:3a:c4:62:0e:e1:44:0f:71:29:03:2d:91
KEYPAIR lucid  74:04:70:33:ed:57:7a:30:36:1f:ca:c6:ec:d5:4f:10:34:1a:52:51
KEYPAIR karmic   01:f9:aa:5f:4d:20:e2:53:d1:29:d0:0f:e2:f3:8c:21:91:70:7e:c8

Untuk men-delete pasangan kunci dapat menggunakan perintah

uecadmin@client1:~$ euca-delete-keypair helloworld

Tugas di atas dapat juga dilakukan menggunakan Hybridfox dari “Keypairs” tab.


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.

$ euca-run-instances emi-721D0EBA -k mykey -t c1.medium
RESERVATION     r-55560977      admin   admin-default
INSTANCE        i-50630A2A      emi-721D0EBA    0.0.0.0 0.0.0.0 pending mykey 2010-05-07T07:17:48.23Z eki-675412F5    eri-A1E113E0
$ euca-describe-instances
RESERVATION     r-55560977      admin   default
INSTANCE        i-50630A2A      emi-721D0EBA    192.168.10.200    172.19.1.2  running  mykey   0       c1.medium       2010-05-07T07:17:48.23Z         myueccluster    eki-675412F5    eri-A1E113E0


$ euca-get-console-output i-50630A2A
i-50630A2A
2010-05-07T07:22:40.795Z
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Linux version 2.6.32-21-server (buildd@yellow) (gcc version 4.
4.3 (Ubuntu 4.4.3-4ubuntu5) ) #32-Ubuntu SMP Fri Apr 16 09:17:34 UTC 2010 (Ub
untu 2.6.32-21.32-server 2.6.32.11+drm33.2)
[    0.000000] Command line: root=/dev/sda1 console=ttyS0
[    0.000000] KERNEL supported cpus:
[    0.000000]   Intel GenuineIntel
[    0.000000]   AMD AuthenticAMD
[    0.000000]   Centaur CentaurHauls
[    0.000000] BIOS-provided physical RAM map:
[    0.000000]  BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
[    0.000000]  BIOS-e820: 000000000009f000 - 00000000000a0000 (reserved)
.............
.............
.............
uecadmin@client1:~$ ssh -i mykey.priv user@192.168.10.200
uecadmin@client1:~$ euca-reboot-instances i-50630A2A
uecadmin@client1:~$ euca-terminate-instances i-50630A2A

pastikan saat kita menjalankan instance dengan tipe VM yang tepat. Jika kita menjalankan dengan tipe VM yang terlalu kecil, maka error berikut akan muncul

error: insufficient disk capacity remaining

Default yang digunakan adalah tipe m1.small akan menggunakan 2GB. Jika kita mempunyai harddisk 5GB maka sebaiknya tidak menggunakan

euca-run-instances emi-XXXXXXXX -k mykey

tapi menggunakan

euca-run-instances emi-XXXXXXXX -k mykey -t c1.medium

Tipe VM juga berimplikasi pada jumlah RAM dan jumlah CPU yang di alokasikan ke instance. Untuk mengetahui tipe VM yang di konfigurasi, silahkan dilihat pada halaman konfigurasi pada interface web.

Life cycle of an instance

Pada saat kita memerintahkan “euca-run-instances” (atau saat kita memilih untuk menjalankan instance dari Hybridfox/Elasticfox), berikit ini adalah beberapa yang akan terjadi pada berbagai komponen di UEC:

  • Authentication/Authorization dari user request untuk memastikan bahwa kita memiliki ijin untuk menjalankan instance.
  • Identifikasi dari CC untuk mengambil tanggung jawab untuk menjalankan instance dan identifikasi NC untuk menjalankan instance.
  • Download image ke NC (image di cache oleh karenanya untuk menjalankan multiple instance dari image yang sama hanya membutuhkan satu kali download)
  • Buat virtual network interface yang diminta
  • Jalankan instance dari image di virtual machine menggunakan KVM (Hal ini hanya dimungkinkan jika menggunakan CPU NC yang mempunyai kemampuan VT dan oleh BIOS enable).

Menjalankan dan menghentikan sebuah instance adalah sebuah proses yang kompleks yang melibatkan banyak komponen di UEC.

Referensi

Pranala Menarik