Mudahnya Membuat Website Dengan WordPress

Menyambung tulisan kemarin tentang membuat website sederhana, sekarang saya ingin menunjukkan bagaimana mudahnya membuat website dengan WordPress sebagai engine-nya. WordPress tidak lagi hanya bisa dipakai sebagai media blogging, tapi bisa juga dipakai untuk keperluan publikasi lainnya (seperti misalnya sebagai website resmi perusahaan).

Asumsi Anda sudah berlangganan hosting, tentu Anda akan diberi halaman administrator untuk mengurus hosting & domain Anda. Ada beberapa tipe halaman administrator. Salah satu contoh yang sering disediakan oleh penyedia hosting adalah halaman Cpanel. Tampilannya kira-kira seperti gambar di bawah ini. Di halaman ini ada menu Softaculous untuk membantu Anda menginstal template website & berbagai platform web. Klik saja tombol Softaculous yang ada di bagian bawah.

wp1

Di menu Softacolous Anda akan disuguhi berbagai macam pilihan platform web yang bisa diinstal. Karena tulisan ini tentang WordPress silakan klik logo WordPress yang ada. Karena WordPress cukup terkenal maka begitu Anda buka Softaculous Anda akan langsung melihat logo WordPress seperti di bawah ini.

wp2

Jika Anda tidak melihat tampilan seperti di atas, Anda bisa mencarinya di menu Blogs di sebelah kiri. Begitu Anda mendekatkan kursor ke logo WordPress, akan muncul menu Install & Demo. Klik Install untuk memulai proses instalasi WordPress.

wp3

Sebelum memulai proses instalasi, Anda akan diminta memasukkan beberapa detail informasi seperti gambar di bawah ini.

wp4

  1. Yang pertama harus Anda tentukan adalah di alamat apa Anda ingin WordPress diinstal. Default-nya adalah alamat domain utama Anda. Karena contoh ini saya ingin menempatkan contoh web ini di test.tedytirta.com maka saya harus menggantinya dari nilai default tedytirta.com.
  2. Kemudian pilihan direktori tempat WordPress akan diinstal. Misalnya Anda ingin WordPress berada domain utama anda, kosongkan saja pilihan “In Directory” tersebut. Misalnya domain Anda “dodol.com” dan anda mengisi “In Directory” dengan “blog“, maka nanti website WordPress Anda akan berada pada halaman : http://dodol.com/blog.
  3. Ketiga Anda diminta menentukan nama website Anda & deskripsinya. Pilihan ini bisa diatur ulang kemudian saat WordPress sudah bisa diakses.
  4. Keempat Anda diminta menentukan username & password untuk bisa mengatur website Anda. Anda juga diminta memasukkan alamat email user utama website WordPress Anda.
  5. Selanjutnya silakan klik tombol Install untuk memulai proses instalasi WordPress.

Proses instalasi ini cepat sekali, tidak sampai 1 menit WordPress sudah selesai diinstal. Anda akan mendapati halaman seperti ini.

wp5

Mari kita cek contoh instalasi saya tadi. Instalasi WordPress baru saya langsung bisa diakses di http://test.tedytirta.com/

wp6

Sementara itu untuk bisa login ke halaman Administrator WordPress, saya perlu mengarahkan browser saya ke alamat : http://test.tedytirta.com/wp-admin. Silakan sesuaikan dengan nama domain Anda & cukup akhiri nama domain dengan /wp-admin. Anda akan diminta login dengan username & password yang tadi diminta saat proses persiapan instalasi.

wp7

Ini adalah contoh halaman administrasi untuk mengelola website berbasis WordPress. WordPress menyebut halaman ini sebagai Dashboard.

wp8

Di tulisan berikutnya mungkin saya akan membahas apa saja hal-hal dasar yang perlu diketahui untuk mengelola WordPress melalui halaman Dashboard ini.

Membuat Website Sederhana

Minggu lalu saya dimintai saran oleh salah seorang rekan tentang bagaimana sih caranya membuat website. Rekan saya bukan orang yang sehari-hari bergelut dengan dunia IT. Dia ingin membuat sebuah website sebagai website resmi kantornya. Saya jelaskan secara sederhana, paling tidak ada 4 langkah untuk membuat website :

  1. Membeli nama domain yang diinginkan. Singkatnya nama domain adalah alamat yang diakses orang untuk membuka website kita. Contohnya www.tedytirta.com.
  2. Menyewa hosting, hosting adalah tempat di mana kita akan meletakkan website kita di internet.
  3. Menginstal program untuk menjalankan website kita.
  4. Memasukkan data & mengatur tampilan website.

Biasanya langkah pertama dapat digabung dengan langkah kedua. Rata-rata hampir semua perusahaan penyedia jasa hosting menyediakan paket sewa sekaligus beli nama domain. Kemarin saya anjurkan rekan saya untuk menyewa hosting di Qwords.com. Saya rekomendasi menggunakan Qwords, karena saya sudah beberapa kali saya menggunakan jasa Qwords.com & sejauh ini cukup puas dengan pelayanannya.

Awalnya rekan saya ingin punya domain dengan akhiran .co.id. Saya bilang mengurus domain co.id tidak semudah mengurus domain bebas seperti .com, .net, dsb. Mengurus domain co.id paling tidak memerlukan surat ijin usaha (SIUP?) dan beberapa persyaratan lainnya. Sementara mengurus domain .com sangat mudah, asal nama domainnya tersedia (belum dibeli orang lain) maka kita bisa langsung menyewanya. Biaya sewa domain .com pertahun di Qwords.com adalah Rp80.000,-.

Biaya hosting sendiri biasanya bergantung dari berapa besar kapasitas yang ditawarkan. Ada paket yang menawarkan kapasitas 100MB, 250MB, dsb. Besarnya paket hosting yang perlu disewa tentu bergantung pada seberapa besar data akan ditaruh di website. Misalnya website diprediksi akan menampilkan banyak foto dengan resolusi tinggi, tentu ini harus diperhitungkan supaya hosting cukup untuk menampung semua foto.

Lalu soal isi websitenya sendiri. Sekarang banyak jasa hosting sudah menyediakan fasilitas instalasi otomatis, Softacoulus.  Dengan bantuan Softaculous kita bisa menginstal bebagai platform dengan sangat mudah. Tersedia banyak platform yang bisa digunakan seperti WordPress, Joomla, OpenCart (website untuk membuat toko online), bahkan sampai aplikasi untuk keperluan HRD tersedia di sana.

softaculous

 

Berhubung saya bukan web developer & rekan saya juga tidak terlalu paham soal internet, saya sarankan rekan saya untuk menggunakan WordPress saja. Sekarang platform WordPress tidak hanya dipakai untuk keperluan blogging, WordPress sekarang bisa dipakai untuk membuat website kantor (untuk keperluan bisnis). WordPress relatif mudah untuk dipakai, di-configure, dan dimodifikasi untuk keperluan sebuah website bisnis. Tentu website bisnis di sini lebih ke arah sebuah web statis. Bila keperluannya hanya untuk menampilkan portfolio perusahaan, visi & misi, company profile, produk yang dijual, jasa service yang disediakan, rasanya WordPress sudah bisa mengakomodir  semuanya.

Kunci Membuat Dokumentasi Teknis Yang Baik

Kunci membuat dokumentasi yang baik adalah menganggap semua calon pembaca sebagai orang awam yang tidak tahu apa-apa. Kasarnya, anggap saja semua calon pembacanya bodoh & perlu dibimbing dengan jelas. Kunci kedua adalah memahami apa sih pertanyaan yang mungkin timbul ketika orang membaca dokumen kita. Kita harus bisa mengantisipasi munculnya pertanyaan “mengapa begini” & “mengapa begitu”. Bagaimana antisipasinya? Dengan menjelaskan latar belakang mengapa kita menuliskan sebuah statement.

Tentu kita masih perlu membatasi siapa calon pembaca dokumentasi yang kita buat. Tidak mungkin kita mengakomodasi semua orang dengan berbagai macam latar belakang pengetahuan. Ini memang bagian yang sangat “tricky” untuk menentukan siapa calon pembaca dokumentasi kita.

Misalkan saja kita akan membuat dokumentasi untuk staf di kantor tentang cara menambahkan printer pada Windows 7, lalu kita tulis dalam dokumentasi kita :

  1. Klik Windows Start menu dari pojok kiri bawah layar.
  2. Lalu klik Control Panel,
  3. Lalu klik Devices & Printers.

Sepintas terlihat sudah detil setiap langkahnya. Tapi apa yang terjadi bila user yang menggunakan dokumentasi kita belum familiar dengan Windows 7? Misalnya user akan komplain “Pak..di Control Panel tidak ada pilihan Devices & Printers“. Ternyata di Control Panel-nya Windows 7, Devices & Printers hanya keliatan bila kita pilih opsi “View by : Large Icon”.  Mungkin di komputer user yang bersangkutan opsi “View by” masih diset sebagai Category.

win7-printer

Langkah sepele yang rasanya perlu ditambahkan dalam dokumentasi untuk mengantisipasi kasus seperti itu.

Hal lain yang bisa menjadikan sebuah dokumentasi gampang dipahami adalah dengan memberikan contoh hasil yang diharapkan. Dalam dunia komputer misalnya, kita bisa menambahkan log hasil test kita sendiri atau mungkin dengan menambahkan screenshot apa yang kita lakukan. Dengan adanya contoh pembaca memiliki referensi sukses atau tidaknya dia mengikuti petunjuk yang dijelaskan dalam dokumentasi tadi. Akan lebih baik lagi jika kita juga menuliskan error apa yang kemungkinan didapatkan oleh user sewaktu mengerjakan apa yang kita tulis dalam dokumentasi kita.

Waktu saya bekerja di perusahaan Jepang, saya dapat pelajaran berharga tentang bagaimana pentingnya membuat dokumentasi yang baik. Baik dalam arti tersusun dengan sistematis, jelas sampai pada detil terkecil. Orang Jepang punya kebiasaan mencatat segala detil informasi. Tidak heran bila kita temui orang Jepang ke mana-mana mengantongi buku catatan kecil. Mereka seperti memiliki filosofi bahwa semua orang seperti robot, siapa pun yang memegang dokumentasi mereka akan bisa mengerjakan apa yang ditulis di sana.

Tips lain adalah menghindari penggunakan kalimat yang terlalu panjang. Dokumentasi yang baik tidak berarti menggunakan kalimat yang panjang dan bertele-tele. Tips ini menurut saya sifatnya universal, tidak hanya cocok untuk penulisan sebuah dokumentasi teknis. Memang tidak gampang membuat sebuah dokumentasi teknis yang bagus. Perlu extra waktu, extra tenaga & perlu kepekaan tersendiri. Kepekaan berkait juga dengan kepedulian jangan sampai pembacanya kebingungan. Mentalitas “asal saya ngerti” itulah yang menghalangi orang menghasilkan sebuah dokumentasi yang baik.

Mencoba Raspberry Pi

Raspberry Pi adalah sebuah komputer mungil komplit dengan CPU & memori. Sepintas terlihat seperti sebuah PCB biasa. Karena ukurannya yang kecil, komputer ini dijual dalam kemasan yang mirip kotak kartu nama.

20130211-151332.jpg

Sebagai perbandingan ini foto Raspberry Pi dijajarkan dengan Blackberry 9320. Cukup kecil untuk ukuran sebuah komputer mini. Harga Raspberry Pi ini adalah Rp400.000,-.

20130211-151059.jpg

Untuk sumber dayanya, Raspberry Pi menyediakan konektor micro USB. Konektor ini sama seperti yang lazim dipakai di ponsel. Sayangnya adapter power tidak disertakan dalam paket penjualan Raspberry Pi. Harga adapter USBnya Rp50,000.

20130211-162512.jpg

Berikut tampak atas dari Raspberry PI.

20130211-150612.jpg

Tampak bawah dari Raspberry ini seperti berikut ini :

20130211-150620.jpg

Bagian yang berwarna hitam itu adalah slot untuk memasukkan SD Card. Raspberry PI menggunakan SD Card sebagai pengganti harddisk.

Untuk menghubungkan keyboard & mouse, saya menggunakan 2 konektor USB yang tersedia. Raspberry Pi ini juga menyediakan 1 buah konektor LAN (Ethernet) sehingga saya bisa menyambungkannya ke switch dengan kabel UTP.

20130211-150634.jpg

Karena memiliki konektor HDMI, Raspberry ini bisa juga disambungkan ke LCD TV yang memiliki konektor HDMI.

20130211-150644.jpg

Selain konektor HDMI, Raspberry Pi jug menyediakan konektor video analog/RCA (di bagian yang berwarna kuning). Selain itu juga tersedia sebuah konektor audio 3,5 mm.

Saya juga beli casing untuk Raspberry Pi ini. Casing-nya ada yang berwarna hitam, putih, dan transparan; saya pilih yang transparan.

20130211-151345.jpg

Setelah dipasang ke dalam casing, tampilannya seperti berikut ini :

20130211-150553.jpg

Ada beberapa pilihan sistem operasi yang bisa dipasang pada Raspberry Pi ini. Untuk test awal saya pilih Raspbian. Raspbian ini pada dasarnya adalah Debian Wheezy yang sudah di-compile ulang supaya bisa bekerja dengan prosesor ARM; saya download image Raspbian dari sini.

20130211-150457.jpg

Saya perlu menggunakan perintah dd pada terminal untuk menyalin image Raspbian ke dalam SD Card.

ttirtawi@macbook-air:~$ df -h
Filesystem      Size   Used  Avail Capacity  iused   ifree %iused  Mounted on
/dev/disk0s2   112Gi  101Gi   11Gi    91% 26581510 2830858   90%   /
devfs          185Ki  185Ki    0Bi   100%      639       0  100%   /dev
map -hosts       0Bi    0Bi    0Bi   100%        0       0  100%   /net
map auto_home    0Bi    0Bi    0Bi   100%        0       0  100%   /home
/dev/disk1s1   3.7Gi  800Ki  3.7Gi     1%        0       0  100%   /Volumes/UNTITLED 1
ttirtawi@macbook-air:~$ sudo diskutil unmount /dev/disk1s1 
Password:
Volume UNTITLED 1 on disk1s1 unmounted
ttirtawi@macbook-air:~$ sudo dd bs=1m if=2012-12-16-wheezy-raspbian.img of=/dev/rdisk1
1850+0 records in
1850+0 records out
1939865600 bytes transferred in 220.246458 secs (8807704 bytes/sec)
ttirtawi@macbook-air:~$ ls -tlrh 2012-12-16-wheezy-raspbian.img 
-rw-r--r--@ 1 ttirtawi  staff   1.8G Dec 17 02:52 2012-12-16-wheezy-raspbian.img
ttirtawi@macbook-air:~$

Karena tidak punya tombol ON/OFF, begitu disambungkan dengan charger-nya Raspberry Pi ini langsung booting. Pertama kali booting akan muncul menu seperti ini :

20130211-150447.jpg

Ada beberapa pilihan yang bisa dilakukan seperti mengatur tipe keyboard, mengatur time zone, mengaktifkan SSH server, dsb. Setelah selesai proses booting bisa dilanjutkan sampai muncul tampilan desktop seperti berikut ini :

raspberry

Raspbian menggunakan LXDE sebagai desktop environment-nya. Tidak seperti Debian (atau Ubuntu) yang secara default menggunakan Gnome, Raspberry menggunakan LXDE karena LXDE relatif sangat ringan & bisa bekerja di perangkat yang minimalis. Waktu saya coba desktop-nya relatif lambat, mungkin faktor SD Card yang kurang bagus sehingga proses read/write-nya agak terhambat. Nanti saya perlu coba lagi dengan SD Card yang lebih tinggi kecepatan baca-tulisnya.

Berikut informasi hardware dari Raspberry Pi ini :

pi@raspberrypi ~ $ uname -a
Linux raspberrypi 3.2.27+ #250 PREEMPT Thu Oct 18 19:03:02 BST 2012 armv6l GNU/Linux
pi@raspberrypi ~ $ 
pi@raspberrypi ~ $ sudo lshw 
raspberrypi               
    description: Computer
    width: 32 bits
  *-core
       description: Motherboard
       physical id: 0
     *-memory
          description: System memory
          physical id: 0
          size: 438MiB
     *-cpu
          physical id: 1
          bus info: cpu@0
          size: 700MHz
          capacity: 700MHz
          capabilities: cpufreq
  *-network
       description: Ethernet interface
       physical id: 1
       logical name: eth0
       serial: b8:27:eb:45:7b:e2
       size: 100Mbit/s
       capacity: 100Mbit/s
       capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=smsc95xx driverversion=22-Aug-2005 duplex=full firmware=smsc95xx USB 2.0 Ethernet ip=192.168.1.118 link=yes multicast=yes port=MII speed=100Mbit/s
pi@raspberrypi ~ $ 

IPMP Pada Solaris 11

IPMP adalah singkatan dari IP Multi Path. Penjelasan sederhananya, IPMP menggabungkan beberapa network interface untuk mendapatkan redundansi IP. Misalnya kita punya server yang memiliki port e1000g0 & e1000g1; e1000g0 berada di system board sementara e1000g1 adalah port tambahan yang berada di PCI card. Kita bisa menggunakan 2 port tersebut untuk membuat sebuah virtual IP. Virtual IP inilah yang akan dikenal oleh dunia luar, dengan kata lain user yang ingin mengakses server ini cukup tahu virtual IP-nya.

Untuk memudahkan penamaan kita bisa mengubah nama data link masing-masing interface tersebut. Saya pernah tulis tentang fitur Solaris 11 yang bisa mengganti memisahkan interface fisik & data link di tulisan sebelumnya.

root@solaris11:~# dladm rename-link net0 onboard0
root@solaris11:~# dladm rename-link net1 pci0

Pada tulisan ini saya akan berbagi bagaimana caranya membuat IPMP interface dengan menggunakan interface onboard0pci0 tadi.

root@solaris11:~# dladm show-phys
LINK              MEDIA                STATE      SPEED  DUPLEX    DEVICE
pci0              Ethernet             unknown    0      unknown   e1000g1
net2              Ethernet             unknown    0      unknown   e1000g2
onboard0          Ethernet             unknown    0      unknown   e1000g0
net3              Ethernet             up         1000   full      e1000g3
root@solaris11:~#
root@solaris11:~# dladm show-phys -P | egrep "e1000g0|e1000g1"
pci0              e1000g1      Ethernet             -----
onboard0          e1000g0      Ethernet             -----
root@solaris11:~#

Misalkan kita ingin memiliki “virtual IP” 172.16.103.100 untuk IPMP interface tadi. Masing-masing interface yang membentuk IPMP interface juga akan memiliki IP; IP yang dipakai oleh interface onboard0 & pci0 akan dikenal sebagai test address. Dalam contoh ini interface onboard0 akan menggunakan test address 172.16.103.101 & interface pci0 akan menggunakan IP 172.16.103.102.

Test address digunakan oleh masing-masing interface untuk memastikan konektifitas server dengan dunia luar. Masing-masing interface akan menggunakan test address untuk memastikan koneksi ke target address 172.16.103.1. Target address yang paling mudah diset adalah IP gateway. Untuk memastikan konektifitas masing-masing interface akan mengirimkan paket ICMP menuju target address. ICMP ini sama dengan yang dipakai oleh perintah ping. Jadi bisa juga dikatakan masing-masing interface akan melakukan ping pada target address. Bila hasil testnya tidak mendapatkan jawaban, maka interface tersebut akan memberi tahu IPMP bahwa dirinya tidak punya koneksi ke dunia luar & harap jangan menggunakan dirinya untuk sementara waktu. IPMP tidak akan menggunakan interface yang bersangkutan untuk berkomunikasi dengan dunia luar. Bila kedua interface gagal mendapatkan reply, maka IPMP akan down sehingga server ini terputus koneksinya dengan dunia luar. Pada saat itu, semua user tidak bisa mengakses server ini.

Langkah pertama membuat IPMP adalah dengan membuat IPMP group; misalkan kita sebut grupnya “oam0“. Grup ini yang akan menyatukan interface onboard0 & pci0. Perintahnya untuk membuat IPMP group adalah seperti berikut ini :

root@solaris11:~# ipadm create-ipmp oam0

Lalu kita buat IP interface pada masing-masing data link (onboard0 & pci0) dengan perintah seperti berikut :

root@solaris11:~# ipadm create-ip onboard0
root@solaris11:~# ipadm create-ip pci0

Setelah masing-masing link sudah memiliki IP interface, kita perlu mendaftarkannya ke dalam IPMP group oam0 :

root@solaris11:~# ipadm add-ipmp -i onboard0 -i pci0 oam0
root@solaris11:~# ipmpstat -g
GROUP       GROUPNAME   STATE     FDT       INTERFACES
oam0        oam0        ok        --        pci0 onboard0
root@solaris11:~#

Langkah berikutnya adalah mengaktifkan virtual IP 172.16.103.100 pada interface IPMP :

root@solaris11:~# ipadm create-addr -T static -a 172.16.103.100/24 oam0/v4

Kita bisa memeriksa status interface oam0 tersebut dengan salah satu perintah berikut ini :

root@solaris11:~# ipmpstat -an
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
::                        down   oam0        --          --
172.16.103.100            up     oam0        onboard0    pci0 onboard0
root@solaris11:~# 
root@solaris11:~# ifconfig oam0
oam0: flags=8001000843 mtu 1500 index 5
        inet 172.16.103.100 netmask ffffff00 broadcast 172.16.103.255
        groupname oam0
root@solaris11:~# 
root@solaris11:~# ipadm show-addr
ADDROBJ           TYPE     STATE        ADDR
lo0/v4            static   ok           127.0.0.1/8
net3/v4static     static   ok           172.16.103.10/24
oam0/v4           static   ok           172.16.103.100/24
lo0/v6            static   ok           ::1/128
onboard0/_a       static   ok           fe80::250:56ff:fe36:7c7c/10
pci0/_a           static   ok           fe80::20c:29ff:fe94:8526/10
root@solaris11:~#

Pada langkah ini bisa diliat virtual IP oam0 172.16.103.100 sudah aktif. IPMP hanya menggunakan interface onboard0 untuk menerima data (INBOUND) & menggunakan kedua interface fisik untuk mengirimkan data keluar (OUTBOUND).

root@solaris11:~# ipmpstat -an
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
::                        down   oam0        --          --
172.16.103.100            up     oam0        onboard0    pci0 onboard0
root@solaris11:~#

Sampai saat ini sebenarnya IPMP sudah selesai dibuat hanya saja masih menggunakan link-based failure detection. Maksudnya IPMP hanya akan menganggap suatu interface gagal bila koneksi fisiknya putus (misalnya bila kabelnya dicabut).

Solaris 11 menggunakan link-based failure detection sebagai default. Selain link-based failure detection, kita bisa memilih untuk menggunakan probe-based failure detection. Dengan probe-based failure detection, masing-masing interface (onboard0 & pci0) secara aktif memeriksa konektifitasnya dengan dunia luar. Jadi bisa saja meskipun kabelnya tidak terputus/tercabut, gateway IPnya tidak bisa diakses sehingga interface tersebut menginformasikan gagal koneksi kepada IPMP Group.

Berikut adalah cara untuk memberi alamat IP (test address) pada masing-masing interface :

root@solaris11:~# ipadm create-addr -T static -a 172.16.103.101/24 onboard0/v4
root@solaris11:~# ipadm create-addr -T static -a 172.16.103.102/24 pci0/v4

Untuk memeriksa masing-masing interface & test address-nya kita bisa menggunakan perintah berikut ini :

root@solaris11:~# ipmpstat -tn
INTERFACE   MODE       TESTADDR            TARGETS
pci0        routes     172.16.103.102      172.16.103.1
onboard0    routes     172.16.103.101      172.16.103.1
root@solaris11:~#

Mari kita periksa sekali lagi semua IP yang sudah kita aktifkan :

root@solaris11:~# ifconfig onboard0
onboard0: flags=9040843 mtu 1500 index 6
        inet 172.16.103.101 netmask ffffff00 broadcast 172.16.103.255
        groupname oam0
        ether 0:50:56:36:7c:7c 
root@solaris11:~# ifconfig pci0
pci0: flags=9040843 mtu 1500 index 7
        inet 172.16.103.102 netmask ffffff00 broadcast 172.16.103.255
        groupname oam0
        ether 0:c:29:94:85:26 
root@solaris11:~# 
root@solaris11:~# ipadm show-addr
ADDROBJ           TYPE     STATE        ADDR
lo0/v4            static   ok           127.0.0.1/8
net3/v4static     static   ok           172.16.103.10/24
oam0/v4           static   ok           172.16.103.100/24
onboard0/v4       static   ok           172.16.103.101/24
pci0/v4           static   ok           172.16.103.102/24
lo0/v6            static   ok           ::1/128
onboard0/_a       static   ok           fe80::250:56ff:fe36:7c7c/10
pci0/_a           static   ok           fe80::20c:29ff:fe94:8526/10
root@solaris11:~#

Untuk mengetahui bagaimana masing-masing test address memeriksa konektivitas dengan dunia luar, kita bisa gunakan perintah berikut ini :

root@solaris11:~# ipmpstat -p
TIME      INTERFACE   PROBE  NETRTT    RTT       RTTAVG    TARGET
0.87s     onboard0    i145   0.56ms    0.82ms    0.51ms    172.16.103.1
1.07s     pci0        i137   0.32ms    0.41ms    0.42ms    172.16.103.1
1.65s     onboard0    i146   0.34ms    0.43ms    0.50ms    172.16.103.1
1.95s     pci0        i138   0.35ms    0.45ms    0.42ms    172.16.103.1
3.02s     onboard0    i147   0.33ms    0.43ms    0.49ms    172.16.103.1
3.48s     pci0        i139   0.33ms    0.42ms    0.42ms    172.16.103.1
4.72s     onboard0    i148   0.33ms    0.42ms    0.48ms    172.16.103.1
4.81s     pci0        i140   0.31ms    0.40ms    0.42ms    172.16.103.1
6.28s     onboard0    i149   0.29ms    0.38ms    0.47ms    172.16.103.1
6.76s     pci0        i141   0.41ms    0.73ms    0.46ms    172.16.103.1
^C
root@solaris11:~#

Terlihat bahwa masing-masing test address secara aktif mengirimkan paket ICP ke target address.

Dengan pengaturan seperti di atas, IPMP akan menggunakan masing-masing interface/test address dalam konfigurasi aktif-aktif.

root@solaris11:~# ipmpstat -i
INTERFACE   ACTIVE  GROUP       FLAGS     LINK      PROBE     STATE
pci0        yes     oam0        -------   up        ok        ok
onboard0    yes     oam0        --mbM--   up        ok        ok
root@solaris11:~#

Seperti dijelaskan di atas, IPMP Group akan menggunakan menggunakan kedua interface untuk mengirimkan data.

root@solaris11:~# ipmpstat -an
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
::                        down   oam0        --          --
172.16.103.100            up     oam0        onboard0    pci0 onboard0
root@solaris11:~#

Kita punya opsi untuk mengatur hanya salah satu interface yang dipakai & menjadikan interface lainnya dalam posisi standby. Misalnya kita ingin mengatur test address pci0 sebagai standby interface, maka perintahnya seperti berikut ini :

root@solaris11:~# ipadm set-ifprop -p standby=on -m ip pci0

Dengan perintah tersebut maka IPMP Group hanya akan menggunakan interface onboard0 untuk menerima & mengirimkan data.

root@solaris11:~# ipmpstat -an
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
::                        down   oam0        --          --
172.16.103.100            up     oam0        onboard0    onboard0
root@solaris11:~#

Sekarang mari kita coba untuk mencabut kabel pada interface onboard0 & melihat apa yang terjadi pada IPMP Group.

root@solaris11:~# tail -0f /var/adm/messages 

Feb  4 22:54:24 solaris11 mac: [ID 486395 kern.info] NOTICE: onboard0 link down
Feb  4 22:54:24 solaris11 in.mpathd[155]: [ID 215189 daemon.error] The link has gone down on onboard0
Feb  4 22:54:24 solaris11 in.mpathd[155]: [ID 968981 daemon.error] IP interface failure detected on onboard0 of group oam0

^C
root@solaris11:~# ipmpstat -an
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
::                        down   oam0        --          --
172.16.103.100            up     oam0        pci0        pci0
root@solaris11:~#

Ketika IPMP mendeteksi putusnya koneksi pada interface onboard0, maka secara otomatis IPMP akan mengalihkan koneksi ke interface pci0.

Saat kita menyambungkan kembali kabel pada interface onboard0, IPMP akan mengembalikan koneksi seperti kondisi semula. Lihat contoh log yang muncul & bagaimana IPMP mengembalikan koneksi ke interface onboard0.

root@solaris11:~# tail -0f /var/adm/messages 
Feb  4 22:55:39 solaris11 mac: [ID 435574 kern.info] NOTICE: onboard0 link up, 1000 Mbps, full duplex
Feb  4 22:55:39 solaris11 in.mpathd[155]: [ID 820239 daemon.error] The link has come up on onboard0
Feb  4 22:55:54 solaris11 in.mpathd[155]: [ID 341557 daemon.error] IP interface repair detected on onboard0 of group oam0
^C
root@solaris11:~# ipmpstat -an
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
::                        down   oam0        --          --
172.16.103.100            up     oam0        onboard0    onboard0
root@solaris11:~#

Butuh waktu sekitar 15 detik bagi IPMP untuk menyadari bahwa koneksi pada interface onboard0 sudah kembali normal.

Lalu bagaimana bila pada suatu waktu kabel pada standby interface (pci0) terputus? Meskipun IPMP tidak sedang menggunakan pci0, tapi IPMP tetap mendeteksi gagalnya koneksi pada pci0 sehingga IPMP tahu bahwa dia tidak lagi memiliki backup.

root@solaris11:~# tail -0f /var/adm/messages 

Feb  4 23:01:42 solaris11 mac: [ID 486395 kern.info] NOTICE: pci0 link down
Feb  4 23:01:42 solaris11 in.mpathd[155]: [ID 215189 daemon.error] The link has gone down on pci0
Feb  4 23:01:42 solaris11 in.mpathd[155]: [ID 968981 daemon.error] IP interface failure detected on pci0 of group oam0
^C
root@solaris11:~# ipadm show-if
IFNAME     CLASS    STATE    ACTIVE OVER
lo0        loopback ok       yes    --
net3       ip       ok       yes    --
oam0       ipmp     ok       yes    onboard0 pci0
onboard0   ip       ok       yes    --
pci0       ip       failed   no     --
root@solaris11:~#

Bisa dilihat bahwa koneksi in & out tetap aktif melalui interface onboard0.

root@solaris11:~# ipmpstat -an
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
::                        down   oam0        --          --
172.16.103.100            up     oam0        onboard0    onboard0
root@solaris11:~#

Tapi IPMP Group menyadari bahwa dia sudah kehilangan backup interface & menyatakan status dirinya DEGRADED :

We can see that the IPMP group marked as degraded :
root@solaris11:~# ipmpstat -g
GROUP       GROUPNAME   STATE     FDT       INTERFACES
dodol2      dodol2      failed    --        --
oam0        oam0        degraded  10.00s    onboard0 [pci0]
root@solaris11:~#

Bila koneksi kabel pada interface pci0 sudah disambungkan kembali, IPMP akan mendeteksinya juga seperti terlihat pada contoh log berikut ini :

root@solaris11:~# tail -0f /var/adm/messages 

Feb  4 23:02:22 solaris11 mac: [ID 435574 kern.info] NOTICE: pci0 link up, 1000 Mbps, full duplex
Feb  4 23:02:23 solaris11 in.mpathd[155]: [ID 820239 daemon.error] The link has come up on pci0
Feb  4 23:02:38 solaris11 in.mpathd[155]: [ID 341557 daemon.error] IP interface repair detected on pci0 of group oam0
^C
root@solaris11:~# ipadm show-if
IFNAME     CLASS    STATE    ACTIVE OVER
lo0        loopback ok       yes    --
net3       ip       ok       yes    --
oam0       ipmp     ok       yes    onboard0 pci0
onboard0   ip       ok       yes    --
pci0       ip       ok       no     --
root@solaris11:~#

Jadi bisa disimpulkan bahwa IPMP sangat berguna untuk mendapatkan koneksi yang lebih handal (reliable). Semua user sedang mengakses server ini tidak akan mendapat gangguan bila salah satu interface gagal beroperasi, atau bila salah satu kabel terputus.

UPDATE : semua perintah di atas akan langsung tersimpan secara permanen, artinya konfigurasinya tidak akan berubah meskipun kita reboot servernya.