Pengertian Master dan Slave
Master,
bisa diartikan harddisk yang memiliki posisi utama. Sedangkan Slave,
bisa diartikan harddisk yang memiliki posisi kedua. Lalu bilakah sebuah
harddisk menjadi master atau menjadi slave? Sebuah harddisk yang
menjadi master, umumnya harddisk yang memiliki Operating system atau
harddisk yang berdiri sendiri (terdapat hanya satu harddisk). Dan sebuah
harddisk yang menjadi slave adalah harddisk kedua yang di tandem
(bersatu dalam satu kabel data) dengan harddisk master. Atau sebuah
slave adalah sebuah optical disk yang di tandem dengan harddisk master.
Pada sebuah motherboard, umumnya terdapat 2 buah slot IDE. Slot IDE yang pertama disebut IDE 1 atau Primary. Sedang slot (soket) IDE yang kedua disebut IDE 2 atau Sekondary. Dengan 2 soket IDE tersebut, kita bisa memasang hingga 4 buah Device yang berupa Harddisk dan CD/DVD (optical disk).
Pada sebuah motherboard, umumnya terdapat 2 buah slot IDE. Slot IDE yang pertama disebut IDE 1 atau Primary. Sedang slot (soket) IDE yang kedua disebut IDE 2 atau Sekondary. Dengan 2 soket IDE tersebut, kita bisa memasang hingga 4 buah Device yang berupa Harddisk dan CD/DVD (optical disk).
Singkatnya sebagai berikut :
- Bila anda memiliki 1 harddisk dalam sebuah komputer, disarankan menggunakan Soket IDE1 (Primary) lalu menyetting jumper dalam posisi master (disebut Primary Master).
- Bila anda memiliki 1 harddisk yang memiliki operating system dan sebuah harddisk lain yang anda gunakan sebagai data atau sebuah CD/DVDRom, disarankan menggunakan soket IDE1 (Primary) pada harddisk yang memiliki OS dengan posisi master (disebut Primary Master) dan harddisk lain atau CD/DVDRom pada IDE2 (Sekondary) dengan posisi Master (disebut Sekondary Master).
- Bila anda memiliki sebuah harddisk yang memiliki operating system, sebuah harddisk untuk data, dan sebuah CD/DVD Rom (artinya ada 3 device) maka disarankan harddisk yang memiliki Operating system pada posisi IDE 1 sebagai Master (Primary Master). Harddisk untuk data pada posisi Slave (Primary Slave). Dan sebuah CD/DVDRom pada posisi Sekondary Master.
- Bila anda memiliki 2 harddisk dan 2 buah CD/DVDRom. Maka 1 harddisk berfungsi sebagai Primary Master, sebuah lagi sebagai Primary Slave. Sebuah CD/DVD sebagai Sekondary Master dan sebuah CD/DVD yang lain sebagai Sekondary Slave.
1. Sekilas Tentang LDAP
LDAP (Lightweight Directory Access Protocol)
merupakan suatu network protokol yang digunakan untuk mengakses
direktori. Pengertian direktori disini adalah sekumpulan informasi yang
disusun berdasarkan hirarki tertentu. Pada dasarnya
LDAP merupakan perkembangan dari X.500 direktori service. Informasi pada direktori, disebut juga atribut, dapat berupa informasi tentang account seseorang, informasi hardware, dan informasi yang lain tergantung schema yang tersedia. Bahkan
kita pun bisa membuat schema sendiri.
LDAP merupakan perkembangan dari X.500 direktori service. Informasi pada direktori, disebut juga atribut, dapat berupa informasi tentang account seseorang, informasi hardware, dan informasi yang lain tergantung schema yang tersedia. Bahkan
kita pun bisa membuat schema sendiri.
Pada artikel ini digunakan operating sistem Linux
Debian Etch, dan OpenLDAP 2.3.25-1. Sedangkan komputer yang digunakan
adalah komputer PIV 2,8GHz dan AMD Athlon 64 3000+
dengan harddisk ~40GB.
dengan harddisk ~40GB.
2. Instalasi dan Konfigurasi LDAP
Untuk instalasi LDAP jalankan perintah berikut pada consoleroot@ldap1:/#apt-get install slapd ldap-utils
Lalu isi semua pertanyaan yang muncul dengan data
yang diinginkan. Contoh berikut data yang dimasukkan pada saat
konfigurasi awal
Omit OpenLDAP server configuration? no
DNS domain name: example.org
Name of your organization: example_organization
Admin password: ldap
Database backend to use: BDB
Do you want your database to be removed when slapd is purged? no
Allow LDAPv2 protocol? no
Setelah proses konfigurasi awal telah selesai maka
root direktori LDAP sudah terbentuk. Dapat dilakukan query untuk
mengetahui keberhasilan konfigurasi awal dengan perintah berikut.
root@ldap1:/#ldapsearch -x
# extended LDIF
#
# LDAPv3
# base <> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# example.org
dn: dc=example,dc=org
objectClass: top
objectClass: dcObject
objectClass: organization
o: example.org
dc: example
# admin, example.org
dn: cn=admin,dc=example,dc=org
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
# search result
search: 2
result: 0 Success
# numResponses: 11
# numEntries: 10
Ok, kita telah membangun root dari LDAP. Langkah
berikutnya adalah membuat struktur selanjutnya. Ok. Karena LDAP yang
dirancang adalah untuk authentifikasi sistem maka kita akan membuat dua
sub tree yaitu group dan people. Sub tree group berisi semua group yang
berada pada sistem, sedangkan sub tree people berisi semua user yang
berada pada sistem. Untuk menambahkan sub tree tersebut, buatlah sebuah
file dengan nama base.ldif yang berisi:
dn: ou=People,dc=example,dc=org
ou: People
objectClass: top
objectClass: organizationalUnit
dn: ou=Group,dc=example,dc=org
ou: Group
objectClass: top
objectClass: organizationalUnit
File tersebut merupakan file berformat ldif (file
yang digunakan oleh LDAP untuk input/output data). Setelah file tersebut
terbentuk maka kita tambahkan struktur direktorinya dengan perintah:
root@ldap1:/#ldapadd -x -D "cn=admin,dc=example,dc=org" -W -f base.ldif
Anda akan diminta untuk memasukkan password admin.
Ok, struktur utama telah terbentuk sekarang kita mencoba untuk menambah
suatu user. Untuk itu buat file ldif lagi dengan nama user.ldif yang
berisi:
dn: cn=keuangan,ou=Group,dc=example,dc=org
objectClass: posixGroup
objectClass: top
cn: ldapusers
userPassword: {crypt}x
gidNumber: 9000
dn: cn=dian,ou=People,dc=example,dc=org
cn: Myuser
objectClass: posixAccount
objectClass: shadowAccount
objectClass: inetOrgPerson
sn: User
uid: myuser
uidNumber: 1025
gidNumber: 9000
homeDirectory: /tmp
Edit file user.ldif tersebut sesuai dengan kebutuhan
user dan group Anda. Sama seperti ketika menambahkan struktur utama
direktori, lakukan hal yang sama hanya saja dengan input file user.ldif.
Perintah untuk menambahkan user dan group tersebut adalah sebagai
berikut:
root@ldap1:/#ldapadd -x -D "cn=admin,dc=example,dc=org" -W -f user.ldif
Konfigurasi untuk PAM dan libnss akan dilewati
karena berkaitan dengan judul pada artikel ini yaitu master-slave LDAP
server dan bukan LDAP server authentifikasi. Sorry 
3. Instalasi dan konfigurasi master-slave LDAP Server
OK, dari pembahasan sebelumnya telah dilakukan cara
instalasi dan konfigurasi LDAP server. Untuk mengkonfigurasi
master-slave LDAP server, maka perlu ditentukan mana yang menjadi server
master dan mana yang menjadi server slave. Setelah menentukan langkah
berikutnya adalah meduplikatkan struktur direktori pada master LDAP
server ke masing-masing slave LDAP server sehingga terjadi replika. Atau
jika tidak ingin terlalu ribet, maka master LDAP dibuat kosong saja
sehingga memudahkan replikasi awalnya.
Pada dasarnya, replikasi pada LDAP dilakukan oleh
program bernama slurpd dan untung saja program tersebut dibundel
langsung oleh slapd sehingga tidak perlu menginstall program lagi
.
Untuk konfigurasi pada master LDAP server agar bisa mereplikasi
databasenya pada slave LDAP server maka perlu ditambahkan entry sebagai
berikut pada file /etc/ldap/slapd.conf.
replica host=slave.example.org:389 tls=no
binddn=”cn=admin,dc=ldap,dc=example,dc=com”
bindmethod=simple
credentials=[passwordnya]
.
.
.
[sebanyak slave yang dibutuhkan]
replogfile /var/lib/ldap/replog.log
Konfigurasi diatas mengkondisikan bahwa kita sama
sekali tidak memakai tls untuk server LDAP master dan slavenya. Yang
perlu diperhatikan adalah field binddn dan credentials. Field binddn
digunakan untuk login ke slave LDAP server dan user tersebut harus
mempunyai hak untuk mengupdate database pada slave LDAP server.
Sedangkan field credentials merupakan password dari user tersebut. Field replogfile digunakan untuk mendebug replika yang dilakukan oleh server master ke server slave.
Untuk konfigurasi pada masing-masing slave LDAP
server, maka yang perlu ditambahkan entry sebagai berikut pada
/etc/ldap/slapd.conf.
updatedn "cn=admin,dc=example,dc=org"
Konfigurasi diatas mengindikasikan bahwa user admin
dan user untuk update adalah sama sehingga kita tidak perlu menambahkan
password. Ini juga untuk efisiensi
OK semua sudah selesai sekarang tinggal testing.
4. Testing dan debug
OK kita telah siap untuk mendebug. Start semua
service LDAP pada master dan slave. KIta coba sedikit melakukan
penambahan data. Misalkan kita mencoba dengan membuat sebuah file ldif
dengan isi sebagai berikut.
dn: cn=coba,ou=Group,dc=example,dc=org
objectClass: groupofUniqueNames
objectClass: top
uniqueMember: cn=coba,ou=People,dc=example,dc=org
cn: coba
dn: cn=coba,ou=People,dc=example,dc=org
objectClass: person
objectClass: inetOrgPerson
objectClass: top
userPassword: {CRYPT}$1$2r6ycuds$aeO5DzN30cHMRWa59fxkB.
cn: coba
sn: coba
Misalkan file tersebut disimpan dengan nama
coba.ldif. Untuk menambahkan entry tersebut lakukan perintah berikut
pada master LDAP server.
root@ldap1:/#ldapadd -x -D "cn=admin,dc=example,dc=org" -W -f coba.ldif
Untuk melihat lognya dapat anda lihat pada
/var/lib/ldap/replog.log. Jika berhasil maka seharusnya data tersebut
juga ada pada masing-masing slave LDAP server. Jika melihat replog.log
maka akan terlihat keluaran sebagai berikut.
replica: slave.example.org:389
time: 1162740692
dn: cn=coba,ou=Group,dc=example,dc=org
changetype: add
objectClass: groupOfUniqueNames
objectClass: top
uniqueMember: cn=coba,ou=People,dc=example,dc=org
cn: coba
structuralObjectClass: groupOfUniqueNames
entryUUID: 75478270-012e-102b-976c-05894c1414ee
creatorsName: cn=admin,dc=example,dc=org
createTimestamp: 20061105153132Z
entryCSN: 20061105153132Z#000000#00#000000
modifiersName: cn=admin,dc=example,dc=org
modifyTimestamp: 20061105153132Z
replica: slave.example.org:389
time: 1162740692
dn: cn=coba,ou=People,dc=example,dc=org
changetype: add
objectClass: person
objectClass: inetOrgPerson
objectClass: top
userPassword:: e0NSWVBUfSQxJHVRaGE5WGJ1JC5pU0lVUHBUdHB3Mjd6TDhBb0xDWTA=
cn: coba
sn: coba
structuralObjectClass: inetOrgPerson
entryUUID: 7547dd42-012e-102b-976d-05894c1414ee
creatorsName: cn=admin,dc=example,dc=org
createTimestamp: 20061105153132Z
entryCSN: 20061105153132Z#000001#00#000000
modifiersName: cn=admin,dc=example,dc=org
modifyTimestamp: 20061105153132Z
0 komentar:
Posting Komentar