Sepatu Keren dari openSUSE Asia Summit 2016
Sebelumnya saya sudah pernah cerita tentang pengalaman saya menjadi relawan pada openSUSE Asia summit 2016, kalau mau baca bisa ke sini : https://dhenandi.com/opensuse-asia-summit-2016-a-little-stories-from-volunteer/
Dengan perasaan hati senang saya menulis tulisan ini, karena kemarin saya mendapatkan sepatu Fans keren buatan pak Iwan Tahari dari Pak Estu Fardani.
Ketika openSUSE Asia Summit hari kedua, tiba-tiba sepatu saya jebol, alas kakinya mangap haha,. gara-gara saya lari-larian atau mondar-mandir mungkin di hari pertama. Jadi di hari kedua saya stay di Convention Hall sebagai operator karena emang leptop saya ada disana.
Sebelumnya Pak Estu pernah tanya ukuran sepatu saya, dengan harepan Pak Estu nyamperin saya nanyain sepatunya kenapa terus dikasih sepatu baru. Ternyataaaaa… kagak ???
Malem hari kedua waktu saya mah balik ke home stay, pak estu telegram saya, katanya ada sepatu lebih. Nah ini yang ditunggu haha. Alhamdulillah ternyata saya kebagian. Katanya nanti dikirimi ke bekasi.
Di Bekasi saya nunggu sepatu, pas sepatunya sampe, ternyata ukurannya besar sekali. Ukuran saya 39 dapetnya 42 ?.
Sepatu kudu saya terima dengan harepan kaki saya tiba-tiba besar sesuai dengan ukuran sepatu. Kemudian saya kontak Pak Estu buat bilang makasih. Ternyata alhamdulillah emang rezeki saya. Masih ada sisa ukuran 39 nya. Jadi sepatu yang ini saya kasih ke Pak Boss Vavai.
Sekitar seminggu nunggu, alhamdulillah Hari Jum’at sore kemarin sampai bekasi dengan selamat. Tapi sialnya saya udah pulang kantor. Jadi saya titipin ke Fajar, temen kantor yang rumahnya deket sama saya.
Sepatu ini bagus banget dari desainnya. Dapet F-Lock juga yang bisa memudahkan saya buat mengencangkan dan mengendorkan tali sepatu.
Sepatu ini juga sudah saya pakai buat kerja. So far, sepatu ini nyaman digunakan, sumpeh. Saya bukan salesnya sepatu Fans tapi ini beneran sepatunya nyaman. Senyaman perasaanku ke kamu…
Makanya bisa nyesel kalian yang gak ikut acara openSUSE Asia Summit kemarin. Banyak hadiah men!
Sepatu ini diberikan tandanya saya harus lebih banyak memberikan kontribusi ke komunitas dan saya harus banyak belajar dan mempersiapkan diri buat openSUSE Asia Summit 2017 di Jepang (Aaaaaminnnn) :-D.
Okay, sedikit cerita dari saya, thanks. Kalau mau lihat review lengkap sepatu ini bisa kunjungi blognya mas Ary dan kalau anda tertarik dan mau pesen bisa ke Blog nya Pak Estu.
The post Sepatu Keren dari openSUSE Asia Summit 2016 appeared first on dhenandi.com.
openSUSE.Asia Summit 2016 - Note from a backstage participant
Board finally agree to our proposal and decided that openSUSE.Asia Summit 2016 will be hosted by openSUSE Indonesia Community in Yogyakarta Indonesia [1]. Alcho, a SUSE engineer from Taipei, one of openSUSE.Asia Committee announce it also during his presentation on openSUSE Conference in Nuremberg in June 2016.
We basically only have 3-4 months to prepare such a big event. I'm lucky that I have colleagues that I can work with. I should thank Estu Fardani, as the local team committee leader, Yan Arief who did the good job from administration to treasurer, and Chairrizal for preparing any equipments and documentation. I also should mention Kukuh Syafaat, almost all the artwork in this event was made by him. Together with Siska and Sendy, two other young people from Yogyakarta, we can start the preparation of the event.
While almost all the local team live in Yogyakarta, I (and Kukuh) live in Jakarta, around 500 km from Yogyakarta. Countless online conversation and discussion was conducted during the preparation. I also visited Yogyakarta every end of month in the last 3 months to meet with the local committee. July, August and September are the busy months for us.
I want to thanks to all the sponsor of openSUSE.Asia Summit 2016 openSUSE, SUSE, Bekraf, UIN Sunan Kalijaga, Kominfo, Fans, Excellent,Biznet, Cloudkilat, Qwords, Ngonoo, KSL Kusuka, and off course all the openSUSE Indonesia Community.
I leave Jakarta on September 29, 2016 because I want to make sure that everything is ok. Also I promise Sakana Max that I will meet him on Yogyakarta Airport.
The summit start with workshop on September 30. Around 40 people follow this workshop since morning. The session was closed around 5 PM
Summit was open by UIN Faculty member and follow by 2 keynote. I have my workshop "High Availability Cluster with openSUSE Leap" [2] after the lunch. My class is follow by around 50 people and they look enthusiast with the topic.
My workshop
Photo group in the day 1
Photo group in the day 2
We got a lot of help from everyone in the community during the preparation of openSUSE.Asia Summit 2016, so allow me to express my thanks to:
1. openSUSE Board
2. Andrew Wafaa
3. Douglas DeMaio
4. Manu Gupta
5. Sunny, Coli, Yifan, Qiang from SUSE Beijing
6. Joey Lee, Gary Lin, Max Lin, Ben Chou, Jeffrey, Alcho from SUSE Taipei
7. "Sakana" Max Huang from openSUSE TW community
8. Dr. Takeyama, Hatori san, Omo san from openSUSE JP community
A big thanks should be addressed also to the local volunteer, most of them are student from UIN Suka, the university that we host the event. Without them openSUSE.Asia Summit 2016 won't be succeed.
[1] https://lists.opensuse.org/opensuse-project/2016-05/msg00022.html
[2] http://www.slideshare.net/medwinz/ha-cluster-with-opensuse-leap
Flickr photo: https://www.flickr.com/groups/opensuse-asia-summit-2016/
Youtube: https://www.youtube.com/watch?v=A2WPP0_JRPY&list=PLx6VNfLiNpaiUcZyNdbNVuwYuECWkv_m7
This list will never be enough, thanks to :
1. Ahmad Haris and Glib
2. Didiet Pambudiono and KLAS
3. Everyone that help us to make this event happens
4. All the participants
You're all cool & rocks!!
See you next year!
H-10 openSUSE Asia Summit 2016, Sudahkah Kamu Daftar ?
openSUSE Asia Summit 2016 tinggal menghitung hari lagi lho!. Acara tersebut akan dilaksanakan di UIN Sunan Kalijaga Yogyakarta dan akan dilaksanakan selama 3 hari. Acara akan dimulai dengan workshop yang diadakan pada tanggal 30 September 2016 dan dilanjutkan dengan seminar tanggal 1-2 Oktober 2016. Buat kalian yang belum tahu apa itu openSUSE Asia Summit 2016 silahkan baca disini.
Jadwal sudah diumumkan secara resmi pada halaman events.opensuse.org. Pada acara ini akan ada beberapa materi-materi keren yang akan dibawakan oleh speaker-speaker yang tentunya keren juga tentunya. Materi yang dibawakan yaitu seputar openSUSE dan teknologi open source dan speaker-nya juga tidak hanya berasal dari Indonesia saja tetapi juga kontributor se-Asia.
Materi yang dibahas yaitu bermacam-macam, dimulai dari materi teknis seperti pemanfaatan openSUSE pada perangkat Raspberry Pi maupun penggunaan openSUSE untuk High Availability Server.
Selain hal teknis ada juga materi yang membahas hal penting terkait kontribusi, seperti peran dan kontribusi untuk openSUSE dan FOSS Project, peran wanita pada era teknologi hingga pemanfaatan teknologi open source di dunia pendidikan. Bahkan beberapa engineer dari SUSE dan openSUSE juga ikut memberikan materi terkait proses pengembangan openSUSE Leap 42.2 dan cara berkontribusi di kernel openSUSE.
Acara akan dilaksanakan di ruangan berbeda yaitu pada Convention Hall, Ruang Fakultas Sains dan Teknologi (101, 102, 103), serta laboratorium untuk workshop.
Berikut merupakan beberapa materi yang akan dibawakan pada openSUSE Asia Summit 2016 :
Jumat, 30 September 2016
- Integrating Ceph Jewel and OpenStack Mitaka on openSUSE Leap 42 Nodes oleh Utian Ayuba
- openQA hands-on with openSUSE Leap 42.1 oleh Ben Chou
- Centralized Logs using ELK(Elasticsearch, Logstash, Kibana) Stack using openSUSE oleh Estu Fardani
Sabtu, 1 Oktober 2016
- High Availability Cluster with openSUSE Leap oleh Edwin Zakaria
- Clustering Docker with Docker Swarm on openSUSE oleh Saputro Aryulianto
- Women Contributions in Today’s Technology Era oleh Umul Sidikoh
- openSUSE Leap 42.2 development process oleh Max Lin
- OpenSCAP and related contents for openSUSE oleh Kazuki Omo
Info lengkap : https://events.opensuse.org/conference/summitasia16/schedule#2016-10-01
Minggu, 2 Oktober 2016
- Open Source Stack of Big Data Technology oleh Muhammad Rifqi Maarif
- GUI Prototyping/Wireframing with Pencil on openSUSE Leap oleh Kukuh Syafaat
- How to contribute to FOSS Project oleh Ahmad Haris
- Building kernel package in Open Build Services oleh Jeffrey Cheung.
- Building Game on Raspberry Pi with OpenSUSE oleh Levay
Info lengkap : https://events.opensuse.org/conference/summitasia16/schedule#2016-10-02
Jadi, buat kalian yang belum mendaftar silakan registrasi pada link berikut untuk workshop tanggal 30 September (Tapi kayaknya kuota udah full) dan link berikut untuk seminar tanggal 1-2 Oktober 2016, kemudian ikuti petunjuknya. Jangan sampai ketinggalan, kuota terbatas!
Sampai bertemu di Jogjakarta!
The post H-10 openSUSE Asia Summit 2016, Sudahkah Kamu Daftar ? appeared first on dhenandi.com.
My Trip to openSUSE.Asia Summit 2015
On December 5, 2015 openSUSE.Asia Summit 2015 was open, and off course there are many DVD and stickers :-D
Michal Hrusecky, openSUSE Board, give a keynote speech about what's been going on in openSUSE lately.
And after the break it was my turn. I put my presentation on slideshare in case any of you want to read.
It is an honor for me to attend to this event and hope Indonesia can be the host of the next openSUSE.Asia Summit 2016. See you all next year!
Most of photographs are taken from:
https://www.flickr.com/photos/vanmalay/
https://www.flickr.com/groups/opensuse-asia-summit-2015/
Thanks to:
Utian Ayuba, Estu Fardani - You both are great travel companion
Al Cho, Joey Lee, openSUSE Taiwan - Thanks for invitation
Sakana Max - You should come next time :-D
Franklin Weng, Erick - You make me always remember that I have friends in Taiwan
Rijal, Rosi, Pak Pur, LC - The video rock!
openSUSE Indonesia Community - Thanks for great support
openSUSE - Thanks for the great distro and TSP :-D
Instalasi Line Messenger pada openSUSE Leap 42.1
Muqadimmah
Saat ini, sudah banyak sekali aplikasi messenger yang digunakan di Android dan juga di PC pada sistem operasi Linux. Seperti WhatsApp, Telegram atau Facebook Messenger. Salah satu kelebihannya, Ke-3 Aplikasi tersebut dapat dijalankan via Web Browser.
Kadang ketika saya sedang online di laptop dan ada pesan masuk dari Android saya, saya harus ribet. Buka Pattern lock kemudian Buka Aplikasinya, dan ketika dibuka kadang lemot ahhh ….. Menghabiskan waktu saja wkwkw
.
Seenggaknya dengan Laptop spesifikasi yang, yaaaa….. lumayan lah saya bisa menjalankan aplikasi tersebut di laptop dan tidak perlu buka-buka Hape, Make it Simple broh 
Namun ada salah satu aplikasi chat android yang lumayan sering saya gunakan untuk chatting di Android. Namun hanya dapat dijalankan via Windows dan tidak bisa digunakan via web seperti ke 3 aplikasi yang sudah saya sebutkan diatas. Apakah aplikasi tersebut ??
Sebut saja “LINE Messenger“. Lha namanya memang itu wkwkw. Aplikasi ini banyak digunakan bagi kalangan muda seperti saya :-p. Eits, yang tua juga boleh kok asal jangan bablas. Line sudah dapat digunakan pada Windows, MacOS. Namun sayang sekali, secara official, LINE belum dapat diterapkan untuk Linux.
Supaya dapat menjalankan di Linux, terutama openSUSE Leap saya. Cara mengakalinya dengan menggunakan “wine”. Kalo belum tahu wine langsung ke Situs Resminya saja https://www.winehq.org/. Secara singkat wine adalah emulator untuk aplikasi windows pada Linux. Berikut cara Instalasi Line pada OpenSUSE Leap 42.1 :
Install Wine
Sebelum menginstall Line, instal terlebih dahulu wine versi terbarunya. Pada Repository OpenSUSE Leap Wine sudah dimasukkan versi terakhirnya yaitu versi 1.7, jadi tidak perlu menambah repository OFFICIAL WINE. Cukup menjalankan perintah berikut :
zypper in wine
Paket yang diinstall lumayan banyak, jadi agak lama. Kecuali koneksi kenceng :-P. Setelah selesai install wine, Install Microsoft Visual C++ 2008 nya via wine, karena LINE membutukan Microsoft Visual C++ 2008 nya supaya dapat berjalan caranya :
winetricks vcrun2008
Tunggu sampai proses selesai
Install Line
Oke, Wine sudah, sekarang tinggal install Linenya. Pertama Download Aplikasi Official Line untuk Windows pada Link Berikut :
Masuk ke Folder Download | Klik kanan pada Aplikasi yang sudah di Download | dan Open With Wine. dan jalankan mengikuti Wizard.
Tadaaa, Jika sudah selesai maka tampilannya seperti berikut :
Jadi saya gak perlu buka HP lagi dan gaperlu nunggu waktu lama untuk buka aplikasinya. Tapi….. di PC ini tidak sehebat di android, Line di PC tidak bisa untuk lihat TIMELINE guys :-(. Satu-satunya kita harus dateng ke kantor LINE dan melakukan demonstrasi agar LINE di PC bisa ada Timelinenya wkwkw. Okeh semoga bermanfaat. Jika kurang jelas bisa mengikuti Video di bawah ini.
The post Instalasi Line Messenger pada openSUSE Leap 42.1 appeared first on dhenandi.com.
Instalasi dan Konfigurasi Web Server
Pada kesempatan yang lain, penulis pernah mencoba menginstalasi web server menggunakan XAMPP versi Linux yang bisa diunduh di url https://www.apachefriends.org/. Setelah bermigrasi ke openSUSE Tumbleweed, penulis mencoba melakukan instalasi web server dengan metode yang sama. Akan tetapi pada proses instalasi tersebut, penulis gagal menjalankan servis MySQL dan FTPD. Walau mungkin solusinya bisa dicari, akan tetapi terlintas ide untuk menginstal web server dari repositori openSUSE itu sendiri. di langsir dari portal https://en.opensuse.org/SDB:LAMP_setup, untuk menginstal web server Anda perlu mengunduh beberapa aplikasi yang diperlukan, antara lain sebagai berikut.
- Apache2, buka terminal kemudian ketik sudo zypper in apache2. Untuk menjalankan servicenya, ketik diterminal (login sebagai root) systemctl start apache2.service
- PHP5, buka terminal kemudian ketik sudo zypper in php5 php5-mysql apache2-mod_php5
- MariaDB, buka terminal kemudian ketik sudo zypper in mariadb mariadb-tools. Untuk menjalankan servicenya, ketik (login sebagai root) systemctl start mysql.service
- Jika ingin menginstal phpMyAdmin ketik di terminal, sudo zypper in phpMyAdmin. Untuk mengaksesnya (misal lokal) ketik http://localhost/phpMyAdmin/.
Setelah service yang dibutuhkan dijalankan, sekarang untuk mengetesnya ketik di browser http://localhost/, jika hasilnya seperti gambar berikut, maka langkah pertama berhasil.

Sebelum melanjutkan ke langkah selanjutnya, mengenai proses instalasi web server juga bisa dilakukan melalui YaST, berikut langkah – langkahnya.
- Buka YaST – Software – Software Management
- Ubah pilihan filter menjadi Patterns
- Scrolldown pilihan ke bawah, ceklist group Web and Lamp Server
- Pilih paket yang akan diinstal, atau jika tidak mau repot openSUSE secara default sudah menceklist semua paket yang tersedia di group tersebut.
- Pilih Accept untuk menginstalnya, pastikan tersedia koneksi internet
Pada saat pengetesan melalui browser maka akan diperoleh keterangan Access forbidden!. Hal ini dikarenakan secara default openSUSE akan mengaktifkan folder yang memiliki file index.html. Untuk mengatasi permasalahan ini, Anda hanya perlu mengubah file default-server.conf yang terletak di direktori /etc/apache2. Ubah baris Option None menjadi Option All.
Folder utama dari web server terletak di /srv/www/htdocs, meski demikian Anda bisa mengubahnya ke direktori tertentu (misal diset ke direktori home). Caranya mengubah baris pada file yang sama (default-server.conf), pada baris DocumentRoot “/srv/www/htdocs” dan <Directory “/srv/www/htdocs”>, /srv/www/htdocs diganti sesuai direktori yang anda inginkan misal /home/muksidin/web. Setelah itu nyalakan ulang service servernya dengan mengetik systemctl restart apache2.service.
Setelah konfigurasi diatas selesai, namun index.php tidak bisa menampilkan halaman yang semestinya seperti pada gambar berikut.

Jalankan perintah a2enmod php5 di terminal dengan login sebagai root.
Tutorial Menggunakan KDE Connect
Sebelum melanjutkan tulisan ini, penulis sangat berterima kasih kepada Albert Vaca atas usaha kerasnya untuk membuat sebuah aplikasi di lingkungan desktop KDE. KDE Connect memungkinkan setiap orang yang mempunyai perangkat genggam atau handphone (dengan sistem operasi Android) bisa terhubung dengan desktop KDE sehingga pengguna bisa melakukan kontrol penuh terhadap desktop.
Untuk bisa menggunakan KDE Connect pastikan bahwa desktop yang Anda gunakan adalah KDE. KDE Connect saat ini belum tersedia di repositori standard openSUSE, namun Anda bisa menginstalnya melalui repositori OBS. Caranya kunjungi https://software.opensuse.org/ kemudian pada kolom pencarian ketik kde-connect. Setelah terinstal, KDE-Connect bisa diakses melalui System Settings.
Agar bisa tersinkronisasi diantara dua device ( Android dan PC ) KDE-Connect juga harus sudah terinstal di device Android, untuk menginstalnya bisa dilakukan melalui PlayStore. Pastikan juga bahwa tersedia jaringan WiFi untuk koneksi diantara keduanya.
Di openSUSE, secara default kondisi firewall dalam kondisi enable atau running, sehingga device Android Anda tidak bisa terhubung ke PC karena adanya proteksi dari firewall tersebut. Oleh karena itu, agar PC terindetitas di Android maka firewall tersebut harus dimatikan. Untuk mematikan atau disable, Anda bisa menggunakan YaST2 dan pilih firewall kemudian klik button Stop Firewall Now.
Dari device Android buka aplikasi KDE-Connect, gunakan icon refresh untuk memperbarui perangkat yang tersedia.
Tap hostname atau id PC yang terindetitas, kemudian tap button Request Pairing.
Pada panel desktop akan muncul notifikasi permintaan pairing, pilih Accept.
Buka aplikasi KDE-Connect di PC melalui menu System Settings, jika Button (disamping nama device yang telah pair) berwarna hijau maka koneksi berhasil dan device Android dalam kondisi aktif.
Dengan melalui KDE-Connect Anda bisa menggunakan touchpad, multimedia control dan sinkronisasi melalui device Android.

Multimedia Remote Control, Audacious Music Player yang dikontrol melalui Device Android

Menggunakan touchpad melalui device Android
Selamat Mencoba 
Mengenang Bapak
Ketika saya kelas 6 SD, bapak menghentikan kegiatan ini karena saya asthma dan gak sembuh-sembuh. Kata dokter, debu dari merang alas lantai kandang ayam itu yang memicu asthma saya tidak sembuh. Saya tanya bapak kalau bapak menghentikan beternak ayam petelur ini nanti bagaimana kami anak-anaknya bisa beli buku. Dia bilang ibu masih menjahit dan bapak sudah mulai ada uang lebih yg penting saya sehat. Sejak itu asthma saya sembuh.
Bapak mengajarkan saya bermain catur ketika ada pertandingan catur dunia Karpov vs Korchnoi, dia bilang dengan bermain catur kita dilatih untuk berpikir 5-10 langkah ke depan, itu akan berguna untuk saya nanti. Dia juga mengajarkan kami berkebun menanam pisang, kelapa, cabai, dan memelihara anggrek di pekarangan rumah kami. Dia bilang semasa kecilnya berkebun dan bertani adalah pekerjaan anak laki-laki di Toraja ditambah membawa kerbau mandi di sungai Sa'dang dan menunggang kuda.
Bapak seorang altruistik, ia sangat memperhatikan saudara-saudaranya, keponakan-keponakannya, teman-temannya di kantor, bahkan kadang saya bingung karena, ketika kecil kami bukan orang berada walaupun tidak miskin, dia selalu membantu orang yang kesusahan. Tidak terhitung jumlahnya baik saudara atau bukan yang tinggal di rumah kami yang kamarnya hanya 3. Dia bahkan pelan-pelan menambah kamar di rumah kami bukan hanya untuk kami tapi untuk siapa saja yang datang dan tinggal di rumah kami.
Bapak orang yang sangat sederhana, pakaiannya berumur tahunan dan kalau sobek dia meminta ibu saya untuk memperbaikinya. Mobil kantornya Land Rover th 69 yang dia pakai 25 tahun tidak mau diganti. Bapak orang yang sangat tidak perduli dengan hal-hal yang material, dia tidak punya buku tabungan sampai dia pensiun, itupun karena uang pensiun harus ditransfer ke rekening bank. Jangan tanya kartu kredit atau deposito karena dia tidak mengerti. Dia bingung kalau orang bicara ekonomi, dia bilang semuanya akan lebih baik kalau orang hanya belanja sesuai dengan apa yang ada di kantongnya.
Bapak seorang yang sangat percaya kekuasaan Allah dan taat walaupun dia bukan tipe orang yang pintar memberi nasehat agama. Jika tidak sakit bapak selalu berusaha shalat berjamaah ke Masjid terutama shubuh, maghrib dan isya. Bapak seorang yang hangat, orang akan merasa kehilangan jika ia tidak datang ke masjid, ke warung korannya Mughni di dekat rumah atau jalan pagi di sekitar taman komplek.
Di akhir-akhir hidupnya dari 5 bersaudara sayalah anaknya yang paling dekat. Pekerjaan kakak saya mengharuskan dia keliling dunia dan Indonesia. Adik saya sejak 2001 bekerja untuk Airbus di Augsburg Jerman. Adik saya yang lain seorang dokter yang sedang pendidikan spesialis di RSCM dan kerjanya menuntut dia untuk selalu di RS. Adik saya yang paling kecil seorang dokter juga dan bertugas di Makassar.
Saya adalah teman ngobrol bapak, dia selalu menceritakan apa yang ada dalam pikirannya ke saya setiap pagi dan malam. Dia sangat terbuka kepada saya dan saya tahu dia bahagia dengan kondisi itu. Dia bangga dengan kakak saya seorang insinyur elektro yang kerjanya keliling dunia dan Indonesia. Dia sangat bangga dengan adik saya seorang engineer desainer pesawat di Airbus, dia juga sangat bangga dengan adik saya yang akan jadi dokter spesialis anak dan dokter spesialis penyakit dalam. Tapi walaupun dia tidak pernah bilang bahwa dia bangga dengan saya, saya tahu dia menganggap saya adalah anak yang paling bisa diandalkan. Perasaan yang tidak bisa diungkapkan dengan kata-kata.
Bapak mengajarkan saya untuk menjadi orang yang siap membantu siapa saja tanpa pamrih, mengajarkan saya menjadi orang yang sederhana dan menyayangi keluarga.
Bapak pernah bilang, kalau dia bisa meminta cara untuk mati, maka dia ingin dipanggil oleh Allah dengan cara yang mulia dan tidak merepotkan orang lain. Allah mengabulkan doanya. Jum'at 16 November 2012 / 2 Muharram 1434H di Jakarta Allah memanggilnya dan dengan wajah tersenyum Bapak menyambutnya. Bahkan pohon-pohon dan tanaman kesayangannya di samping rumah malam ini rebah untuk menghormatinya. Selamat jalan pak, saya tahu Bapak bahagia di tempat yang terbaik. Innalillaahii wa inna ilaihi rojiun.
Heartbeat dan DRBD
Implementasi heartbeat saja sangatlah mudah. Cukup mendownload, mengkompilasi dan mengkonfigurasi tiga buah file /etc/ha.d/ha.cf, /etc/ha.d/authkeys dan /etc/ha.d/haresources. Untuk drbd bisa download tarball dan jangan lupa untuk membaca dokumentasinya, karena drbd harus dikompilasi dengan kernel source secara baik, kalau tidak anda dapat menemui kesulitan dalam mem-probe modul drbd. Pada server ini saya menggunakan openSUSE 11.1 sehingga hidup jadi lebih mudah, tinggal gunakan 1-click install untuk heartbeat, drbd kernel module dan drbd user space, atau bisa juga dengan mengaktifkan repositori http://download.opensuse.org/repositories/server:/ha-clustering/
Konfigurasi Heartbeat
Pastikan anda menggunakan dua buah server untuk high availability cluster. Kalau hanya punya satu ya tidak perlu heartbeat dan drbd :-). Untuk penggunaan lebih dari 2 buah server sebaiknya menggunakan pacemaker dan openAIS karena dapat melakukan N-to-N atau N+1 cluster sampai jumlah yang teorithically tidak terbatas. Tetapi saya tidak akan menjelaskan pacemaker dan openAIS di sini.
Pada setiap server menggunakan dua buah ethernet card, atau bisa juga 1 ethernet card dan koneksi langsung antar kedua server dengan menggunakan null-modem cable.
Satu buah ethernet terhubung ke jaringan dan satu buah lagi sebaiknya dihubungkan antar server langsung menggunakan cross cable (tidak harus tetapi disarankan)
Pastikan ethernet bekerja dengan baik.
Pada skenario di atas eth0 real ip diset secara permanen dengan ifup, sedangkan virtual ip akan diset melalui file /etc/ha.d/haresources. Silakan ganti ip address sesuai dengan yang anda gunakan.
Konfigur file /etc/ha.d/ha.cf, /etc/ha.d/haresources, /etc/ha.d/authkeys. File-file ini harus sama di kedua server.
Contoh file ha.cf
keepalive 2
warntime 5
deadtime 15
initdead 90
udpport 694
auto_failback on
bcast eth0
node server1 server2
bcast eth0, maksudnya adalah ethernet yang akan digunakan oleh client untuk mengakses server. node, diikuti dengan nama server primary dan server secondary sesuai dengan hasil "uname -n"
Contoh file authkeys
Jika kedua server terhubung dengan kabel null-modem atau kabel cross anda dapat mengabaikan enkripsi dan mengisi file authkeys dengan misalnya:
auth 2
2 crc
Tetapi jika anda menggunakan jaringan, misalnya letak kedua server terpisah secara geografis maka penggunaan enkripsi sangat dianjurkan dengan format
auth num
num algorithm secret
Untuk membuatnya dapat gunakan script dibawah
# ( echo -ne "auth 1 1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
Selanjutnya jangan lupa set agar authkeys hanya bisa dibaca dan ditulis oleh root # chmod 0600 /etc/ha.d/authkeys
Contoh file /etc/ha.d/haresources
Konfigurasi haresources tanpa drbd / sebelum drbd diaktifkan misalnya
server1 IPaddr::10.8.2.100/24/eth0 named dhcpd apache2
Arti dari baris tersebut adalah:
server1 --> nama server primary sesuai "uname -n"
IPaddr::10.8.2.100/24/eth0 --> ipaddress virtual yang digunakan di eth0
named dhcpd apache2 --> nama services yang redundan
Anda dapat menset service heartbeat agar jalan di run level saat booting, misalnya dengan perintah "chkconfig heartbeat on" atau pada openSUSE dengan "insserv /etc/init.d/heartbeat". Saya sendiri di openSUSE lebih menyukai untuk menjalankannya melalui file /etc/init.d/after.local misalnya vim /etc/init.d/after.local:
#! /bin/sh
sleep 2
rcheartbeat start
Jangan lupa untuk mengcopy semua file konfigurasi yang anda buat di server1 ke server2 (gunakan scp or whatever) ha.cf, haresources, authkeys dan after.local (kalau anda pakai). Heartbeat sebenarnya menyediakan fasilitas mencopy konfigurasi dari node primary ke node cluster lainnya dengan ha_propagate. Coba cari filenya di /usr/share/heartbeat/ha_propagate atau di /usr/lib/heartbeat/ha_propagate. Saya sendiri lebih prefer menggunakan scp :-)
Dari server1 coba "ifconfig" maka kalau semuanya ok akan muncul eth0:0 dengan ip 10.8.2.100. Dari client coba ping dan ssh ip tersebut, kalau masuk ke 10.8.2.4 maka heartbeat sudah bekerja sempurna. Selanjutnya matikan service heartbeat di server1, cek dengan ifconfig bahwa eth0:0 sudah tidak ada. Masuk ke server2 dan cek dengan ifconfig, harusnya sekarang eth0:0 dengan ip 10.8.2.100 sudah diambil alih oleh server2. Untuk mengembalikan ke server1 maka aktifkan service heartbeat di server1. Kalau ini semua ok berarti service heartbeat sudah berjalan dengan sempurna. Anda dapat juga mentest dengan mematikan eth0 pada server1, dan yakinkan bahwa ip virtual eth0:0 juga diambil alih oleh server2.
Konfigurasi drbd
Drbd merupakan singkatan dari Distributed Replicated Block Device. Drbd akan me-mirror seluruh block device yang telah didefinisikan dan bekerja sebaga raid-1 over network. Konfigurasi drbd cukup mudah walaupun tidak semudah heartbeat :-P Anda butuh kesabaran. Beberapa hal yang perlu diperhatikan. User space dan kernel space harus dengan versi yang sama. Ada kejadian dimana seseorang mendownload tarball dan kemudian mengupdate instalasi drbd. Waktu menjalankan configure dia tidak mendefinisikan kernel directory, akibatnya user space drbd (misalnya drbdadm) meningkat versinya tetapi modul drbd.ko tidak terupdate. Akibatnya mesin bisa hang :-( Setidaknya dalam mengkonfigure jalankan ./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc --with-km
Selanjutnya jalankan:
# cd drbd
# make clean
# make KDIR=/path/to/kernel/source
Untuk pengguna openSUSE tidak perlu melakukan langkah-langkah ini cukup install menggunakan 1-click install seperti yang sudah saya sebutkan di awal tulisan.
Hal lain yang sering salah dilakukan waktu mengkonfigurasi drbd adalah membuat filesystem saat merepartisi disk untuk drbd device. Hal ini harus dihindari sampai modul drbd kita panggil untuk pertama kali. Berikut adalah langkah-langkahnya:
siapkan pastisi untuk /dev/drbd yang akan digunakan untuk saling bereplikasi dan biarkan partisi tanpa filesystem. Ukuran partisi akan menentukan berapa lama keduanya bersinkronisasi, makin besar ukuran partisi maka makin lama sinkronisasi mencapai kondisi Consistent. Selain itu bisa juga disiapkan satu partisi tambahan untuk metadata walaupun tidak mandatory. Ukuran partisi di kedua server haruslah sama.
Edit file /etc/drbd.conf menjadi:
# You can find an example in /usr/share/doc/drbd.../drbd.conf.example
#include "drbd.d/global_common.conf";
#include "drbd.d/*.res";
global{
usage-count yes;
}
common{
protocol C;
}
resource r0{
net{
after-sb-0pri discard-younger-primary;
after-sb-1pri discard-secondary;
after-sb-2pri disconnect;
}
on server1{
device /dev/drbd0;
disk /dev/cciss/c0d0p6;
address 10.8.2.4:7788;
meta-disk internal;
}
on server2{
device /dev/drbd0;
disk /dev/cciss/c0d0p6;
address 10.8.2.5:7788;
meta-disk internal;
}
}
Pada server1 & server2 jalankan perintah:
# modprobe drbd
# drbdadm up all
# cat /proc/drbd
akan muincul tampilan dikedua server seperti:
server1:~ # cat /proc/drbd
version: 8.2.7 (api:88/proto:86-88)
GIT-hash: a1b440e8b3011a1318d8bff1bb7edc763ef995b0 build by lmb@hermes, 2009-02-20 13:35:59
0: cs:Connected st:Secondary/Secondary ds:Inconsistent/Inconsistent C r---
ns:45542488 nr:0 dw:0 dr:45542488 al:0 bm:2779 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0
server2:~ # cat /proc/drbd
version: 8.2.7 (api:88/proto:86-88)
GIT-hash: a1b440e8b3011a1318d8bff1bb7edc763ef995b0 build by lmb@hermes, 2009-02-20 13:35:59
0: cs:Connected st:Secondary/Secondary ds:Inconsistent/Inconsistent C r---
ns:45542488 nr:0 dw:0 dr:45542488 al:0 bm:2779 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0
Selanjutnya buatlah metadata untuk drbd di setiap server
server1:~ # drbdadm create-md r0
server1:~ # rcdrbd start
server2:~ # drbdadm create-md r0
server2:~ # rcdrbd start
Kita akan menjadikan server1 sebagai primary node, karena iotu pada server1 jalankan:
server1:~ # drbdadm primary all
server1:~ # drbdadm connect all
Jika ada masalah, kemungkinan besar adalah karena sudah ada file system. Untuk menghapus file sistem tanpa mengubah partisi dapat menjalankan perintah
dd if=/dev/zero bs=512 count=512 of=/dev/your_partition
Bisa juga ditemukan atau adanya kesalahan saat menginisiasi drbd yang berakibat kedua disk sudah berada dalam kondisi Primary/Secondary Inconsistent/Inconsistent. Pada saat awal harusnya semua dalam kondisi Secondary/Secondary. Jika menemui masalah ini jalankan:
server1:~ # drbdadm -- --overwrite-data-of-peer primary all
Selanjutnya jalankan pada server 1
server1:~# drbdsetup /dev/drbd0 primary --overwrite-data-of-peer
Sekarang inisial sinkronisasi akan mulai berjalan.
server1:~ # cat /proc/drbd
version: 8.2.7 (api:88/proto:86-88)
GIT-hash: a1b440e8b3011a1318d8bff1bb7edc763ef995b0 build by lmb@hermes, 2009-02-20 13:35:59
0: cs:SyncSource st:Primary/Secondary ds:UpToDate/Inconsistent C r---
ns:36350976 nr:0 dw:0 dr:36351244 al:0 bm:2218 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:68502008
[=====>..............] sync'ed: 34.7% (66896/102392)M
finish: 53:31:01 speed: 348 (320) K/sec
Prosesnya cukup memakan waktu dan bergantung dari ukuran disk yang digunakan sebagai device drbd. Bersabarlah dan menunggu sampai prosesnya selesai. Saya selalu menunggu sinkronisasi sampai selesai 100% untuk yang pertama kali sebelum melakukan apapun (walaupun tidak harus). Jika sudah selesai maka hasilnya akan seperti:
server1:~ # cat /proc/drbd
version: 8.2.7 (api:88/proto:86-88)
GIT-hash: a1b440e8b3011a1318d8bff1bb7edc763ef995b0 build by lmb@hermes, 2009-02-20 13:35:59
0: cs:Connected st:Secondary/Secondary ds:UpToDate/UpToDate C r---
ns:45542488 nr:0 dw:0 dr:45542488 al:0 bm:2779 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0
server2:~ # cat /proc/drbd
version: 8.2.7 (api:88/proto:86-88)
GIT-hash: a1b440e8b3011a1318d8bff1bb7edc763ef995b0 build by lmb@hermes, 2009-02-20 13:35:59
0: cs:Connected st:Secondary/Secondary ds:UpToDate/UpToDate C r---
ns:0 nr:44887544 dw:44887544 dr:0 al:0 bm:2740 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0
Selanjutnya pada server1 kita akan membuat file system. Cukup dilakukan di server1, karena server2 akan mengikuti:
server1:~ # drbdadm primary all
server1:~ # mkfs.ext3 /dev/drbd0
sekarang kita siapkan directory untuk mysql di server1
mkdir /data-mysql
mount -t ext3 /dev/drbd0 /data-mysql
mv /var/lib/mysql /data-mysql
ln -s /data-mysql/mysql /var/lib/mysql
umount /data-mysql
di server2:
mv /var/lib/mysql /tmp
ln -s /data-mysql/mysql /var/lib/mysql
Edit file /etc/ha.d/haresources di server1 dan server2 menjadi
server1 IPaddr::10.8.2.100/24/eth0 drbddisk::r0 Filesystem::/dev/drbd0::/data-mysql::ext3 named dhcpd apache2 mysql
Selanjutnya tinggal memanggil drbd dan heartbeat di runlevel 3 dan 5 setiap kali server di boot. Saya sendiri di openSUSE mmenggunakan /etc/init.d/after.local untuk memanggil drbd dan heartbeat. Ini hanya untuk memastikan bahwa drbd dan heartbeat dipanggil terakhir kali setelah semua service yang lain berjalan. Cukup buat file /etc/init.d/after.local dan isikan misalnya:
#!/bin/sh
sleep 1
rcdrbd start
sleep 2
rcheartbeat start
Sekarang kita tinggal mengujinya. Apakah service-service yang didefinisikan di /etc/ha.d/haresources akan berpindah ke server2 jika server1 dimatikan. Tahu kan cara menguinya? Kira-kira sama dengan cara menguji heartbeat di atas.
Have a lot of fun
Asterisk 1.6.1 on openSUSE 11.1 (Part 5)
One thing I found really annoying is the echo if we connect asterisk to PSTN line. I use digium TDM 410P and leave the card without tune it will give annoying echo. In my earlier post (Part 2) I explain that by running /usr/sbin/dahdi_genconf dahdi will automatically create /etc/dahdi/system.conf file that already contain information about hardware echo canceller. First thing you should remember if you have the budget is buy a card with hardware echo canceller. It will let the card to manage the echo without give the processor too much task to reduce it. After that you should tune the card. Luckily Digium give the best tools to tune the card named fxotune. To tune your card first shutdown the asterisk service and then run:
# /usr/sbin/fxotune -i 0
I put 0 (zero) because to dial an outside line I set the asterisk configuration to use 0. You should change it to whatever number you use. fxotune will create /etc/fxotune.conf file to put all the configuration it creates to reduce the echo. Pleas read "man fxotune" for more explanation about the tools.
To enable Asterisk to use the card configuration every time we boot the server we need a slight modification of init script. We should call the fxotune before we call Asterisk, you can either modify the init script of Asterisk to call fxotune before it call the Asterisk or you can modify /etc/init.d/after.local (yes, I use openSUSE). I prefer to use after.local. Create /etc/init.d/after.local and fill the lines below:
# ! /bin/sh
/usr/sbin/fxotune -s
sleep 1
/etc/init.d/asterisk161 start
Also you need to remove asterisk service from init script
# insserv -r /etc/init.d/asterisk161
You can boot the server and hear the difference. If everything goes well you can hear no echo :-)
Now let's take a look back to our extension.conf that I already give in the part 3.
[recordings]
exten => 500,1,Answer
exten => 500,2,Playback(en/silakanrekamgreeting)
exten => 500,3,Record(en/mymessage:gsm)
exten => 500,4,Playback(en/pesananda)
exten => 500,5,Playback(en/mymessage)
exten => 500,6,Playback(en/tekan1)
exten => 500,7,WaitExten(3)
exten => t,1,Playback(en/maafmohonulangi)
exten => t,2,Goto(500,5)
exten => i,1,Playback(en/pesanandasalah)
exten => i,2,Goto(500,5)
exten => 1,1,System(/bin/mv /var/lib/asterisk/sounds/en/mymessage.gsm /var/lib/asterisk/sounds/en/autoattendant.gsm)
exten => 1,2,Playback(en/terimakasih)
exten => 1,3,Playback(en/tekan3)
exten => 2,1,Goto(500,1)
exten => 3,1,Goto(500,1)
exten => 4,1,Hangup
include => internal-sip
This is the context about recording that we put it in extensions.conf and also in sip.conf, that's why I put "include => internal-sip" in the bottom of the context. We create the special extension 500 to record the greeting for our system. We will put the record as greeting, when someone from outside call our lines, then Asterisk will play this greeting. I will explain it to you don't worry :-). Those lines means:
If dial 500 then answer.
Play the sound file /var/lib/asterisk/sounds/en/silakanrekamgreeting.gsm. You can record a custom sound file which contain something like "Please record your greeting after the beep", save it as gsm format and call it from here.
Record your message (say the greeting you want to record) and put it as /var/lib/asterisk/sounds/en/mymessage.gsm
Play the file /var/lib/asterisk/sounds/en/pesananda.gsm. You can record a custom sound file which contain something like "Your greeting is", save it as gsm format and call it from here.
Play your record greeting that just you record in step 3.
Play the sound file /var/lib/asterisk/sounds/en/tekan1.gsm. You can record a custom sound file which contain something like "Please press 1 to save your message", save it as gsm format and call it from here.
Wait 3 second for pressing 1
t,1 means that if 3 seconds already time-out then play the sound file /var/lib/asterisk/sounds/en/maafmohoulangi.gsm. You can record a custom sound file which contain something like "Please re-record your message", save it as gsm format and call it from here.
t,2 go to point 6 above and repeat the steps.
i,1 means if you press another number in step 7 (you don't record the message) then play the sound file /var/lib/asterisk/sounds/en/pesanandasalah.gsm. You can record a custom sound file which contain something like "Sorry I didn't get that", save it as gsm format and call it from here.
i,2 go to point 6 above and repeat the steps.
1,1 if you press 1 in step 7 then asterisk will move /bin/mv /var/lib/asterisk/sounds/en/mymessage.gsm to /var/lib/asterisk/sounds/en/autoattendant.gsm
1,2 means play the sound file /var/lib/asterisk/sounds/en/terimakasih.gsm. You can record a custom sound file which contain something like "thankyou", save it as gsm format and call it from here.
1,3 means play the sound file /var/lib/asterisk/sounds/en/tekan3.gsm. You can record a custom sound file which contain something like "press 3 to record another message", save it as gsm format and call it from here.
include => internal-sip, means that asterisk will see also [recording] context in [internal-sip] context, usually we manage [internal-sip] in sip.conf.
Now ti's time to configure /etc/asterisk/sip.conf. This file manage the sip for ip phone and other peripheral in our setup. I use several desk ip-phone, wireless ip-phone (Polycom Kirk DECT) and also GSM gateway (Zed, Musitel etc), all of it running well. My sip.conf looks something like:
[general]
port = 5060
bindaddr = 10.7.1.120
disallow=all
allow=all
allow=ulaw
allow=gsm
context=internal-sip
;--------------------xxxxx site ---------------------------
;Polycom IP330
[8001]
type=friend
host=dynamic
dtmfmode=rfc2833
language=en
context=internal-sip
nat=no
canreinvite=no
username=TELEPH01
userid=8001
callerid=TELEPH01 <8001>
mailbox=8001
allow=all
qualify=yes
[8002]
type=friend
host=dynamic
dtmfmode=rfc2833
language=en
context=internal-sip
nat=no
username=TELEPH02
userid=8002
callerid=TELEPH02 <8002>
mailbox=8002
allow=all
qualify=yes
[8006]
type=friend
host=dynamic
dtmfmode=rfc2833
language=en
;context=internal-sip
context=recordings
nat=no
canreinvite=no
username=TELEPH06
userid=8006
callerid=DPTELEPH06 <8006>
mailbox=8006
allow=all
qualify=yes
; KIRK DECT 3040 at site
[8020]
type=friend
host=dynamic
dtmfmode=rfc2833
language=en
context=internal-sip
nat=no
username=TELEPH20
userid=8020
callerid=TELEPH20 <8020>
mailbox=8020
allow=all
qualify=yes
;Zed GSM GATEWAY
[8031]
type=peer
insecure=very
disallow=all
allow=ulaw
allow=alaw
allow=gsm
context=internal-sip
host=10.7.1.31
username=GS8
permit=10.7.1.31/255.255.255.255
qualify=yes
canreinvite=no
call-limit=4
dtmfmode=rfc2833
nat=no
[8032]
type=peer
insecure=very
disallow=all
allow=ulaw
allow=alaw
allow=gsm
context=internal-sip
host=10.7.1.32
username=GS8
permit=10.7.1.32/255.255.255.255
qualify=yes
canreinvite=no
call-limit=4
dtmfmode=rfc2833
nat=no
[8001] and [8006] are the desk ip-phone, [8020] is wireless ip-phone, and [8031] and [8032] are Zed gsm gateway. Please pay attention to [8001] and [8006] almost all the configuration are same, except one line.context. For 8001 context=internal-sip but 8006 context=recording. This line tell us that for recording / greeting purpose we will use the phone with extension 8006. So we can only dial 500 and do the recording in that phone as we set it in /etc/asterisk/extension.conf. You cannot dial 500 and do recording in the phone with the sip configuration doesn't include the line context=recording. I hope you get it :-)
For gsm gateway, I set it up just like the other as internal-sip. But there are a lot of gsm gateways out there and every brand has their own configuration so please read the manual of your gsm gateway and set it up properly. You can use it in front of digium as fxo/fxs or you can also set it up as sip extension depend on you gsm gateway type.
Let's move to chan_dahdi.conf that I already attached several post earlier. Let me remind part of the file:
[channels]
language=en
context=internal-fxo
signalling=fxs_ks
rxwink=300
cidstart=polarity
answeronpolarityswitch=no
hanguponpolarityswitch=no
pulsedial=no
cidsignalling=dtmf
busydetect=yes
busycount=6
......
echocanceller=mg2,1-12
channel => 1-12
there is line with "context=internal-fxo". Basically it means that all the channels 1 through 12 are in the context of internal-fxo. By doing this all the lines will follow the setup we already done in extensions.conf under context [internal-fxo], please take a look extensions.conf in earlier part. You got it, don't you :-) ?
Let me finish this asterisk session, 5 part seem not enough but I'm afraid this will make my blog so bore :-). So final notes is about iax.conf. If you have several locations with asterisk server in every location you can connect the server and make conversation like you dial an extension. First of all you should setup a VPN between the site. I presume you already now how to set it up, there are a lot of howto in internet. Then you should configure the iax.conf. I already give the example in previous post, let me explain. Take attention in this part:
[general]
bindport=4569
bindaddr=10.8.1.120
.......................
register => ncpabxsv:0000@10.1.1.120:4569
register => dppabxsv:0000@10.7.1.120:4569
register => ygpabxsv:0000@10.8.1.120:4569
This server address is 10.8.1.120 and the port 4569 use for the iax. We should register all the server including this server in the 3 lines at the bottom.
Also we should make the setup for every server like below:
[ncpabxsv]
type=friend
auth=md5
secret=0000
context=local
host=dynamic
defaultip=10.1.1.120
qualify=yes
requirecalltoken=no
[dppabxsv]
type=friend
auth=md5
secret=0000
context=local
host=dynamic
defaultip=10.7.1.120
qualify=yes
requirecalltoken=no
[ygpabxsv]
type=friend
auth=md5
secret=0000
context=local
host=dynamic
defaultip=10.8.1.120
qualify=yes
requirecalltoken=no8020>8006>8002>8001>
In all site with the asterisk server we should configure iax.conf so every server can be registered with each other. By doing this you can call other site with extension. Now take a look again our extensions.conf in this section:
[internal-sip]
exten => _1.,1,Dial(IAX2/ygpabxsv:0000@10.1.1.120/${EXTEN:1}@local)
exten => _1.,2,Hangup()
exten => _2.,1,Dial(IAX2/ygpabxsv:0000@10.7.1.120/${EXTEN:1}@local)
exten => _2.,2,Hangup()
Above lines means:
_1. --> if you start a call with "pressing 1 then follow by extension then you connect to asterisk server in ip address 10.1.1.120". 10.1.1.120/${EXTEN:1} means the asterisk server in ip 10.1.1.120 will stripe the first digit.
_2. --> if you start a call with "pressing 2 then follow by extension then you connect to asterisk server in ip address 10.7.1.120". 10.7.1.120/${EXTEN:1} means the asterisk server in ip 10.7.1.120 will stripe the first digit.
I think I already explain everything that you should know about how to setup and configure an asterisk server, make a conference room, setting up extension, and even connecting between two or more asterisk server using iax. Now it is your turn :-) You can experiment with my setting until you get used to it and try another configuration that match with what you want.
Don't forget to have a lot of fun.































