• Tidak ada hasil yang ditemukan

ANALISA PERANCANGAN DAN UJI KINERJA SISTEM DRP DENGAN TEKNOLOGI RAC DAN DATA GUARD MENGGUNAKAN METODE SINGLE INSTANCE PHYSICAL STANDBY DATABASE

N/A
N/A
Protected

Academic year: 2021

Membagikan "ANALISA PERANCANGAN DAN UJI KINERJA SISTEM DRP DENGAN TEKNOLOGI RAC DAN DATA GUARD MENGGUNAKAN METODE SINGLE INSTANCE PHYSICAL STANDBY DATABASE"

Copied!
107
0
0

Teks penuh

(1)

TEKNOLOGI RAC DAN DATA GUARD MENGGUNAKAN METODE SINGLE INSTANCE PHYSICAL STANDBY DATABASE

Laporan Tugas Akhir

Diajukan Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Satu (S1) Pada Fakultas Ilmu Komputer Program Studi

Teknik Informatika

Oleh :

GUGUN GUNAWAN 01501 - 035

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER

UNIVERSITAS MERCU BUANA

2008

(2)

DRP (Disaster Recovery Plan) adalah sebuah sistem yang dapat

menangani/mencegah terjadinya kerusakan dan kehilangan data, Real Application

Cluster dan Oracle Data Guard merupakan dua teknologi effektif dari Oracle DRP untuk memberikan perlindungan asset/data pada korporat, dan dapat

membuat data tersedia dalam waktu 24 x 7 x 365 serta mencegah terjadinya kerusakan/kehilangan data tersebut dan menjamin ketersediaan data (High

Availability) kapanpun kita perlukan.

Tujuan dari laporan penelitian ini adalah untuk membangun High

Availability System yang mampu menangani disaster recovery menggunakan Oracle RAC dan Oracle Data Guard dengan Physical Standby Database sehingga

didapatkan waktu downtime seminimal mungkin ( < 5 menit ) dan waktu proses

transfer data seminimal mungkin.

Metodologi yang digunakan dalam melakukan penelitian adalah melakukan analisa kebutuhan sistem DRP yang diperlukan untuk menangani user

requirement yang telah ditetapkan berupa waktu downtime untuk yang

direncanakan maupun tidak direncanakan. Kemudian penulis merancang arsitektur sistem DRP/DRC serta mengimplementasikannya kedalam sistem tersebut.

Pengujian dilakukan dengan menggunakan dua buah skenario yaitu pengujian pada kondisi darurat I ( Sistem Komputer/RAC Node ), dimana ptada kondisi darurat seperti ini diasumsikan salah satu node dari RAC mengalami

(3)

dengan menggunakan node lainnya yang tidak mengalami kerusakan. Sementara akses ke server aplikasi dan server database masih menggunakan Primary Site. Dan pengujian pada kondisi darurat II ( Sistem Komputer/2 RAC Node ), dimana pada kondisi darurat ini diasumsikan Server Database yang ada di lingkungan

Primary site tidak dapat diakses/digunakan. Sehingga kegiatan operasional akan

dilaksanakan oleh user dengan menggunakan backup server database yang telah disiapkan di DRC-Site. Dari sisi sistem aplikasi komputer yang ada akan dilakukan proses failover untuk memindahkan bisnis operasional dari primary site ke backup site.

Dari seluruh rangkaian uji kinerja RAC dan Data Guard yang telah dilakukan maka penulis mendapatkan kesimpulan, dengan arsitektur ini penulis mendapatkan 2 nilai waktu downtime, baik yang direncanakan maupun tidak direncanakan kurang dari maksimal downtime (5 menit) yang telah ditetapkan dengan rata-rata downtime untuk kerusakan salah satu node adalah 2,5 detik, sebenarnya ini dapat diasumsikan tidak ada downtime dikarenakan dilakukan proses pengujian secara manual untuk melihat downtime yang terjadi. Dan rata-rata downtime untuk kerusakan dua buah node dimana proses transaksi di failover ke standby site/database adalah 3,5 detik.

Dengan arsitektur ini didapatkan proses pengiriman log file ke standby database dengan rata-rata berukuran 20 MB memerlukan waktu < 20 detik.

(4)

DRP ( Disaster Recovery Plan) is a system able to handle / preventing the happening of data loss and damage, Real Application Cluster and Oracle Data Guard represent two effektif technology from Oracle DRP to give protection of asset / data at corporate, and can make data available in time 24 x 7 x 365 and also prevent the happening of damage / losing of the data and guarantee the availibility of data ( High Availability) whenever us need.

Intention of this research report is to develop/build High Availability System capable to handle recovery disaster use Oracle RAC and Oracle Data Guard with Physical Standby Database so that got downtime time as minimum as possible ( < 5 minute ) and time process the transfer of data as minimum as possible.

Methodologies which used in doing/conducting research is to analyse requirement of needed to DRP system handle requirement user which have been specified in the form of downtime time for the things planned and also do not be planned. And then writer design DRP/DRC system architecture and also implementation into the system.

Examination conducted by using two scenario that is examination at condition of emergency I ( System Computer / Node RAC ), where this condition of emergency like this assumed one of the node from one of RAC is damage / down so that operational activity will remain to be executed by user by using other node which do not experience of damage. For a while access to application

(5)

emergency II ( System Computer / 2 RAC Node ), where at condition of this emergency is assumed Server Database exist in Primary site environment cannot be accessed / to be used. So that operational activity will be executed by user by using backing up database server which have been prepared in DRC-SITE. From existing computer application system side will to process failover to remove operational business from site primary to backing up site.

From entire/all network test RAC performance and Data Guard which have been conducted writer get conclusion, with this architecture writer get 2 downtime time value, both for planned and also do not be planned maximal less than downtime ( 5 minute) which have been specified with downtime mean for the damage of one of the node is 2.5 second, in fact this can be assumed there no downtime because to process examination manually to see downtime that happened. And downtime mean for the damage of two node where transaction process in failover to site standby / database is 3.5 second.

With this architecture is got by process delivery of archive log to database standby with fairish mean 20 MB need time < 20 second.

(6)

LEMBAR PERNYATAAN

Yang bertanda tangan di bawah ini :

Nama : GUGUN GUNAWAN NIM : 01501 – 035

Menyatakan bahwa Tugas Akhir ini adalah hasil buatan sendiri, bukan hasil dari duplikasi kecuali yang tercantum di dalam daftar pustaka.

Jakarta, Juli 2008

(7)

LEMBAR PENGESAHAN

NAMA : GUGUN GUNAWAN

NIM : 01501-035

FAKULTAS : ILMU KOMPUTER

JURUSAN : TEKNIK INFORMATIKA

Yang bertanda tangan di bawah ini menyatakan bahwa Laporan Tugas Akhir dari mahasiswa tersebut diatas, dengan judul :

ANALISA PERANCANGAN DAN UJI KINERJA SISTEM DRP DENGAN TEKNOLOGI RAC DAN DATA GUARD MENGGUNAKAN

METODE SINGLE INSTANCE PHYSICAL STANDBY DATABASE

telah diperiksa dan disetujui sebagai Laporan Tugas Akhir.

Disetujui oleh,

(Devi Fitrianah, S.Kom, MTI) Dosen Pembimbing I

(Abdusy Syarif, ST, MT) Dosen Pembimbing II

Mengetahui,

(Abdusy Syarif, ST, MT) Ketua Program Studi

Teknik Informatika

(Devi Fitrianah, S.Kom, MTI) Koordinator Tugas Akhir

(8)

KATA PENGANTAR

Assalamualaikum Wr. Wb.

Dengan memanjatkan puji syukur akan kehadirat Allah SWT, yang telah memberikan rahmat dan karuniaNya sehingga Penulis dapat menyelesaikan penulisan Laporan Tugas Akhir ini tanpa terjadi aral yang melintang. Laporan ini dibuat sebagai dokumentasi dari hasil pelaksanaan Tugas Akhir dan sebagai salah satu persyaratan untuk menempuh program studi Strata Satu (S1) pada jurusan Teknik Informatika Universitas Mercu Buana.

Dalam penyusunan laporan Kerja Praktek ini, dengan segala keterbatasan yang ada Penulis sadar bahwa Laporan Tugas Akhir ini tidak akan segera rampung tanpa adanya bantuan, bimbingan dan dorongan dari berbagai pihak. Untuk itu dengan segala kerendahan hati Penulis ucapkan terima kasih kepada : 1. Ayah dan Ibu tercinta, dengan penuh keikhlasan dan cinta kasih yang tulus

memberikan segala macam bentuk dukungan yang sangat berarti untuk Penulis hingga yang di cita – cita kan dapat segera terwujud.

2. Kakak dan adikku tercinta yang telah memberikan masukan – masukan yang berarti dari awal kuliah hingga sekarang.

3. Ibu Devi Fitriana, ST, MT, selaku dosen Pembimbing I Tugas Akhir

4. Bapak Abdusy Syarif, ST, MT, selaku dosen Pembimbing II Tugas Akhir dan selaku Ketua Program Studi Teknik Informatika.

5. Bapak dan Ibu Dosen yang telah memberikan ilmunya selama Penulis menempuh perkuliahan di Universitas Mercu Buana.

(9)

6. Sahabat – sahabat dekat Penulis, Herry, Dede, Fitra, Edward, Wawan, Iffa,Vivilia dan lainnya yang telah memberikan warna segar dan baru dalam mejalankan Perkuliahan di Universitas Mercu Buana.

7. Rekan – rekan Mahasiswa Teknik Informatika angkatan 2001 yang telah memberikan ilmunya dari awal perkuliahan hingga sekarang.

8. Seluruh member dari Forum Mercubuana-IT, dimana kita saling berbagi ilmu dalam dunia maya.

9. Amanda Budiasih yang telah memberikan semangat dan tegurannya selama ini, kamulah inspirasiku.

Demikian Laporan Tugas Akhir ini disusun, semoga manfaat yang besar dari isi yang terkandung di dalam Laporan Tugas Akhir ini dapat dirasakan oleh Penulis khususnya dan pihak – pihak yang membutuhkan pada umumnya.

Akhir kata, Penulis sadar akan kekurangan dalam penyusunan Laporan Tugas Akhir ini. Pada kesempatan ini Penulis membuka diri untuk menerima masukan saran dan kritik yang dapat membangun untuk kemajuan Penulis untuk berkarya lebih baik dalam penulisan laporan lainnya di masa mendatang.

Jakarta, Juli 2008

(10)

DAFTAR ISI

LEMBAR PERNYATAAN……… i

LEMBAR PENGESAHAN……… ii

KATA PENGANTAR …..………. iii

DAFTAR ISI ……….. v

DAFTAR GAMBAR...……… viii

DAFTAR TABEL....……… xi

DAFTAR ISTILAH….……… xii

BAB I PENDAHULUAN……… 1 1.1 Latar Belakang……….……… 1 1.2 Identifikasi Masalah ...……… 2 1.3 Batasan Masalah …….……… 3 1.4 Tujuan Penelitian ……...………. 3 1.5 Metode Penelitian ...……… 4 1.6 Sistematika Penulisan ………. 4

BAB II LANDASAN TEORI ……….…. 6

2.1 Pengertian DRP ( Disaster Recovery Plan ………. 6

2.2 Pengertian Availability ……… 7

2.3 Alasan Downtime ……… 9

2.4 Jenis – jenis High Availability Recovery ……… 10

2.5 MAA dengan RAC dan Data Guard ………... 13

(11)

2.7 Struktur Database Oracle ………... 15

2.7.1 Struktur Logikal …………..……… 15

2.7.2 Sruktur Physical ……….. 16

2.8 Struktur Instance ……….………. 16

2.9 Proses Background ……….. 19

2.10 Oracle Data Guard ………. 20

2.11 Standby Database ……… 20

2.11.1 Physical Standby Database ………..….. 21

2.11.2 Logical Standby Database ……….……… 22

2.12 Data Guard Services ………. 23

2.12.1 Redo Transport Services ……… 24

2.12.2 Log Apply Services ………. 24

2.12.3 Role Transitions ……….. 25

2.13 Keuntungan/kelebihan Data Guard ……… 26

2.14 Oracle Real Application Cluster ..………... 27

2.15 Integrated Clusterware Management ……… 28

2.16 Single System Image Management ……… 29

2.17 Automatic Workload Management ...……… 30

2.18 Workload Monitoring …..……….. 31

2.19 Fast Connection Fail-Over ……… 31

BAB III ANALISA KEBUTUHAN DAN PERANCANGAN SISTEM DRP DENGAN TEKNOLOGI RAC DAN DATA GUARD ……….. 32

(12)

3.2 Perancangan arsitektur sistem RAC dan Data Guard …... 37 3.2.1 Standar Operasi Penanggulangan Keadaan Darurat … 40 BAB IV IMPLEMENTASI DAN PENGUJIAN ………... 43

4.1 Instalasi Oracle RAC ….……..……….………….. 43 4.1.1 Konfigurasi Raw Device pada Shared Storage ……. 44 4.1.2 Instalasi Clusterware ………. 47 4.1.3 Instalasi Database Engine ………. 54 4.1.4 Membuat Database ……… 56 4.2 Membuat Single Instance Physical Standby untuk RAC …. 63

4.2.1 Mengumpulkan file untuk melakukan backup …… 63 4.2.2 Konfigurasi Net Service pada Standby Database …. 64 4.2.3 Membuat Physical Standby Database ………. 65 4.2.4 Konfigurasi Primary Database untuk Data Guard .. 68 4.2.5 Verifikasi Konfigurasi Data Guard ………. 69 4.3 Skenario Pengujian ………. ……… 70 4.3.1 Pengujian Keadaan Darurat I ……….. 71 4.3.1.1 Mengaktifkan instance RAC per node ……. 71 4.3.1.2 Mengaktifkan/mematikan RAC Database ... 72 4.3.1.3 Pengujian TAF ………. 72 4.3.2 Pengujian Keadaan Darurat II ………. 77 4.3.2.1 Pengujian fail over secara manual ……….. 78 4.3.3 Pengujian Proses Transfer File Archive Log …….. 83

(13)

BAB V PENUTUP………. 85 5.1 Kesimpulan……….. 85 5.2 Saran………. 86 DAFTAR PUSTAKA

(14)

DAFTAR GAMBAR

Gambar 2.1. Skema DRP untuk perancangan High Availability ………. 7 Gambar 2.2. Arsitektur Database Oracle …..……… 14 Gambar 2.3. Struktur logical oracle ……….. 15 Gambar 2.4. Konfigurasi Tipikal Data Guard ……… 23 Gambar 2.5. Update otomatis pada physical standby database ………… 25 Gambar 2.6. Manajemen clusterware terintegrasi pada RAC ………… 28 Gambar 2.7. Single system image Cluster Database untuk Oracle RAC .. 30 Gambar 3.1. Arsitektur RAC dan Data Guard ……….………. 37 Gambar 3.2. Kondisi keadaan darurat I ...………. 41 Gambar 3.3. Kondisi keadaan darurat II …………...……….. 42

(15)

DAFTAR TABEL

Tabel 2.1. Penyebab downtime ……….. 9 Tabel 2.2. Perbandingan jenis-jenis recovery ..………... 10 Tabel 2.3. Solusi Oracle High availability untuk downtime tidak direncanakan

dengan menggunakan RAC dan Data Guard ……… 13 Tabel 2.4. Solusi Oracle High availability untuk downtime direncanakan

dengan menggunakan RAC dan Data Guard ……… 13

Tabel 2.5. Waktu downtime yang diperlukan untuk kerusakan tidak

direncanakan ………..……… 14

Tabel 2.6. Waktu downtime yang diperlukan untuk kerusakan yang

direncanakan ………..……… 14

Tabel 3.1. Penyebab dan maksimal downtime yang ditetapkan user … 33 Tabel 3.2. Solusi Oracle High availability untuk downtime tidak direncanakan

dengan menggunakan RAC dan Data Guard ………. 34 Tabel 3.2. Solusi Oracle High availability untuk downtime direncanakan

dengan menggunakan RAC dan Data Guard ………. 34

Tabel 3.4 Waktu downtime yang diperlukan untuk kerusakan tidak direncanakan ………. 36

Tabel 3.5 Waktu downtime yang diperlukan untuk kerusakan yang direncanakan ……….. 36

(16)

Tabel 4.1 Tabel perbandingan waktu downtime darurat I ……... 77

Tabel 4.2 Tabel perbandingan waktu downtime darurat II ……... 82

(17)

BAB I PENDAHULUAN

1.1 Latar Belakang

Kelangsungan bisnis dan perlindungan kerusakan merupakan prioritas utama pada level manajemen senior pada setiap korporat.

Kerusakan data adalah sebuah permasalahan kritis bagi korporat yang berarti kerugian secara materi maupun pencitraan akibat terjadinya downtime pada sistem yang ada.

DRP (Disaster Recovery Plan) adalah sebuah sistem yang dapat

menangani/mencegah terjadinya kerusakan dan kehilangan data, Real Application

Cluster dan Oracle Data Guard merupakan dua teknologi effektif dari Oracle DRP untuk memberikan perlindungan asset/data pada korporat, dan dapat

membuat data tersedia dalam waktu 24 x 7 x 365 serta mencegah terjadinya kerusakan/kehilangan data tersebut dan menjamin ketersediaan data (High

Availability) kapanpun kita perlukan.

Oracle RAC merupakan suatu lingkungan komputasi yang memanfaatkan interkoneksi antar komputer dengan menggunakan teknologi cluster. Dengan hal tersebut maka dapat memberikan skalabilitas tidak terbatas dan juga tingkat ketersediaan yang tinggi bagi aplikasi apapun. Ini bisa dicapai dengan memanfaatkan konfigurasi hardware secara cluster berkat kemudahan dalam penggunaan single system image. Oracle RAC mengijinkan akses ke dalam

(18)

single database dari beberapa instance dalam suatu konfigurasi yang ter-cluster.

Semua instance membaca satu physical database (yang lokasinya di shared

storage), client session dilayani oleh semua instance tersebut dengan metode load balancing. Tujuan RAC adalah High Availability, pada saat salah satu atau dua

dari instance tersebut mati/down, masih ada satu instance yang menerima client

session.

Data guard memberikan solusi recovery kerusakan data secara efisien

dengan mengatur penggandaan transaksi dari primary database ke standby

database secara remote. Standby database menjamin bahwa data yang dimiliki

tidak akan hilang ketika pada data terjadi kegagalan. Ketika primary database mengalami gangguan, maka koneksi aplikasi dapat dipindahkan ke standby

database yang sudah disiapkan. Selama primary database dalam perbaikan, maka

semua pemakai aplikasi masih dapat melakukan transaksi secara normal menggunakan standby database.

High Availability system merupakan pengaturan (management),

pengawasan (monitoring), dan perangkat software otomasi yang membuat, merawat, dan memonitor satu atau lebih standby database untuk melindungi data korporasi dari kegagalan, kehilangan, kesalahan, dan kerusakan.

1.2 Identifikasi Masalah

Semakin bertambahnya jumlah data serta semakin banyak dan kompleknya transaksi data yang di tangani oleh database server dimana ketersediaan data selama 24 jam menjadi sebuah keharusan dan kerusakan data

(19)

sekecil apapun yang mengakibatkan downtime yang lama tidak dapat ditolerir, sehingga penggunaan sistem recovery manager (backup dan restore) tidaklah cukup. Salah satu kemampuan dari teknologi RAC dan Data Guard adalah dapat melakukan disaster recovery secara cepat dan akurat, sehingga user/sistem dapat terus melakukan transaksi tanpa mengalami gangguan yang berarti.

1.3 Batasan Masalah

Batasan masalah yang akan dibahas adalah merancang sistem DRP dengan menggunakan Oracle Real Application Cluster dan Oracle Data Guard

System berupa Standby Database Server dan melakukan uji kinerja performa dari High Availability System tersebut dalam menangani DRP serta melakukan analisa

dari hasil uji kinerja tersebut berdasarkan acuan dari proses administrasi RAC dan Data Guard.

1.4 Tujuan Penelitian

Tujuan dari laporan Tugas Akhir ini adalah untuk membangun High

Availability System yang mampu menangani disaster recovery menggunakan Oracle RAC dan Oracle Data Guard dengan Physical Standby Database dan

melakukan uji kinerja High Availability System tersebut sebagai solusi yang dapat digunakan dalam membangun sebuah sistem yang high availability yang dikelola oleh Database Administrator.

(20)

1.5 Metode Penelitian

Adapun tahapan metode penelitian yang digunakan Penulis adalah sebagai berikut :

1. Studi literatur dan perpustakaan, dilakukan dengan membaca buku-buku yang berkaitan dengan permasalahan yang dibahas khususnya yang berkaitan dengan Oracle Data Guard dan Oracle RAC.

2. Mengumpulkan data – data yang tekait dengan sistem Standby Database

Server menggunakan Physical Standby Database dan Oracle RAC

3. Merancang dan membangun sistem DRP yang High Availability dengan menggabungkan teknologi RAC dan Data Guard.

4. Melakukan pengujian kinerja setelah sistem yang dibangun diyakini sudah benar dan memberikan hasil pengujian dan kesimpulan yang didapatkan.

1.6 Sistematika Penulisan

Di dalam penyusunan Laporan Tugas Akhir ini Penulis telah membagi Laporan ini ke dalam beberapa bab dan disusun dengan sistematika penulisan sebagai berikut :

BAB I : PENDAHULUAN

Pada bab ini akan diuraikan mengenai latar belakang, identifikasi masalah, batasan masalah, tujuan penelitian, metode penelitian dan sistematika penulisan.

(21)

BAB II : LANDASAN TEORI

Pada bab ini akan di jelaskan mengenai apa yang menjadi landasan dari teori – teori yang digunakan Penulis untuk menyelesaikan permasalahan pada Laporan Tugas Akhir ini. BAB III : ANALISA KEBUTUHAN & PERANCANGAN SISTEM DRP

DENGAN TEKNOLOGI RAC DAN DATA GUARD

Pada bab ini akan dilakukan analisa kebutuhan untuk perancangan dan membangun sistem DRP yang High Availability beserta konfigurasi yang diperlukan dalam pembuatan RAC,

primary database dan standby database,

BAB IV : IMPLEMENTASI DAN PENGUJIAN

Pada bab ini penulis akan melakukan implementasi dan pengujian mengenai disaster recovery system yang dijalankan dengan teknologi RAC dan Data Guard menggunakan standby

database server.

BAB V : PENUTUP

Pada bab ini akan berisi mengenai kesimpulan – kesimpulan dari hasil pengujian yang telah dilakukan dan saran – saran yang dapat digunakan dikemudian hari dalam melakukan penelitian yang sama.

(22)

BAB II LANDASAN TEORI

2.1 Pengertian DRP (Disasters Recovery Plan)

Disasters Recovery Plan, adalah metode/rencana yang diterapkan/disusun

apabila terjadi hal-hal yang tidak diinginkan terjadi pada database atau mesin tempat menyimpan data, sehingga menimbulkan kerusakan atau bahkan hilangnya data pada database kita. Hal-hal yang tidak diinginkan tersebut bisa bermacam-macam, misalnya data terhapus, mesin tempat menyimpan database rusak, kebakaran pada ruang tempat menyimpan mesin database, bencana alam dan lain sebagainya. Sebelum kita membuat metode/rencana yang akan digunakan dalam mengimplementasikan DRP ini, ada beberapa hal yang harus diperhatikan berkaitan dengan hal ini. Hal-hal yang harus diperhatikan tersebut antara lain :

1. Buat suatu list yang yang diurutkan berdasarkan tingkat availability dari semua database yang ada dalam mesin/server.

2. Bedakan lokasi tempat menyimpan mesin/database/backup dengan lokasi tempat menyimpan mesin/database yang sedang running.

3. Pilih metode yang terbaik untuk metode DRP ini, disesuaikan dengan semua resources yang ada, kalau memang tidak bisa mengeluarkan anggaran tambahan untuk implemetasi DRP ini.

4. Lakukan simulasi metode DRP yang telah ditetapkan. 5. Lakukan pengecekkan metode DRP secara berkala.

(23)

Gambar 2.1 Skema DRP untuk perancangan High Availability [Referensi:Oracle 10g Online Documentation,2006]

2.2 Pengertian Availability

Availability adalah suatu kondisi dimana suatu aplikasi, layanan, atau fungsi

tersedia pada saat user/pemakai membutuhkannya. Reliability, recoverability,

timely error detection, dan continuous operations adalah karakterisitik utama

pada solusi high availability.

1. Reliability, reliable software termasuk database dan aplikasi merupakan

komponen utama untuk mengimplementasikan solusi high availability. 2. Recoverability, begitu banyak pilihan untuk melakukan recover pada

saat terjadi kegagalan sistem. Sangat penting untuk menentukan tipe kesalahan/kegagalan yang mungkin terjadi pada perangkat sistem kita, dan bagaimana untuk memperbaiki kegagalan tersebut. Contoh, jika tabel kritis terhapus dari database, tindakan apa yang akan diambil

D Doowwnnttiimmee d diirreennccaannaakkaa n n D Doowwnnttiimmee T Tiiddaakk d diirreennccaannaakkaann P Peerraawwaattaann R Ruuttiinn O OppeerraassiiRRuuttiinn K Keessaallaahhaann m maannuussiiaa K Keerruussaakkaann d daattaa K Keerruussaakkaann s siisstteemm U UppggrraaddeeHH//WW&& S S//WW B Baacckkuupp M Meenngghhaappuussddaattaa D DaattaaCCoorrrruupptt S SiisstteemmCCrraasshh

(24)

untuk memperbaikinya? Apakah arsitektur sistem kita memiliki kemampuan untuk memperbaiki sesuai dengan Service Level Agreement

(SLA)?

3. Timely error detection, jika sebuah komponen pada arsitektur sistem mengalami kegagalan, kemudian pendeteksian yang cepat merupakan hal yang penting dalam menangani kegagalan tersebut. Jika kita membutuhkan waktu sampai dengan 90 menit untuk mengetahui dan memperbaiki kegagalan tersebut, kemudian hal tersebut tidaklah sesuai dengan SLA yang ada, maka penggunaan sebuah sistem yang dapat memonitoring kondisi dari database dan memberikan peringatan kepada DBA sangatlah penting.

4. Continous operations, akses yang berkelanjutan kepada data adalah

penting disaat aktivitas/proses tidak boleh mengalami downtime. Proses seperti memindahkan tabel ke tempat lain antar database, atau bahkan menambahkan CPU kedalam perangkat kita, dapat dilakukan pada saat user terus beraktifitas bila kita menggunakan arsitektur yang high

availability.

Lebih spesifik lagi bahwa high availability architecture haruslah memiliki sifat-sifat:

1. Kecepatan deteksi kesalahan/kegagalan dari suatu sistem. 2. Perbaikan yang cepat.

3. Operasi perbaikan yang otomatis. 4. Melindungi dari kehilangan data.

(25)

2.3 Alasan Downtime

Salah satu cara dalam merancang sistem yang high availability adalah menguji dan memetakan semua kemungkinan penyebab dari downtime. Ini sangat penting untuk mempertimbangkan penyebab/alasan dari downtime yang direncanakan maupun tidak direncanakan saat merancang sebuah sistem agar mampu mengangani kemungkinan tersebut.

Tabel 2.1 Penyebab downtime

Kategori Tipe Deskripsi Contoh Tidak direncanakan Kerusakan

komputer/server

Pada saat server database mengalami kerusakan sehingga database tidak tersedia dan tidak dapat diakses

Kerusakan database Kerusakan OS Kerusakan dari oracle instance

Kerusakan dari kartu jaringan

Kerusakan media penyimpanan data

Pada saat media penyimpanan dari data mengalami kerusakan sehingga data tidak dapat diakses

Kerusakan disk drive Kerusakan disk controller Kerusakan storage Kesalahan manusia Pada saat melakukan

tindakan illegal baik disengaja maupun tidak yang menyebabkan kerusakan/kehilangan data

Menghapus objek database

Kekeliruan merubah data Penghilangan data Kerusakan data Pada saat h/w maupun

s/w menyebabkan data tidak dapat diakses dan ditulis oleh database

OS atau driver media penyimpanan, disk controller atau kerusakan volume manager menyebabkan disk tidak dapat dibaca dan ditulis. Kerusakan/kehancuran

lokasi

Pada saat lokasi server database mengalami kerusakan/kehancuran besar

Kerusakan jaringan total Bencana/bencana alam Aksi terorisme Direncanakan Perubahan system Pada saat merencanakan

untuk melakukan pengembangan sistem, operasi perawatan sistem

Menambah/memindahkan server

Menambah/memindahkan node pada cluster Menambah/memindahkan disk drive Merubah konfigurasi parameter Upgrade/patching s/w

(26)

2.4 Jenis-jenis High Availability Recovery

Oracle database memiliki kapabilitas penuh untuk melindungi dari semua penyebab downtime-nya sebuah sistem, baik yang direncanakan maupun tidak direncanakan. Feature-feature yang tersedia pada oracle untuk recovery antara lain:

1. Oracle Real Application Clusters 2. Oracle Data Guard

3. Oracle Streams

4. Oracle Flashback Technology 5. Automatic Storage Management 6. Recovery Manager

7. Flash Recovery Area 8. Fast-Start Fault Recovery

Tabel 2.2 Perbandingan jenis-jenis recovery

Tipe Kapabilitas dan feature database Keuntungan Tidak direncanakan

Kerusakan komputer Oracle Database dengan RAC Oracle Database dengan Data Guard Oracle Database dengan Streams Fast-Start Fault Recovery

Recovery otomatis node dan instance Fast Start Failover dan fast connection failover

Replikasi database secara online Tunable dan predictable cache recovery Kerusakan storsge/media

penyimpanan

Automatic Storage Management

Recovery Manager dengan Flash Recovery Area

Oracle Database dengan RAC Oracle Database dengan Data Guard

Mirroring dan online automatic balance Fully managed database recovery and managed disk-based backups

Recovery otomatis node dan instance Fast Start Failover dan fast connection failover

Kesalahan manusia Oracle Security Oracle Flashback

Oracle Database dengan Data Guard Log Miner

Membatasi akses sebagai pencegahan Mengembalikan data yang hilang

Fast Start Failover dan fast connection failover

(27)

Tabel 2.2 Perbandingan jenis-jenis recovery (lanjutan) Tipe Kapabilitas dan feature database Keuntungan Kerusakan data Oracle database dengan Data Guard

Oracle database dengan streams Recovery Manager

Fast Start Failover dan fast connection failover

Replikasi database secara online

Fully managed database recovery and integration with tape management vendors Direncanakan

Perubahan Data Oracle database dengan Data Guard Oracle database dengan streams

Fast Start Failover dan fast connection failover

Replikasi database secara online Perubahan system Automatic Storage Management

Oracle Database dengan RAC Oracle Database dengan Data Guard Oracle Database dengan Streams

Mirroring dan online automatic balance Recovery otomatis node dan instance Fast Start Failover dan fast connection failover

Replikasi database secara online

Dari tabel 2.2 terlihat bahwa feature dari oracle yang mendominasi adalah

Oracle RAC dan Oracle Data Guard dalam melakukan perlindungan terhadap

kerusakan/kehilangan pada sistem. RAC memberikan beberapa keuntungan :

1. Kemampuan untuk memperbaiki secara cepat dari kerusakan komputer dan

instance.

2. Cepat dan otomatis dalam melakukan relokasi dan failover.

3. Kemampuan untuk melakukan load balancing

4. Fleksibel untuk meningkatkan kemampuan dengan menambah perangkat tanpa melakukan downtime atau perubahan pada aplikasi.

Data Guard memberikan beberapa keuntungan :

1. Pencegahan kerusakan, perlindungan data, dan ketersediaan data. Data guard memberikan solusi efisien untuk ketersediaan data dan pencegahan kerusakan data, mudah untuk mengatur proses switchover dan failover untuk mengganti

role antara primary database dan standby database, meminimalisir waktu downtime primary database.

(28)

2. Perlindungan data yang lengkap. Data guard dapat memastikan tidak terjadi kehilangan data, standby database menjaga dari kerusakan data dan kesalahan

user. Kerusakan storage primary database tidak berpengaruh kepada standby database.

3. Penggunaan resource system secara efisien. Standby database ter-update melalui redo data yang diterima dari primary database dan dapat digunakan untuk kegiatan lain seperti backups, reporting, dan penarikan data yang akan mengurangi penggunaan CPU dan I/O Cycles pada primary database.

4. Deteksi otomatis perbedaan data. Jika koneksi terputus antara primary dan

standby database, redo data yang di-generated pada primary database tidak

dapat dikirimkan ke standby database, saat koneksi tersambung kembali,

archived redo log files yang tidak terkirim akan dideteksi secara otomatis oleh data guard dan akan mengirimkannya ke standby database. Standby database

melakukan sinkronisasi dengan primary database tanpa campur tangan DBA. 5. Perubahan role otomatis. Saat fungsi fast-start failover di aktifkan, dataguard

broker secara otomatis melakukan failover untuk melakukan sinkronisasi standby database saat terjadi kerusakan pada primary database tanpa campur

(29)

Tabel 2.3 Solusi Oracle High availability untuk downtime tidak direncanakan dengan menggunakan RAC dan Data Guard

Tipe Solusi Keuntungan Waktu perbaikan Kerusakan komputer RAC Perbaikan kerusakan

node dan instance secara otomatis

Tidak ada downtime Data Guard Fast start failover dan

fast connection failover

Detik – 5 menit Kerusakan storage Data Guard Fast start failover dan

fast connection failover

Detik – 5 menit RAC dengan ASM Mirroring dan balance

data

Tidak ada downtime Kesalahan manusia Data Guard Fast start failover dan

fast connection failover

Detik – 5 menit Data corrupt Data Guard Validasi otomatis block

redo sebelum diapply, memindahkan ke standby database

Detik – 5 menit

Kerusakan lokasi Data Guard Fast start failover dan fast connection failover

Detik – 5 menit

Tabel 2.4 Solusi Oracle High availability untuk downtime direncanakan dengan menggunakan RAC dan Data Guard

Tipe Solusi Waktu perbaikan Upgrade sistem dan

perangkat

RAC Tidak ada downtime OS upgrade RAC Tidak ada downtime Patching RAC Tidak ada downtime

Data Guard Detik – menit CRS upgrades RAC Tidak ada downtime Upgrade sistem dan

cluster

Data Guard Detik – menit

2.5 Maximum Availability Architecture dengan RAC dan Data Guard

MAA (Maximum Availability Architecture) mengkombinasikan

scalability/skalabilitas dan availability/ketersediaan RAC dengan kemampuan

perlindungan data dari Data Guard. MAA menyediakan arsitektur paling menyeluruh untuk mengurangi downtime yang direncanakan serta menjaga, mendeteksi, dan memperbaiki dari downtime yang tidak direncanakan.

(30)

Tabel 2.5 Waktu downtime yang diperlukan untuk kerusakan tidak direncanakan

Tipe RAC Data Guard MAA

Kerusakan komputer Tidak ada downtime Detik – 5 menit Tidak ada downtime Kerusakan storage Tidak ada downtime Tidak ada downtime Tidak ada downtime Kerusakan data Hitungan jam Detik – 5 menit Detik – 5 menit Kerusakan lokasi Jam – Hari Detik – 5 menit Detik – 5 menit

Tabel 2.6 Waktu downtime yang diperlukan untuk kerusakan direncanakan

Tipe RAC Data Guard MAA

Perubahan sistem Tidak ada downtime Tidak ada downtime Tidak ada downtime Upgrade sistem Tidak ada downtime Detik – 5 menit Tidak ada downtime Upgrade cluster Menit – jam Detik – 5 menit Detik – 5 menit Migrasi storage Tidak ada downtime Tidak ada downtime Tidak ada downtime Patching database Tidak ada downtime Detik – 5 menit Tidak ada downtime Perubahan data Tidak ada downtime Tidak ada downtime Tidak ada downtime

2.6 Arsitektur Oracle

Pada Oracle server memiliki 2 komponen penting yaitu Database dan Instance. Database adalah kumpulan file (physical file) untuk menyimpan data

yang saling berelasi. Instance adalah proses yang mengatur jalannya database (engine), instance mengatur penggunaan memory dan background process yang digunakan untuk mengakses data dari physical database files.

Gambar 2.2 Arsitektur Database Oracle [Referensi:Oracle 10g Online Documentation,2006]

(31)

2.7 Struktur Database Oracle

Oracle memiliki dua buah struktur yang merupakan bagian dari arsitektur oracle, yaitu:

a. Struktur logikal, komponen yang digunakan untuk mengalokasikan space pada disk (tablespace).

b. Struktur physical, komponen yang digunakan untuk mengatur fisik dari

database file.

2.7.1 Struktur Logical

a. Tablespace, digunakan untuk merelasikan dan menyatukan objek database menjadi satu kesatuan.

b. Segment adalah kumpulan dari satu atau beberapa extents c. Extents adalah block data yang saling berdekatan

d. Blocks adalah bagian terkecil dari storage (i.e : windows=> 4kb)

Gambar 2.3 Struktur logical oracle

(32)

2.7.2 Struktur Physical

a. Datafile, digunakan untuk menyimpan data dari object database (mis : table,

index, dll)

b. Redo log files, digunakan untuk menyimpan semua perubahan data yang dibutuhkan pada proses recovery (memperbaiki perubahan2 yang belum ditulis pada datafile)

c. Control file, berisi informasi berupa konfigurasi, lokasi data redo log files, datafile.

2.8 Struktur Instance

Oracle Instance terdiri dari Memory dan Background process. Oracle

menggunakan shared memory untuk pengoprasian database server, yang dibagi dalam struktur memory yang disebut sebagai SGA (System Global Area/Shared

Global Area) dan PGA (Program Global Area/Private Global Area).

SGA (System Global Area/Shared Global Area) adalah area berupa shared memory yang digunakan untuk untuk menyimpan data atau konfigurasi

yang mengendalikan system. Bila sebuah oracle instance di-startup, maka system melakukan alokasi memory untuk SGA dan dikelola sampai instance tersebut tidak dibutuhkan lagi (Dalam keadaan shutdown), PGA terdiri dari :

a. Database Buffer Cache, memory yg dialokasikan untuk menyimpan data sementara dari datafile atau data yang baru tetapi belum melalui commit.

Buffer cache memilik 3 tipe, yaitu :

(33)

Free buffers : Buffer yang kosong dan tidak ada block data didalamnya.

Ketika oracle membaca data dari disk(datafile) maka free buffer akan menyimpan data tersebut sehingga akan berubah menjadi dirty buffer

Pinned buffers : Block data yang ada dalam buffers sedang mengalami

proses perubahan

b. Redo Log Buffer, berisi informasi yang mencatat semua perubahan yang terjadi pada database secara otomatis dan cepat. Data ini di catat ke redo

log secepat mungkin, karena akan digunakan untuk tujuan recovery.

c. Shared Pool, menyimpan informasi seperti data dictionary, sql structure,

library dan lainnya. Informasi yang disimpan antara lain :

1. User information seperti privilege (hak/ijin akses)

2. Integrity constraints

3. Nama table, view, tipe data

4. Informasi tentang alokasi memory yang digunakan untuk schema object

d. Library cache, terdiri dari shared SQL areas, privates SQL areas, PL/SQL

procedures, package dan control structures seperti locks dan library cache handles.

Shared SQL areas, berisi informasi untuk mengeksekusi instruksi SQL

dan instruksi ini disimpan, dan bila terjadi query yang sama maka system mengalokasikan request tersebut ke lokasi memory yang sama.

e. Data Dictonary Cahce, berisi koleksi struktur table, view, dan referensi ke

(34)

f. Large Pool adalah memory yang digunakan untuk menyediakan alokasi

memory yang besar untuk spesifik operasi database seperti backup dan restore.

g. Java Pool adalah memory yang dialokasikan untuk proses yang berbasis java.

PGA (Program Global Area/Private Global Area) adalah area pada memory yang berisi data untuk setiap proses yang terjadi pada database dan area

ini tidak dipakai bersama(non-share) yang terdiri dari :

a. Stack Space, memory yg dialokasikan untuk menyimpan data dari variable dan arrays

b. Session Information, memory yg dialokasikan untuk menyimpan data tentang session yang terjadi pada database seperti user koneksi.

c. Sort Area, memory yg dialokasikan untuk menyimpan data dari proses

sorting. Perintah SQL yang termasuk proses sort adalah : CREATE

INDEX, DISTINCT, ORDER BY, GROUP BY, UNION, INTERSACT, dan MINUS.

SCA (Software Code Area) adalah area pada memory yang dialokasikan

untuk menyimpan perintah atau code yang sedang dijalankan. Memory ini biasanya digunakan oleh oracle tools dan utilities seperti : SQL*Forms, SQL*Plus, etc.

(35)

2.9 Proses Background

a. PMON (Process Monitor)

1. Melakukan rollback untuk transaksi yang dibatalkan 2. Membersihkan proses yang berakhir tidak normal

3. Mengaktifkan kembali shared_server dan dispatcher(Proses yang mengatur penjadwalan eksekusi proses oracle) bila mengalami

error.

4. Membebaskan resource SGA yang dialokasikan pada process yang gagal.

b. SMON (System Monitor) berfungsi menjalankan instance recovery secara otomatis, mengatur memory segment dan menggabungkan free

area memory yang berdekatan (garbage collector)

c. LGWR (Log Writer) berfungsi menulis semua data block pada buffer ke log file pada saat :

1. Terjadi proses commit 2. Terjadi Checkpoint

3. Setiap 3 detik 4. Log buffer penuh

d. CKPT (Check Point) berfungsi menjaga konsistensi data dengan membuat check point, sehingga bila terjadi crash, maka kondisi

database dapat di kembalikan ke kondisi pada saat check point terakhir

di buat. Proses checkpoint adalah menulis semua perubahan (updating) yang terjadi antara begin transaction dan commit.

(36)

e. DBWR(Database Writer) berfungsi menulis semua data block pada buffer cache ke datafile pada saat terjadi commit

2.10 Oracle Data Guard

Oracle Data Guard memastikan ketersediaan data, perlindungan data, dan

penyelamatan data untuk database perusahaan. Data Guard menyediakan suatu pelayanan menyeluruh untuk membuat, memelihara, mengatur, dan memonitor satu atau lebih standby database agar production database dapat terhindar dari kerusakan dan kehilangan data. Data Guard memelihara standby database sebagai duplikasi dari transaksi pada production database. Disaat database produksi tidak tersedia oleh sebab yang direncakan maupun tidak direncanakan,

data guard dapat memindahkan/merubah standby database menjadi production database, meminimalisasi waktu downtime.

2.11 Standby Database

Standby database menjamin bahwa data yang dimiliki tidak akan hilang

ketika pada data terjadi kegagalan di database oracle. Ketika primary database mengalami gangguan, maka koneksi aplikasi dapat dipindahkan ke standy

database yang sudah disiapkan. Selama primary database dalam perbaikan, maka

semua pemakai aplikasi masih dapat melakukan transaksi secara normal menggunakan standby database tersebut yang sudah menjadi primary database yang baru. Jika primary database yang lama sudah dapat diaktifkan kembali,

(37)

maka koneksi dari pemakai aplikasi dapat dipindahkan kembali ke primary

database yang lama.

Pada teknologi ORAC apabila terjadi kegagalan pada salah satu instance, maka instance yang lain dapat segera langsung menggantikannya tanpa terjadi gangguan pada semua pemakai aplikasi. Untuk standby database tetap dibutuhkan beberapa penanganan khusus untuk mengaktifkan standby database menjadi

primary database yang baru sehingga seluruh pemakai aplikasi dapat melakukan

transaksi pada primary database yang baru tersebut.

Pada tahap pemindahan diperlukan waktu beberapa detik untuk mengaktifkan standby database menjadi primary database. Proses perpindahan dari primary database ke standby database disebut sebagai SWITCH OVER. Sedangkan jika dari standby database ke primary database disebut sebagai SWITCH BACK.

2.11.1 Physical Standby Database

Physical standby database bekerja dengan cara melakukan sinkronisasi

redo yang di-generated oleh primary database melalui media recovery. Sedangkan redo dikirimkan melalui protokol oracle net.

Dengan menggunakan media recovery tersebut dapat dipastikan bahwa

physical standby akan melakukan proses penyalinan redo data secara block-per-block dari primary database ke standby database. Sehingga setiap transaksi yang

dilakukan pada primary database akan selalu tercatat pada standby database dan akan mencegah hilangnya data.

(38)

2.11.2 Logical Standby Database

Pada konfigurasi logical standby database, redo yang di-generated oleh

primary database akan dikonversi menjadi sebuah transaksi SQL dan akan

dijalankan pada standby database. Dengan logical standby database pemakai dapat mengakses standby database secara read-only. Hal ini sangat bermanfaat apabila ingin melakukan proses reporting dilakukan pada standby database secara terpisah.

Tetapi, tentu saja ada beberapa keterbatasan yang dimiliki oleh oracle, yaitu adanya beberapa tipe data yang tidak didukung oleh logical standby

database. Jika anda mempunyai sebuah table yang mempunyai tipe data yang

tidak didukung oleh logical standby database, maka sebaiknya Anda harus menggunakan konfigurasi physical standby database. Untuk itu periksa kembali tipe-tipe data yang dapat didukung oleh logical standby database.

SQL> select owner, table_name 2 from dba_logstdby_unsuported 3 group by owner, table_name no rows selected

SQL>

Jika tidak ditemukan beberapa table dari query diatas, berarti Anda dapat membuat logical standby database.

(39)

Gambar 2.4 Konfigurasi Tipikal Data Guard [Referensi:Oracle 10g Online Documentation,2006]

2.12 Data Guard Services

Cara kerja Data Guard dalam mengatur transmisi redo data, meng-aplikasikan redo data , dan melakukan perubahan ke database:

1. Redo Transport Services

Mengatur transfer redo data dari database produksi ke satu atau lebih standby database sebagai archive log.

2. Log Apply Services

Meng-aplikasikan redo data pada standby database untuk mengatur sinkronisasi transaksi dengan primary database.

3. Role Transitions

Merubah role/aturan sebuah database dari standby database mejadi

primary database, atau dari primary database menjadi standby database menggunakan operasi dari switchover maupun failover.

(40)

2.12.1 Redo Transport Services

Redo Transport Services mengatur secara otomatis proses transfer redo data dari database produksi ke standby database dengan langkah-langkah sebagai

berikut :

1. Mentransmisikan redo data dari primary database ke standby

database di dalam konfigurasi.

2. Mengatur proses pada archived redo log file saat terjadi kegagalan pada jaringan.

3. Mendeteksi secara otomatis archived redo log files yang hilang maupun rusak pada standby database dan menggantikan secara otomatis archived redo log files dari primary database atau dari

standby database lainnya.

2.12.2 Log Apply Services

Redo data di transmisikan/duplikasi dari primary database dengan cara

menulis di standby database kedalam standby redo log files, kemudian diarsipkan/disimpan kedalam archived redo log files. Log apply services secara otomatis menjaga konsistensi redo data pada standby database dengan redo data pada primary database, dan juga mengijinkan pembacaan data dengan mode

(41)

Gambar 2.5 Update otomatis pada physical standby database [Referensi:Oracle 10g Online Documentation,2006]

2.12.3 Role Transitions

Sebuah database oracle beroperasi pada satu dari dua role yaitu primary atau standby. Dengan menggunakan data guard , kita dapat merubah role tersebut dengan menggunakan operasi switchover ataupun failover.

Switchover dipastikan tidak terdapat data yang hilang. Ini digunakan

untuk penggantian role yang direncanakan untuk proses pemeliharaan pada

primary database. Failover terjadi saat primary database tidak tersedia, failover

disebabkan terjadi kerusakan pada primary database dan resiko kehilangan data tetaplah ada dan seorang DBA dapat mengatur data guard untuk memastikan tidak terjadi kehilangan data.

(42)

2.13 Keuntungan/Kelebihan Data Guard

1. Pencegahan kerusakan, perlindungan data, dan ketersediaan data.

Data guard memberikan solusi efisien untuk ketersediaan data dan

pencegahan kerusakan data, mudah untuk mengatur proses

switchover dan failover untuk mengganti role antara primary database dan standby database, meminimalisir waktu downtime primary database.

2. Perlindungan data yang lengkap. Data guard dapat memastikan tidak terjadi kehilangan data, standby database menjaga dari kerusakan data dan kesalahan user. Kerusakan storage primary database tidak berpengaruh kepada standby database.

3. Penggunaan resource system secara efisien. Standby database ter-update melalui redo data yang diterima dari primary database dan

dapat digunakan untuk kegiatan lain seperti backups, reporting, dan penarikan data yang akan mengurangi penggunaan CPU dan I/O

Cycles pada primary database.

4. Deteksi otomatis perbedaan data. Jika koneksi terputus antara

primary dan standby database, redo data yang di-generated pada primary database tidak dapat dikirimkan ke standby database, saat

koneksi tersambung kembali, archived redo log files yang tidak terkirim akan dideteksi secara otomatis oleh data guard dan akan mengirimkannya ke standby database. Standby database melakukan sinkronisasi dengan primary database tanpa campur tangan DBA.

(43)

5. Perubahan role otomatis. Saat fungsi fast-start failover di aktifkan, dataguard broker secara otomatis melakukan failover untuk

melakukan sinkronisasi standby database saat terjadi kerusakan pada

primary database tanpa campur tangan dari DBA.

2.14 Oracle Real Application Clusters

Oracle Real Application Clusters (RAC) merupakan suatu teknologi clustering database Oracle ke dalam suatu shared storage system device dan

dapat digunakan bersama-sama menggunakan database oracle oleh beberapa komputer / server secara simultan. Teknologi ini memungkinkan suatu pengelolaan database yang terpusat dan terstruktur dengan rapi, sehingga akan sangat memudahkan seorang DBA dalam melakukan tugas-tugasnya. Konsep yang diketengahkan dari pemodelan Clustering ini, juga memungkinkan adanya

handsover yang cepat dan otomatis apabila terjadi kegagalan sistem atau failover

dari server satu ke server lainnya. Fungsi lainnya adalah dapat berfungsi sebagai

load balancer dari penggunaan database secara bersama-sama dalam sebuah

sistem yang komplek dan besar. Selain itu dari sisi budgeting IT, tidak diperlukan

upgrade system hardware secara keseluruhan apabila database yang ditangani

sudah sangat besar, yaitu dengan cara menambahkan node server baru tanpa mengganggu aktivitas database yang sedang berjalan, sehingga dari sisi IT

(44)

2.15 Integrated Clusterware Management

Oracle RAC memberikan solusi manajemen clusterware yang terintegrasi secara lengkap pada semua platform dimana Oracle Database berjalan. Kegunaan

clusterware ini termasuk mekanisme untuk konektifitas cluster, pemesanan dan

penguncian, kontrol cluster dan recovery, dan workload management.

Gambar 2.6 Manajemen clusterware terintegrasi pada RAC [Referensi:Oracle 10g Online Documentation,2006]

Integrated clusterware management in Oracle RAC menawarkan

kelebihan-kelebihan sebagai berikut:

1. Berbiaya rendah, tidak ada tambahan biaya untuk RAC. 2. Dukungan vendor tunggal

3. Kemudahan dalam instalasi, konfigurasi, dan pemeliharaan dengan

menggunakan Oracle Database Management tools. 4. Memiliki fungsi yang konsisten terhadap semua platform.

(45)

2.16 Single System Image Management

Oracle Enterpise Manager 10g telah menjadi sebuah sistem yang

mendukung single system image management dari database cluster. Halaman

cluster database dari Enterprise Manager memperlihatkan kesatuan monitoring

dari beberapa node instance.

Dari halaman cluster database kita dapat :

1. Melihat status keseluruhan sistem, misal jumlah nodes pada cluster

database dan status terakhir setiap node.

2. Melihat alert/tanda peringatan semua instance.

3. Memonitor performance seluruh instance dan membandingkan satu sama lain.

4. Memonitor statistik cache cluster (misal: global buffer gets).

5. Melakukan operasi cluster database termasuk melakukan operasi

backup dan recovery, menghidupkan dan mematikan instance.

6. Memonitor perangkat cluster dan platform sistem operasi, hal ini sangat berguna saat cluster digunakan pada banyak database.

(46)

Gambar 2.7 Single system image Cluster Database untuk Oracle RAC

[Referensi:Oracle 10g Online Documentation,2006]

2.17 Automatic Workload Management

Dengan Oracle database 10g, application workloads dapat didefinisikan sebagai service sehingga dapat di atur dan dikontrol secara tersendiri. DBA mengatur sumber daya proses yang dialokasikan untuk setiap service selama dalam operasi normal dan dalam kondisi tidak normal/terjadi kegagalan. Pengukuran performa di-tracking oleh service dan diset secara otomatis untuk menghasilkan alert/pesan kesalahan. Alokasi sumber daya CPU diatur untuk

service menggunakan Resource Manager. Oracle tools dan fasilitas seperti job schedulel, parallel query juga menggunakan service untuk mengatur workloads

mereka. Dengan oracle 10g, alokasi sumber daya proses ke service dapat dilakukan secara otomatis. Setiap instance dari Oracle RAC dapat dialokasikan untuk proses servis tunggal maupun banyak servis saat diperlukan.

(47)

2.18 Workload Monitoring

Oracle Automatic Workload Repository mengatur performa untuk RAC

dan instance database tunggal. Respon time, penggunaan CPU, dan pengukuran lain dikumpulkan secara otomatis oleh service.

2.19 Fast Connection Fail-Over

Oracle RAC mendeteksi ketika instances mati dan ketika hidup kembali, sistem pendeteksi mengirimkan sinyal UP dan DOWN kepada aplikasi perantara sehingga prosedur recovery otomatis dapat dijalankan. Hal ini lebih efisien dibandingkan menggunakan pendeteksian melalui jaringan (seperti TCP/IP

timeouts). Ketika terjadi kegagalan atau kerusakan, transaksi yang dilakukan oleh

aplikasi akan dihentikan dan transaksi akan di rolled back ke kondisi awal sebelum terjadi transaksi, kemudian aplikasi akan mencoba untuk meminta layanan service kembali. Sinyal UP membuka kembali koneksi dan melakukan

(48)

BAB III

ANALISA KEBUTUHAN & PERANCANGAN SISTEM DRP DENGAN TEKNOLOGI RAC DAN DATA GUARD

Pada bab ini akan dijelaskan mengenai analisa kebutuhan dan perancangan sistem DRP yang High Availability beserta konfigurasi yang diperlukan dalam pembuatan RAC sebagai primary database dan Data Guard sebagai standby

database.

3.1 Analisa Kebutuhan

1. User General Requirement

Kebutuhan yang ditetapkan oleh user adalah sebuah sistem database yang memiliki karakteristik availability dimana suatu aplikasi, layanan, atau fungsi dapat tersedia pada saat user membutuhkannya. Dimana sistem tersebut harus memiliki kemampuan-kemapuan untuk melakukan :

1. Kecepatan deteksi kesalahan/kegagalan dari suatu sistem.

2. Perbaikan yang cepat, dengan downtime maksimal yang telah ditetapkan

3. Operasi perbaikan yang otomatis. 4. Melindungi dari kehilangan data. 2. User Downtime Requirement

Kebutuhan yang ditetapkan oleh user adalah sebuah sistem database yang dapat memenuhi kriteria maksimal downtime yang telah ditetapkan dengan mempertimbangkan penyebab/alasan dari downtime yang direncanakan maupun

(49)

tidak direncanakan.

Tabel 3.1 Penyebab dan maksimal downtime yang ditetapkan user

Kategori Tipe Deskripsi Contoh Max

Downtime Tidak

direncanakan

Kerusakan komputer/server

Pada saat server database mengalami kerusakan sehingga database tidak tersedia dan tidak dapat diakses

Kerusakan database Kerusakan OS Kerusakan dari oracle instance

Kerusakan dari kartu jaringan

< 5 detik

Kerusakan media penyimpanan data

Pada saat media penyimpanan dari data mengalami kerusakan

sehingga data tidak dapat diakses

Kerusakan disk drive Kerusakan disk controller Kerusakan storage < 5 menit Kesalahan manusia Pada saat melakukan tindakan illegal baik disengaja maupun tidak yang menyebabkan kerusakan/kehilan gan data Menghapus objek database Kekeliruan merubah data Penghilangan data < 5 menit

Kerusakan data Pada saat h/w maupun s/w menyebabkan data tidak dapat diakses dan ditulis oleh database

OS atau driver media penyimpanan, disk controller atau kerusakan volume manager menyebabkan disk tidak dapat dibaca dan ditulis.

< 5 menit

Kerusakan/kehanc uran lokasi

Pada saat lokasi server database mengalami kerusakan/kehancu ran besar Kerusakan jaringan total Bencana/bencana alam Aksi terorisme < 5 menit

Direncanakan Perubahan system Pada saat merencanakan untuk melakukan pengembangan sistem, operasi perawatan sistem Menambah/memindah kan server Menambah/memindah kan node pada cluster Menambah/memindah kan disk drive Merubah konfigurasi parameter

Upgrade/patching s/w

< 5 menit

(50)

yang dapat digunakan adalah dengan mengkombinasikan teknologi RAC dengan teknologi Data Guard.

Tabel 3.2 Solusi Oracle High availability untuk downtime tidak direncanakan dengan menggunakan RAC dan Data Guard

Tipe Solusi Keuntungan Waktu perbaikan

Kerusakan komputer RAC Perbaikan kerusakan node dan instance secara otomatis

Tidak ada downtime

Data Guard Fast start failover dan fast connection failover

Detik – 5 menit

Kerusakan storage Data Guard Fast start failover dan fast connection failover

Detik – 5 menit

RAC dengan ASM Mirroring dan balance data

Tidak ada downtime Kesalahan manusia Data Guard Fast start failover dan

fast connection failover

Detik – 5 menit

Data corrupt Data Guard Validasi otomatis block redo sebelum diapply,

memindahkan ke standby database

Detik – 5 menit

Kerusakan lokasi Data Guard Fast start failover dan fast connection failover

Detik – 5 menit

Tabel 3.3 Solusi Oracle High availability untuk downtime direncanakan dengan menggunakan RAC dan Data Guard

Tipe Solusi Waktu perbaikan

Upgrade sistem dan perangkat

RAC Tidak ada downtime OS upgrade RAC Tidak ada downtime Patching RAC Tidak ada downtime

Data Guard Detik – menit CRS upgrades RAC Tidak ada downtime Upgrade sistem dan

cluster

Data Guard Detik – menit

(51)

availability/ketersediaan RAC dengan kemampuan perlindungan data dari Data Guard, dapat menyediakan arsitektur paling menyeluruh untuk mengurangi downtime yang direncanakan serta menjaga, mendeteksi, dan memperbaiki dari downtime yang tidak direncanakan.

RAC memberikan beberapa keuntungan :

1. Kemampuan untuk memperbaiki secara cepat dari kerusakan komputer dan

instance.

2. Cepat dan otomatis dalam melakukan relokasi dan failover.

3. Kemampuan untuk melakukan load balancing

4. Fleksibel untuk meningkatkan kemampuan dengan menambah perangkat tanpa melakukan downtime atau perubahan pada aplikasi.

Data Guard memberikan beberapa keuntungan :

1. Pencegahan kerusakan, perlindungan data, dan ketersediaan data. Data guard memberikan solusi efisien untuk ketersediaan data dan pencegahan kerusakan data, mudah untuk mengatur proses switchover dan failover untuk mengganti

role antara primary database dan standby database, meminimalisir waktu downtime primary database.

2. Perlindungan data yang lengkap. Data guard dapat memastikan tidak terjadi kehilangan data, standby database menjaga dari kerusakan data dan kesalahan

user. Kerusakan storage primary database tidak berpengaruh kepada standby database.

(52)

melalui redo data yang diterima dari primary database dan dapat digunakan untuk kegiatan lain seperti backups, reporting, dan penarikan data yang akan mengurangi penggunaan CPU dan I/O Cycles pada primary database.

4. Deteksi otomatis perbedaan data. Jika koneksi terputus antara primary dan

standby database, redo data yang di-generated pada primary database tidak

dapat dikirimkan ke standby database, saat koneksi tersambung kembali,

archived redo log files yang tidak terkirim akan dideteksi secara otomatis oleh data guard dan akan mengirimkannya ke standby database. Standby database

melakukan sinkronisasi dengan primary database tanpa campur tangan DBA. 5. Perubahan role otomatis. Saat fungsi fast-start failover di aktifkan, dataguard

broker secara otomatis melakukan failover untuk melakukan sinkronisasi standby database saat terjadi kerusakan pada primary database tanpa campur

tangan dari DBA.

Tabel 3.4 Waktu downtime yang diperlukan untuk kerusakan tidak direncanakan

Tipe RAC Data Guard RAC + Data Guard Kerusakan komputer Tidak ada downtime Detik – 5 menit Tidak ada downtime Kerusakan storage Tidak ada downtime Tidak ada downtime Tidak ada downtime Kerusakan data Hitungan jam Detik – 5 menit Detik – 5 menit Kerusakan lokasi Jam – Hari Detik – 5 menit Detik – 5 menit

Tabel 3.5 Waktu downtime yang diperlukan untuk kerusakan direncanakan

Tipe RAC Data Guard RAC + Data Guard Perubahan sistem Tidak ada downtime Tidak ada downtime Tidak ada downtime Upgrade sistem Tidak ada downtime Detik – 5 menit Tidak ada downtime Upgrade cluster Menit – jam Detik – 5 menit Detik – 5 menit Migrasi storage Tidak ada downtime Tidak ada downtime Tidak ada downtime Patching database Tidak ada downtime Detik – 5 menit Tidak ada downtime Perubahan data Tidak ada downtime Tidak ada downtime Tidak ada downtime

(53)

Tabel 3.6 Analisa level aplikasi/resource

Definisi Kritis Max. Downtime Aplikasi/Resource Strategi

Essential < 5 menit Data base DBRPT RAC + Data Guard

Critical < 1 jam - -

Important < 1 hari - -

Non-critical > 1 hari - -

3.2 Perancangan arsitektur sistem dengan RAC dan Data Guard

Pada perancangan sistem ini akan dibangun dua buah node untuk arsitektur RAC-nya dan menggunakan satu buah server sebagai physical standby database.

(54)

A. SPESIFIKASI HARDWARE

Spesifikasinya sebagai berikut : IBM p5 510 Express – 3 unit

Processor : 2-way IBM 64 bit POWER 5+/1.9GHz/1.9MB L2/36MB L3 Memory : 8GB DDR2 SDRAM 528MHz

Internal Storage : 2x 146GB 15K rpm Ultra320 SCSI HDD

Storage Contr : Dual channel Ultra320 SCSI controller with RAID daughter card Network Cont : Dual port gigabit Ethernet

B. SPESIFIKASI SOFTWARE

Oracle Database 10g Release 2 Edisi : Enterprise Edition Base Release : 10.2.0.1 Patch Installed : 10.2.0.4

Platform : Linux Redhat Enterprise Advanced Server 4 Feature : Oracle Data Guard / Standby Database

(55)

C. KONFIGURASI DISK

Konfigurasi Disk minimal yang harus disediakan untuk implementasi RAC yang bisa di shared ke semua server yang menjadi member RAC adalah sebagai berikut

Kegunaan Jumlah Ukuran Nama Partisi

(opsional) Oracle Clusterware Clusterware Engine (tidak di share ) 1 untuk tiap server 10000m /oracle/crs Cluster Registry 2 100m ora_ocr_raw[n]_100m Voting Disk 3 20m ora_vote_raw[n]_20m

Oracle Database RDBMS Engine (tidak di share ) 1 untuk tiap server 10000 /oracle/rdbms SYSTEM tablespace: 1 500m [dbname]_system_raw_500m SYSAUX tablespace 1 300 + (jumlah instance * 250) [dbname]_sysaux_raw_800m UNDOTBSn tablespace [Jumlah Instance] 500m [dbname]_undotbs[n]_raw_5 00m

TEMP tablespace 1 250m [dbname]_temp_raw_250m

EXAMPLE tablespace

1

160m [dbname]_example_raw_160 m

USERS tablespace 1 120m [dbname]_users_raw_120m

online redo log files 2 * number of instances 120m [dbname]_redo[n]_[m]_raw_ 120m control files 2 110m [dbname]_control[n]_raw_11 0m Server parameter file 1 5m [dbname]_spfile_raw_5m Password file 1 5m [dbname]_pwdfile_raw_5m

(56)

Keadaan darurat :

Keadaan darurat adalah situasi/kondisi di luar normal sebagai akibat adanya peristiwa-peristiwa yang secara langsung atau tidak langsung mempengaruhi pelaksanaan tugas perusahaan dan terjadi di luar kekuasaan dan kemampuan perusahaan untuk mengatasinya sehingga satuan kerja operasional tidak dapat melaksanakan tugasnya di tempat yang semestinya selama jangka waktu yang tidak tertentu. Peristiwa-peristiwa tersebut meliputi antara lain: bencana alam, kebakaran, huru-hara, gangguan jaringan komunikasi dan/atau peraturan yang dikeluarkan pemerintah. Dalam keadaan kegiatan operasional tidak dapat dilakukan di primary-site, setelah dinyatakan dalam kondisi darurat sebagaimana diatur dalam Sistem Pemulihan Teknologi Informasi Dalam Keadaan Darurat Perusahaan, kegiatan operasional dialihkan ke DRC-Site.

Keadaan darurat digolongkan atas:

1. Keadaan Darurat I ( Sistem Komputer )

Pada kondisi darurat seperti ini diasumsikan salah satu node dari RAC mengalami kerusakan/down sehingga kegiatan operasional akan tetap dilaksanakan oleh user dengan menggunakan node lainnya yang tidak mengalami kerusakan. Sementara akses ke server aplikasi dan server database masih menggunakan Primary Site.

(57)

Gambar 3.2 Kondisi keadaan darurat I

2. Keadaan Darurat II ( Sistem Komputer )

Pada kondisi darurat ini diasumsikan PC Client, Server Aplikasi dan Server Database yang ada di lingkungan Primary site tidak dapat diakses/digunakan. Sehingga kegiatan operasional akan dilaksanakan oleh user dengan menggunakan backup PC Client yang telah disiapkan di DRC-Site. Dari sisi sistem aplikasi komputer yang ada akan dilakukan proses switch over/failover untuk memindahkan bisnis operasional dari primary site ke backup site.

(58)
(59)

BAB IV

IMPLEMENTASI DAN PENGUJIAN

Pada bab ini penulis akan melakukan implementasi dan pengujian mengenai Disaster Recovery System yang dijalankan dengan teknologi RAC dan

Data Guard menggunakan standby database server.

4.1 Instalasi Oracle RAC

Langkah-langkah :

1. Instalasi dan konfigurasi linux/unix

Pada tahap ini dilakukan instalasi paket-paket yang diperlukan untuk instalasi oracle serta pembuatan mountpoint yang diperlukan oleh oracle.

2. Konfigurasi linux untuk oracle

Pada tahap ini dilakukan pembuatan user dan group untuk oracle, membuat directory untuk oracle, melakukan konfigurasi parameter kernel, melakukan setting shell limits dan profile untuk user oracle.

3. Mempersiapkan Shared Disk

Pada tahap ini dilakukan pembuatan partisi untuk clusterware dan ASM

4. Instalasi Oracle Clusterware (CRS)

Pada tahap ini dilakukan instalasi CRS pada setiap node RAC, agar setiap node tersebut dapat menjadi sebuah SID database.

Gambar

Gambar 2.1  Skema DRP untuk perancangan High Availability  [Referensi:Oracle 10g Online Documentation,2006]
Tabel 2.1 Penyebab downtime
Tabel 2.2  Perbandingan jenis-jenis recovery
Tabel 2.2  Perbandingan jenis-jenis recovery (lanjutan)
+7

Referensi

Dokumen terkait

Menurut Tjiptono (2001: 95) produk merupakan segala sesuatu yang di tawarkan produsen untuk diperhatikan, diminta, dicari, dibeli, digunakan atau dikonsumsi pasar sebagai

Camtasia Studio 8 lebih banyak digunakan untuk editing video, sedangkan Camtasia recorder digunakan untuk proses merekam aktivitas yang ada dalam desktop komputer.. Gambar

d) Pada transaksi penerimaan kas, dokumen yang digunakan telah diotorisasi o leh fungsi yang berwenang. e) Adanya pencatatan tersendiri yang dilakukan oleh Bagian Unit Simpan

Mereka memiliki penamaan atas kota tersebut sebagai al-Quds, yang artinya tempat the holy one atau satu- satunya yang suci.. Itulah sebabnya Yerusalem juga diartikan sebagai

Berdasarkan hasil penelitian yang dilakukan maka dapat diambil suatu kesimpulan bahwa Secara serempak faktor kemandirian, modal, emosional dan pendidikan berpengaruh

Aktivitas guru dalam mengajar adalah segala kegiatan yang dilakukan guru selama proses pembelajaran untuk mencapai tujuan belajar setelah erupsi Merapi tahun 2010 antara

Adapun yang termasuk ke dalam data primer adalah (1) data variabel penelitian yang terdiri dari : kinerja kepala sekolah, budaya sekolah, pengetahuan tentang manajemen, iklim