Ethernet Card tidak Terdeteksi di Ubuntu Server 10.04.3

Dapet motherboard Gigabyte yang baru dengan Eth card yang tidak terdeteksi saat instalasi Ubuntu Server 10.04.03. Hal ini karena drivernya tidak ada. Ini mungkin karena saat bikin Ubuntu versi tersebut Eth card jenis ini belum ada.

Caranya ya install driver manual. Cek dulu apa eth cardnya => lshw -class network =>Eth card saya: Atheros Communications Device 1083 (revc c0)

  1. Dari komputer lain yg sudah nyambung internet, download driver source (kalau atheros di http://media.cdn.ubuntu-de.org/forum/attachments/48/33/2666793-AR81Family-linux-v1.0.1.14.tar.gz )
  2. Copy dalam flash disk
  3. Tancepin flash disk ke server ubuntu yg baru diinstall, lihat dia ada di mana (dmesg), misalnya sdb1
  4. Mount USB => mount /dev/sdb1/ /mnt
  5. Copy file *.tar.gz tadi ke server
  6. tar -xzvf *.tar.gz
  7. sudo make install
  8. sudo modprobe atl1e
  9. Check apakah sudah ada => ifconfig -a
  10. Kasih IP DHCP dulu => sudo dhclient eth0 atau langsung kasih ip statis => petunjuk no 13
  11. coba ping detik.com misalnya
  12. Agar dijalankan saat reboot=> sudo echo atl1e >> /etc/modules
  13. Kalau mau ganti IP static edit duly /etc/network/interfaces lalu sudo ifup eth0
  14. upgrade aja => sudo apt-get update => sudo apt-get dist-upgrade
  15. masukkan ifup eth0 atau dhclient eth0 ke /etc/rc.local biar langsung jalan networknya

Meneruskan IP pengunjung lewat Nginx ke Apache

Kalau menggunakan Nginx utk reverse proxy atau load balancer, jika pakai setting standar maka apache akan menganggap cliennta adalah nginx, sehingga ip yang ditangkap adalah IP nginx misalnya 127.0.0.1. Untuk menangkap IP sebenarnya dari pengunjung, caranya adalah:

  1. Install apache mod_rpaf

    Kalau di CENTOS:
    # cd /usr/local/src
    # wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
    # tar -xzf mod_rpaf-0.6.tar.gz
    # cd mod_rpaf-*
    # apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c

    Kalau di UBUNTU:

    sudo apt-get install libapache2-mod-rpaf
    sudo a2enmod rpaf

    Setelah itu setting httpd.conf / apache2.conf sebagai berikut:

    LoadModule rpaf_module modules/mod_rpaf-2.0.so
    # mod_rpaf Configuration
    RPAFenable On
    RPAFsethostname On
    RPAFproxy_ips 127.0.0.1 10.0.0.1 # ganti dengan IP proxy
    RPAFheader X-Forwarded-For

    Restart apache

  2. Setting Nginx
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    restart nginx

Menjaga agar service tetap berjalan

Idenya adalah selalu memeriksa apakah service yang kita inginkan berjalan apa tidak. Kalau tidak berjalan maka dijalankan, kalau sudah berjalan ya dibiarkan saja. Caranya begini:

  1. Buat shell script misalnya dengan nama /root/autoStartMyService.sh yang isinya seperti ini:
    #!/bin/bash
    # check MyService
    ps -ef | grep -v grep | grep MyService
    # if not found – equals to 1, start it
    if [ $? -eq 1 ]
    then
    /root/startMyService.sh
    else
    echo “eq 0 – MyService is running – do nothing”
    fi
  2. Jalankan dicron setiap rentang waktu yang diinginkan, misalnya 5 menit sekali:
    */5 * * * * /root/autoStartMyService.sh

Setup MSQL 5.1 Replication di Centos 6

KETERANGAN
Ini kalau pakai SSL. Jika ingin tidak pakai SSL, tinggal skip bagian SSL.
PERSIAPAN
  • Cek dulu apakah ssl sudah diaktifkan di mysql server master
    root@server1:~# mysql -u root -p
    mysql> show variables like ‘%ssl%’;
  • Jika belum, maka aktifkan dulu dengan menambahkan string “ssl” (tanpa quote) pada /etc/my.cnf dan restart mysql

KONFIGURASI di MASTER

  • MySQL harus bisa listen all interface. Caranya comment pada bind-address = 127.0.0.1 di file /etc/my.cnf. Untuk test, engan perintah berikut:
    root@server1:~# netstat -tap | grep mysql
    tcp 0 0 *:mysql *:* LISTEN 2166/mysqld
  • Membuat folder untuk log mysql jika belum ada
    root@server1:~# mkdir /var/log/mysql
    root@server1:~#  chown mysql:mysql /var/log/mysql
  • Membuat CA certificate
    root@server1:~# (mkdir /etc/mysql/newcerts) cd /etc/mysql/newcerts
    root@server1:~# openssl genrsa 2048 > ca-key.pem
    root@server1:~# openssl req -new -x509 -nodes -days 1000 -key ca-key.pem > ca-cert.pem
  • Membuat server certificate
    root@server1:~# openssl req -newkey rsa:2048 -days 1000 -nodes -keyout server-key.pem > server-req.pem
    root@server1:~#  openssl x509 -req -in server-req.pem -days 1000 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 > server-cert.pem
  • Membuat client certificate
    root@server1:~# openssl req -newkey rsa:2048 -days 1000 -nodes -keyout client-key.pem > client-req.pem
    root@server1:~#  openssl x509 -req -in client-req.pem -days 1000 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 > client-cert.pem
  • Transfer file ca-cert.pem, client-cert.pem, and client-key.pem ke slave di direktori /etc/mysql/newcerts juga
  • Buka /etc/my.cnf lalu masukkan berikut:
    ssl
    ssl-ca=/etc/mysql/newcerts/ca-cert.pem
    ssl-cert=/etc/mysql/newcerts/server-cert.pem
    ssl-key=/etc/mysql/newcerts/server-key.pem
  • Restart mysql
  • Membuat user slave d master
    root@server1:~# mysql -u root -p
    mysql> GRANT REPLICATION SLAVE ON *.* TO ‘slave_user’@’%’ IDENTIFIED BY ‘slave_password’ REQUIRE SSL;
    mysql> GRANT USAGE ON *.* TO ‘slave_user’@’%’ REQUIRE SSL;
    mysql> FLUSH PRIVILEGES;
  • Penomoran server dan penentuan database di /etc/my.cnf
    server-id = 1
    log_bin = /var/log/mysql/mysql-bin.log
    expire_logs_days = 10
    max_binlog_size = 100M
    binlog_do_db = exampledb
  • Restart mysql
  • Flush & Lock mysql database dulu dan lihat posisi di master status
    root@server1:~# mysql -u root -p
    mysql> USE exampledb;
    mysql> FLUSH TABLES WITH READ LOCK;
    mysql> SHOW MASTER STATUS;
    +——————+———-+————–+——————+
    | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +——————+———-+————–+——————+
    | mysql-bin.000001 |  3096416 | exampledb    |                  |
    +——————+———-+————–+——————+
    1 row in set (0.00 sec)
  •  INGAT, jangan tutup atau quit dari mysql dulu karena pada pisisi ini harus ngedump database. Buka terminal baru:
    root@server1:~# mysqldump -u root -pyourrootsqlpassword –opt exampledb > snapshot.sql
  • Kirim snapshot.sql ke server slave
  • Dari terminal yang sebelumnya:
    mysql> UNLOCK TABLES;
    mysql> quit;

KONFIGURASI di SLAVE

  • Buka  /etc/my.cnf buat setting server-id, master-connect-retry, replicate-do-db di bagian  [mysqld]
    ssl
    server-id=2
    master-connect-retry=60
    replicate-do-db=exampledb
  • restart mysql
  • membuat database
    root@server2:~# mysql -u root -p
    mysql> CREATE DATABASE exampledb;
    mysql> STOP SLAVE;
    mysql> quit;
  •  memasukkan data awal:
    root#server2:~# mysql -u root -pyourrootsqlpassword exampledb < snapshot.sql
  • set slave:
    root@server2:~# mysql -u root -p
    mysql> CHANGE MASTER TO MASTER_HOST=’192.168.0.100′, MASTER_USER=’slave_user’, MASTER_PASSWORD=’slave_password’, MASTER_LOG_FILE=’mysql-bin.000001′, MASTER_LOG_POS=3096416, MASTER_SSL=1, MASTER_SSL_CA = ‘/etc/mysql/newcerts/ca-cert.pem’, MASTER_SSL_CERT = ‘/etc/mysql/newcerts/client-cert.pem’, MASTER_SSL_KEY = ‘/etc/mysql/newcerts/client-key.pem’;
    mysql> START SLAVE;
    mysql> SHOW SLAVE STATUS \G

scp, ssh dan rsync tanpa prompting password

Dari host asal:

$ ssh-keygen -t rsa

akan menghasilkan file di ~/.ssh/id_rsa.pub

Kirim file tersebut ke host tujuan.

Lalu masuk ke host tujuan dan memasukkan isi dari id_rsa.pub yg tadi ke ~/.ssh/authorized_keys di host tujuan

$ cat id_rsa.pub >>~/.ssh/authorized_keys

$ chmod 700 ~/.ssh/authorized_keys

Jika butuh root login, edit /etc/ssh/sshd_config dan ubah PermitRootLogin dari no menjadi yes, lalu restart sshd.

Salah satu akal-akalan AHA alias ESIA agar membeli pulsa lebih

Saya adalah pengguna AHA (http://www.aha.co.id) yang sebenarnya puas dengan kualitas jaringannya. Bahkan saya selalu mempromosikan ke orang-orang bahwa AHA bagus dan cepet koneksinya. Tapi akhir-akhir ini saya jengkel dengan AHA. Itu dikarenakan  AHA membuat beberapa hal yang merepotkan dan menjengkelkan bagi saya, yang di antaranya berdampak pada lebihnya pulsa yang harus dibayar. Yang menjengkelkan itu adalah:

  • AHA Mail a.k.a. Google Application

    Mungkin maksud AHA sih baik, memberi hal lebih kepada pengguna AHA. Masalahnya adalah hal tersebut diharuskan oleh AHA. Tidak ada cara untuk menolaknya. Yang menjengkelkan adalah setiap mau cek pulsa  di Customer Area AHA selalu terlebih dahulu diarahkan ke google application. Padahal saya cuma mau cek pulsa lewat internet, karena alat yg saya beli adalah AHA Link yang memang dikhususkan untuk pemakaian internet (tidak bisa dipakai nelpon, paling bisa SMS melalui aplikasi web juga)Saya pakai AHA hanya untuk internet. That’s it. Saya tidak suka menunggu google application yang loading-nya lama hanya untuk ngecek pulsa. Saya sudah punya sendiri dengan domain-domain pribadi. Banyak lagi.

  • Notifikasi AHA saat melewati FUP (Fair Usage Policy)

    Saya sudah tahu dari awal bahwa paket yang saya ambil adalah DINAMIS BULANAN yang quotanya adalah 4 GB dan kalau telah memakai lebih dari itu akan turun kecepatannya.  Itu tidak masalah bagi saya. Awal-awal saya pakai AHA dulu lancar saja, begitu melebihi quota otomatis kecepatnnya berkurang. That’s ok.Tapi kemudian AHA membuat acara lain yaitu jika melewati quota akan masuk ke halaman notifikasi dan saya harus login untuk memilih apakah tetep mau memakai paket dengan kecepatan turun atau membayarRp 1/KB untuk kecepatan yang tidak turun. Walaupun bikin repot, okelah saya lakukan.Yang terakhir ini caranya berubah lagi menjadi lebih menjengkelkan. Ketika melewati quota, maka harus SMS ke nomor 242 dengan pesan BAYAR atau TIDAK. Okelah saya turutin kirim SMS, eh malah mendapat balesan: “Maaf, permintaan Anda tidak dapat diproses. Saat ini Anda tidak dpt memilih krn blm pd kondisi FUP. Paket Anda akan diperbarui pd 27/03/12-15:16” . Lha, gimana sih? Saya buka internet dapat notfikasi suruh SMS tapi ketika di-SMS jawabannya seperti itu. Saya sampai SMS 2 kali untuk memastikan dan hasilnya sama saja. Wal hasil, pulsa saya kepotong Rp 110 dan tetap tidak bisa pakai internet.Akhirnya saya telpon langsung AHA Care di nomor 021 99714098. Untuk berbicara dengan operator prosedurnya lama banget. Pulsa IM3 saya terus kepotong untuk hal-hal gak penting. Kalau anda telepon AHA Care, sebaiknya langsung pencet 0 (nol) aja untuk berbicara dengan operator. Setelah tersambung dengan operator, baru bisa minta dibukakan akses internetnya secara manual oleh dia. Menurut dia, update data quotanya bisa lebih dari 2 jam, sehingga bisa terjadi hal seperti itu. What? update data saja bisa sampai begitu lama, apa tidak bisa sinkronisasi database?

    Kalaupun metode SMS tersebut berhasil(apalagi gagal) , maka pulsa akan kepotong minimal Rp 55 untuk konfirmasi BAYAR atau TIDAK. Bagi saya yang hanya pakai AHA untuk internet, itu artinya harus membeli pulsa lebih, karena pulsa yang seharusnya pas buat langganan (Rp 110,000) menjadi Rp 109,945. Mana ada yang jual pulsa AHA Rp 55 agar genap menjadi Rp 110,000?  Mau tidak mau harus beli pulsa setidaknya paket terkecil. Nah, karena saya hanya memakai untuk internet Rp 110,000 per 30 hari, berarti akan selalu ada saldo pulsa gak kepakai. Itu adalah akal-akalan AHA untuk mendapatkan duit gratis yang menggantung. Atau setidaknya, akal-akalan AHA agar pengguna membeli pulsa yang sebenarnya tidak diperlukan.

  •  Banner

    Sering kali kalau saya membuka sebuah website akan ada banner AHA yg menyebalkan diinsert otomatis.   Menyebalkan banget bukan?  Sudah bayar masih diganggu sama banner. Ini bannernya:

Bagaimana pengalaman menggunakan AHA dari anda?

Perbandingan Database Engine: MySQL vs PostgreSQL vs Oracle vs Microsoft SQL Server

Saat ini sedang mikir-mikir database mana yang paling cocok dengan aplikasi yang akan saya buat. Kebutuhan saya adalah: skalabilitas, biaya, dan performa. Skalabilitas menjadi prioritas pertama mengingat database aplikasi tersebut kemungkinan besar akan tumbuh pesat seiring pengguna dan data yang disimpan di dalamnya.

Setelah mengumpulkan dari berbagai sumber, berikut ini rangkuman yang dapat saya peroleh: Continue reading “Perbandingan Database Engine: MySQL vs PostgreSQL vs Oracle vs Microsoft SQL Server”

Menjalankan PHP di Infrastruktur Google (App Engine)

Ketika saya sedang mencari-cari solusi cloud computing untuk aplikasi yang akan saya buat, saya (kembali) menemukan google appengine cukup menjanjikan. Dulu sebenarnya sudah tahu keberadaannya, namun karena dibilang hanya bisa menjalankan java dan python saja, maka saya lewati. Terus terang saya males belajar bahasa pemrograman lain lagi. PHP sudah cukup lah untuk semua hal. Dan setelah mencari lebih jauh, akhirnya menemukan juga cara menjalankan PHP di platform google.  Continue reading “Menjalankan PHP di Infrastruktur Google (App Engine)”

Feng Shui Nama Perusahaan dan Produk

Temen saya, Yoki, memberi sebuah konsep itung-itungan fengshui untuk nama Perusahaan dan Produk. Konsep tersebut diadposi dari sebuah buku (lupa judulnya) yang digunakan untuk mengetahui arti sebuah nama dari perusahaan dimana dia menjadi konsultan bisnis. Perusahaan tersebut selama ini dianggap kurang “beruntung” sehingga perlu dicek secara feng shui.

Yoki sendiri sebenarnya tidak begitu percaya dengan itung itungan tersebut. Yang justru concern terhadap hal itu adalah pemilik perusahaan yang membeli buku tersebut  dan bahkan sampai menulis ulang rumusnya di spreadsheet (Microsoft Excel).

Setelah saya mendapatkan file itu, saya mencoba beberapa nama besar seperti “GOOGLE”, loh kok hasilnya jelek (Merusak Keluarga). Tapi memang sih, untuk nama lain seperti “HONDA” hasilnya dalah “MELIMPAH”. Jadi seberapa akurat perhitungannya? Saya sih tidak begitu mempercayainya. Tapi buat iseng-iseng ya boleh lah. Yang jelas, kalau anda memasukkan kata “FENG SHUI” maka artinya adalah “PUSING”. Hahaha.

Karena saat ini saya lagi agak bingung mana yang harus dikerjakan terlebih dahulu dari beberapa tugas yang ada, saya malah membuat program kecil untuk menghitung feng shui dengan menerjemahkan rumus yang telah dibuat dalah spreadsheet tadi. Hehehe. Hasilnya bisa dicoba di:

http://www.iqbal.or.id/fengshui => Server sudah dimatikan. Sebagai gantinya bisa didownload di Android yang tidak tergantung pada server.

https://play.google.com/store/apps/details?id=com.fengshui.nama

Please try with your own risk!