Disaster recovery VPS to Google Cloud

Kali ini pembahasan cukup berbeda dari topik saya sebelumnya, saya ingin balik lagi ke habitan saya sebagai seorang DevOps.

jadi begini ceritanya, kesel ngk kalo setiap tahun di beberapa kampus server mereka mengalami down. mulai dari alasan karena servernya sudah harus di pensiunkan, bandwidh  rendah, dan meningkatnya trafik yang semualanya sedikit menjadi banyak. atau server fisik memiliki kerusakan. apalagi data-data yang dimiliki tentunya penting untuk operasional bisnis. kalo sudah begini permasalahan jadi ruwet.

ditambah lagi tren bisnis sekarang orang bermigrasi menggunakan teknologi cloud, kenapa? karena dengan menggunakan cloud computing kita tidak membutuhkan biaya untuk membangun sebuah infrastruktur karena membangun infrastuktur untuk telelkomunikasi itu sangat mahal, tapi tidak berlaku untuk orang yang memiliki banyak uang yang mementingkan keamanan data dan privasi dari data-datanya.Apalagi untuk para start-up aplikasi membangun infrastuktur bukan sebuah solusi kalo pelanggan nya hanya sedikit.

balik lagi ke topik. disaster recovery merupakan sebuah teknik  untuk mengatasi masalah kegagalan pada sebuah layanan, mulai dari bencana alam, jaringan mengalami gangguan atau pun server kena hack. karena dari setiap gangguan dari layanan tersebut dapat berakibat fatal.  mulai dari kerugian bisnis dll.

Pada kasus kali ini, saya akan melakukan disaster recovery pada domain cloudpedia.id dimana cloudpedia.id kita umpakan  sebuah perusahan yang telah berdiri lama. dan mereka harus memback up server mereka apabila terjadi kesalahan layanan dan situs tersebut dapat di akses.

 

Drass

Pada tutorial kali ini saya akan membuat sebuah replikasi server, server utama saya berada di cloudkilat.com kemudian saya ingin mereplikasi server tersebut ke Google Cloud.

Langkah pertama:

Siapkan server yang ingin di replikasi di Google Cloud.

Intance replika

Jaringan External Static IP public
Jaringan Internal default Default
OS Ubuntu 16.04
Ram 4GB

langkah-langkah membuat instance:

  1. Klik pada  menu Compute engine untuk membuat instance, kemudian pilih  Buat instance
  2. isikan form seperti di bawah ini

1

3. kemudian pesan ip public sesuai dengan ketersedian yang ada pada google cloud. karena jika ip public dinamic pada saat down server harus di konfigurasi sesuai dengan ip yang didapat.

2

Pada ip ekternal ganti menjadi pesan ip static.

3

Setelah kita mendapatkan ip addres Compute pada Google cloud akan menyala secara otomatis, opsi selanjutnya adalah mensetting firewall, tujuanya adalah membuka port pada mysql untuk masuk kejaringan VPC yang ada di google.

5

keterangan: mysql merupakan nama layanan yang ingin di bukan portnya untuk mereplikasi sebuah database yang ada di cloudpedia.id

 

6

masukan protokol yang ingin dibuka, kali ini saya ingin menggunkan port tcp:3060 port yan saya setting untuk replikasi database.

langkah selanjutnya adalah mereplikasi databse.

pada kali ini saya akan mengkonfigurasi izin yang ada pada master untuk mengizinkan remote yang ada pada server replikasi.

buka server databse:

kemudian masukan perintah :

mysql -u root -p

kemudian masukan password pada server anda.

pada mysql server masukan perintah berikut:

GRANT REPLICATION SLAVE ON *.* TO ‘user’@’server anda’ IDENTIFIED BY ‘password anda’*.* TO ‘namauser’@’ip server.’ IDENTIFIED BY ‘password; FLUSH PRIVILEGES;

kemudian ubah konfigurasi pada server master

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

 

# baris 29, ubah IP bind-address

bind-address = <ip server anda>

 

# baris 74, lepas comment

server-id = 1

 

# baris 75, lepas comment

log_bin = /var/log/mysql/mysql-bin.log

setelah itu restart server

sudo systemctl restart mysql

 

kemudian konfigurasi database slave pada google cloud.

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

 

# baris 29, ubah IP bind-address

#bind-address = <ip server anda>

 

# baris 74, lepas comment. Ganti dengan nomor lain, jangan sama dengan master

server-id = 2

 

# baris 75, lepas comment

log_bin = /var/log/mysql/mysql-bin.log

restart server mysql pada slave

sudo systemctl restart mysql

konfigurasi pada server database

CHANGE MASTER TO

MASTER_HOST='<ip server master>’,

MASTER_USER=’nama user pada saat konfigurasi repliksi”,

MASTER_PASSWORD=’password user’,

MASTER_LOG_FILE=’mysql-bin.000002′,

MASTER_LOG_POS=9951;

kemudian start mode slave pada server replikas

START SLAVE;

kemudian buka kunci pada server database master

UNLOCK TABLES;

untuk menampilkan status pada server apakah telah terbuhung masukan perintah berikut:

SHOW SLAVE STATUS \G

langkah selanjutnya adalah menginstallasi haproxy tujuanya adalah untuk membuat koneksi antara replika dan server aslinya. buat instace server pada google serperti langkah awal pembuatan server replika.

setelah upate server dan install sofware haproxy

apt-get update

apt-get install -y haproxy

kemudian setelah itu back terlebih dahulu konfigurasi original yang ada pada server,

cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak

nano cp /etc/haproxy/haproxy.cfg

masukan konfigurasi di bawah ini

frontend LOAD_BALANCER
bind *:80
default_backend WEB_SERVER_TIER

backend WEB_SERVER_TIER
balance roundrobin
server Webserver1  <alamat ip>:80 check
server Webserver2  <alamat ip>:80 check

listen stats
bind :9000
mode http
stats enable
stats hide-version
stats realm HAproxy-Statistics
stats uri /haproxy_stats
stats auth admin:password

setelah itu restart server haproxy,

sudo systemctl restart haproxy

kemudian test sever degan cara mematikan node yang ada pada cloudkilat.com

kondisi dimana server dimatikan langsung beralih ke server yang dihidupkan.

 

Sekian dulu tutorial kali ini.

semua yang ada di tutorial ini ada beberapa data yang tidak ditampilkan dengan alasan keselamatan: jikan ingin bertanya dapat menghubungin alamat email: dzakwanfalih@hotmail.com

Advertisements

2 thoughts on “Disaster recovery VPS to Google Cloud

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s