BG7: Baz Şablon Sunucu Konfigürasyonu
Baz şablon sunucumuza (basecentos7min) gerekli yazılımları yükledik. Şimde bazı ayarları yapılandıracağız.
1. Ağ ayarlarının kontrolü
İşletim sistemi kurulumu esnasında ağ ayarlarını yapmıştık. Ağ ayarları deyince gözümüz korkmasın basit bir kaç değerden ibaret. ip, gateway, dns server, subnetmask ve hostname.
2. Hosts dosyasını düzenleme
Her bilgisayar aslında kendi içinde küçük bir dosyada isim çözümlemesi tutar. Linux makinelerde bu dosya /etc/hosts
dizinindedir. Biz önceki yazımızda cluter ip planlamasını yapmış ve sunucularımıza node1, node2…,node6 şeklinde isimler öngörmüştük. Şuan üzerinde çalıştığımız sunucu kopyalanacak olan baz sunucu olduğuna göre hosts dosyasına şimdiden tüm cluster ip ve hostname’lerini yazalım sonradan tek tek uğraşmayalım. Bunun için az önce yüklediğimiz nano editörü kullanacağım. Gıcık vi’den kurtuldum 🙂
[root@basecentos7min ~]# nano /etc/hosts
aşağıdaki listeyi nano editöre giriyotuz. Girdikten sonra cat
komutuyla kontrol ediyoruz.
[root@basecentos7min ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.150.50 basecentos7min.datalonga.com basecentos7min 192.168.150.51 node1.datalonga.com node1 192.168.150.52 node2.datalonga.com node2 192.168.150.53 node3.datalonga.com node3 192.168.150.54 node4.datalonga.com node4 192.168.150.55 node5.datalonga.com node5 192.168.150.56 node6.datalonga.com node6
3. Network Yapılandırma Dosyası
Network yapılandırma dosyasını nano metin editör ile açarak aşağıdaki değişiklikleri yapıyoruz.
[root@basecentos7min ~]# nano /etc/sysconfig/network [root@basecentos7min ~]# cat /etc/sysconfig/network NETWORKING=yes HOSTNAME=basecentos7min.datalonga.com GATEWAY=192.168.150.2
Son hali yukarıda görüldüğü gibi olacak. HOSTNAME için domain adını kullanmayı unutmayın.
4. Ağ bağdaştırıcısı (Ethernet Kartı) Ayarlarının kontrolü
İşletim sistemi kurarken ağ kartıyle ilgili bazı ayarlamalar yapmıştık. Burada onu tekrar kontrol edelim. Gerekirse düzeltmeler yapalım.
[root@basecentos7min ~]# nano /etc/sysconfig/network-scripts/ifcfg-ens33 [root@basecentos7min ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="none" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="no" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stable-privacy" NAME="ens33" UUID="c191f958-fa39-4d1c-a5be-2cf303bb6d0a" DEVICE="ens33" ONBOOT="yes" IPADDR="192.168.150.50" PREFIX="24" GATEWAY="192.168.150.2" DNS1="192.168.150.2" DNS2="8.8.8.8"
Network servisini yeniden başlatalım.
[root@basecentos7min ~]# systemctl restart network
İnternete hala çıkabiliyor muyuz? Google’a ping atarak “Google. Orada mısın?” diyelim.
[root@basecentos7min ~]# ping www.google.com PING www.google.com (216.58.206.196) 56(84) bytes of data. 64 bytes from sof02s28-in-f4.1e100.net (216.58.206.196): icmp_seq=1 ttl=128 time=115 ms 64 bytes from sof02s28-in-f4.1e100.net (216.58.206.196): icmp_seq=2 ttl=128 time=25.8 ms 64 bytes from sof02s28-in-f4.1e100.net (216.58.206.196): icmp_seq=3 ttl=128 time=389 ms 64 bytes from sof02s28-in-f4.1e100.net (216.58.206.196): icmp_seq=4 ttl=128 time=25.9 ms
evet çıkıyoruz sorun yok.
5. SELinux’u kapatma
SELinux (Securrity-Enhanced Linux), erişim kontrol denetimi sağlıyor. Biz cluster’ımızı Ambari ile kurmayı planladık. Kurulum esnasında Ambari’nin yarattığı servis hesapları ile ilgili erişim sorunları çıkmaması ve kurulumun aksamaması için SELinux’u ben kalıcı olarak kapatacağım. Ancak canlı ortamda bunu yapmamak gerekir. SELinux’u kalıcı olarak kapatmak için /etc/selinux/config
dosyası içindeki SELINUX özelliğini disabled
yapacağız.
[root@basecentos7min ~]# nano /etc/selinux/config [root@basecentos7min ~]# cat /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of three two values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
Önce nano editörü ile doyanın içine girip değeri değiştirdim sonra da cat ile kontrol ettim, SELINUX=disabled
olmuş.
6. Firewalld/ip tables’ı kapatma
Yine kurulum esnasında Ambari bazı portları kullanmak isteyecektir. Linux fireawall/iptables’dan bunları tek tek kapatmak yerine ben tamamen kapatıyorum.
[root@basecentos7min ~]# systemctl stop firewalld [root@basecentos7min ~]# systemctl disable firewalld [root@basecentos7min ~]# systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1)
7. Lokal Dili İngilizce Yapma
Her ne kadar işletim sistemi kurulumu esnasında dili Türkçe ayarlamış olsak da hata ve ikazları daha iyi anlamk ve aynı hata ve ikazlarla ilgili çözümlere internette daha kolay ulaşmak için dili tekrar İngilizce yapıyoruz.
[root@basecentos7min ~]# localectl set-locale LANG=en_US.UTF-8 [root@basecentos7min ~]# localectl System Locale: LANG=en_US.UTF-8 VC Keymap: us X11 Layout: n/a
8. ipv6 Kapatma
Aşağıdaki komutları giriyoruz.
[root@basecentos7min ~]# sysctl -w net.ipv6.conf.all.disable_ipv6=1 net.ipv6.conf.all.disable_ipv6 = 1 [root@basecentos7min ~]# sysctl -w net.ipv6.conf.default.disable_ipv6=1 net.ipv6.conf.default.disable_ipv6 = 1 [root@basecentos7min ~]# cat /proc/sys/net/ipv6/conf/all/disable_ipv6 1
Ayarın kalıcı olması için /etc/sysctl.conf
içine girip aşağıdaki satırları dosyanın son satırına ekliyoruz.
[root@basecentos7min ~]# nano /etc/sysctl.conf net.ipv6.conf.all.disable_ipv6=1 net.ipv6.conf.default.disable_ipv6 = 1
Kontrol yapalım:
[root@basecentos7min ~]# cat /proc/sys/net/ipv6/conf/all/disable_ipv6 1
Sonuçta 1 görmeliyiz. Bu ipv6’nın kapandığı anlamına gelir.
9. Transparent Huge Pages (THP) Compaction’ı Kapatma
Cloudera ve Hortonworks uzmanlarına göre THP sıkılaştırması Hadoop performansını kötüleştiriyor. Bu sebeple birleştirmeyi (dfragmentation) kapatmak gerekiyor. Önce THP ne durumda görelim:
[root@basecentos7min ~]# cat /sys/kernel/mm/transparent_hugepage/enabled [always] madvise never [root@basecentos7min ~]# cat /sys/kernel/mm/transparent_hugepage/defrag [always] madvise never
Açık. Temelli kapatmak için aşağıdaki işlemleri yapıyoruz.
[root@basecentos7min ~]# nano /etc/systemd/system/disable-thp.service [root@basecentos7min ~]# cat /etc/systemd/system/disable-thp.service [Unit] Description=Disable Transparent Huge Pages (THP) [Service] Type=simple ExecStart=/bin/sh -c "echo 'never' > /sys/kernel/mm/transparent_hugepage/enabled && echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag" [Install] WantedBy=multi-user.target
Systemd deamon u çalıştırıyoruz ve oluşturduğumuz scriptleri (disable-thp.service ve disable-thp.service) çalıştırıyoruz.
[root@basecentos7min ~]# systemctl daemon-reload [root@basecentos7min ~]# systemctl start disable-thp [root@basecentos7min ~]# systemctl enable disable-thp Created symlink from /etc/systemd/system/multi-user.target.wants/disable-thp.service to /etc/systemd/system/disable-thp.service.
Tekrar kontrol edelim kapanmışlar mı?
[root@basecentos7min ~]# cat /sys/kernel/mm/transparent_hugepage/enabled always madvise [never] [root@basecentos7min ~]# cat /sys/kernel/mm/transparent_hugepage/defrag always madvise [never]
Evet gördüğümüz gibi ikisi de never oldu.