CentOS/RHEL 7'de Cloudera Manager Nasıl Kurulur ve Yapılandırılır - Bölüm 3
Bu makalede, endüstriyel uygulamalara uygun olarak Cloudera Manager'ı kurma sürecini adım adım anlattık. Bölüm 2'de Cloudera Önkoşullarını zaten inceledik, tüm sunucuların mükemmel şekilde hazırlandığından emin olun.
Gereksinimler
- Hadoop Sunucusunu CentOS/RHEL 7'de Dağıtmaya Yönelik En İyi Uygulamalar – Bölüm 1
- Hadoop Ön Koşullarını Kurma ve Güvenlik Güçlendirmesi – Bölüm 2
Burada 2 master ve 3 işçiden oluşan 5 düğümlü kümeye sahip olacağız. Kurulum prosedürünü göstermek için 5 AWS EC2 örneğini kullandım. Bu 5 sunucuyu aşağıdaki gibi adlandırdım.
master1.linux-console.net
master2.linux-console.net
worker1.linux-console.net
worker2.linux-console.net
worker3.linux-console.net
Cloudera Manager, CDH'nin tamamı için bir yönetim ve izleme aracıdır. Biz buna genellikle Cloudera Hadoop için bir yönetim aracı adını veriyoruz. Bu aracı kullanarak dağıtım yapabilir, izleyebilir, kontrol edebilir ve yapılandırma değişiklikleri yapabiliriz. Bu, kümenin tamamını yönetmek için çok önemlidir.
Aşağıda Cloudera Manager'ın önemli kullanımları verilmiştir.
- Hadoop kümelerini otomatik bir şekilde dağıtın ve yapılandırın.
- Küme sağlığını izleyin
- Uyarıları yapılandırma
- Sorun giderme
- Raporlama
- Küme Kullanım Raporunun Yapılması
- Kaynakları dinamik olarak yapılandırma
Adım 1: Apache Web Sunucusunu CentOS'a Yükleme
Cloudera depoları için master1
'i web sunucusu olarak kullanacağız. Ayrıca Cloudera Manager WebUI olduğundan Apache'in kurulu olması gerekir. Apache web sunucusunu kurmak için aşağıdaki adımları izleyin.
yum -y install httpd
httpd kurulduktan sonra başlatın ve önyükleme sırasında başlatılmasını sağlayacak şekilde etkinleştirin.
systemctl start httpd
systemctl enable httpd
httpd'yi başlattıktan sonra durumdan emin olun.
systemctl status httpd
httpd'yi başlattıktan sonra, yerel sisteminizde bir tarayıcı açın ve arama çubuğuna master1
IP adresini yapıştırın, httpd'nin düzgün çalıştığından emin olmak için bu test sayfasını almalısınız.
Adım 2: IP ve Ana Bilgisayar Adını Çözümlemek için Yerel DNS'yi Yapılandırma
IP ve ana bilgisayar adını çözümlemek için bir DNS sunucumuz olması veya /etc/hosts'u yapılandırmamız gerekir. Burada /etc/hosts'u yapılandırıyoruz, ancak gerçek zamanlı olarak üretim ortamı için özel bir DNS sunucusu orada olacaktır.
/etc/hosts dosyasında tüm sunucularınız için bir giriş yapmak üzere aşağıdaki adımları izleyin.
vi /etc/hosts
Bu, tüm sunucularda yapılandırılmalıdır.
13.235.27.144 master1.linux-console.net master1
13.235.135.170 master2.linux-console.net master2
15.206.167.94 worker1.linux-console.net worker1
13.232.173.158 worker2.linux-console.net worker2
65.0.182.222 worker3.linux-console.net worker3
3. Adım: SSH Parolasız Girişi Yapılandırın
Bu gösterimde Cloudera Manager master1
üzerine kuruluyor. master1
'den diğer tüm düğümlere şifresiz ssh yapılandırmamız gerekiyor. Çünkü Cloudera Manager, paketleri yüklemek üzere diğer tüm düğümlerle iletişim kurmak için ssh'yi kullanacaktır.
master1
'den geri kalan tüm sunuculara şifresiz ssh yapılandırmak için aşağıdaki adımları izleyin. Devam etmek için bir 'tecmint' kullanıcımız olacak.
Gösterildiği gibi useradd komutunu kullanarak 4 sunucunun tamamında bir 'tecmint' kullanıcısı oluşturun.
useradd -m tecmint
‘tecmint’ kullanıcısına root ayrıcalığını vermek için aşağıdaki satırı /etc/sudoers dosyasına ekleyin. Bu satırı ekran görüntüsündeki gibi root altına ekleyebilirsiniz.
tecmint ALL=(ALL) ALL
'tecmint' kullanıcısına geçin ve aşağıdaki komutu kullanarak master1
'da ssh anahtarını oluşturun.
sudo su tecmint
ssh-keygen
Şimdi, gösterildiği gibi ssh-copy-id komutunu kullanarak oluşturulan anahtarı 4 sunucunun tümüne kopyalayın.
ssh-copy-id -i ~/.ssh/id_rsa.pub [email
ssh-copy-id -i ~/.ssh/id_rsa.pub [email
ssh-copy-id -i ~/.ssh/id_rsa.pub [email
ssh-copy-id -i ~/.ssh/id_rsa.pub [email
Artık gösterildiği gibi master1
'den kalan tüm sunuculara şifresiz ssh gönderebilmelisiniz.
ssh master2
ssh worker1
ssh worker2
ssh worker3
Adım 4: Cloudera Manager'ı Yükleme ve Yapılandırma
Tüm paketleri RHEL/CentOS'taki paket yönetimi araçlarını kullanarak yüklemek için satıcı (Cloudera) deposunu kullanabiliriz. Gerçek zamanlı olarak kendi depomuzu oluşturmak en iyi uygulamadır çünkü üretim sunucularında internet erişimimiz olmayabilir.
Burada Cloudera Manager 6.3.1 sürümünü yükleyeceğiz. Repo sunucusu olarak master1
kullanacağımız için paketleri aşağıda belirtilen yol üzerinden indiriyoruz.
Aşağıdaki dizinleri master1
sunucusunda oluşturun.
sudo mkdir -p /var/www/html/cloudera-repos/cm6
Paketleri http üzerinden indirmek için wget aracını kullanabiliriz. Bu nedenle aşağıdaki komutu kullanarak wget'i yükleyin.
sudo yum -y install wget
Daha sonra aşağıdaki wget komutunu kullanarak Cloudera Manager tar dosyasını indirin.
wget https://archive.cloudera.com/cm6/6.3.1/repo-as-tarball/cm6.3.1-redhat7.tar.gz
Tar dosyasını /var/www/html/cloudera-repos/cm6 içine çıkarın, zaten http'yi yükleyerek master1
'i web sunucusu olarak yaptık ve tarayıcıda test ettik.
sudo tar xvfz cm6.3.1-redhat7.tar.gz -C /var/www/html/cloudera-repos/cm6 --strip-components=1
Şimdi tüm Cloudera rpm dosyalarının /var/www/html/cloudera-repos/cm6/RPMS/x86_64 dizininde bulunduğunu doğrulayın.
cd /var/www/html/cloudera-repos/cm6
ll
Küme ana bilgisayarlarındaki tüm sunucularda aşağıdaki içeriğe sahip /etc/yum.repos.d/cloudera-manager.repo dosyaları oluşturun; burada master1
(65.0.101.148) bulunur Web sunucusu.
[cloudera-repo]
name=cloudera-manager
baseurl=http:///cloudera-repos/cm6/
enabled=1
gpgcheck=0
Artık depo eklendi, etkin depoları görüntülemek için aşağıdaki komutu çalıştırın.
yum repolist
Depodaki mevcut Cloudera ile ilgili tüm paketleri görüntülemek için aşağıdaki komutu çalıştırın.
yum list available | grep cloudera*
Cloudera-manager-server, cloudera-manager-agent, cloudera-manager-daemons cloudera-manager-server-db-2'yi yükleyin.
sudo yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server cloudera-manager-server-db-2
Kurulu tüm Cloudera paketlerini görüntülemek için aşağıdaki komutu çalıştırın.
yum list installed | grep cloudera*
Cloudera Manager ve diğer hizmetlerin meta verilerini depolamak için temel bir veritabanı olan cloudera-scm-server-db'yi başlatmak için aşağıdaki komutu çalıştırın.
Varsayılan olarak Cloudera, Cloudera Manager'a yerleşik postgre-sql ile birlikte gelir. Gömülü olanı, kullanılabilecek gerçek zamanlı harici bir veritabanına kuruyoruz. Oracle, MySQL veya PostgreSQL olabilir.
sudo systemctl start cloudera-scm-server-db
Veritabanının durumunu kontrol etmek için aşağıdaki komutu çalıştırın.
sudo systemctl status cloudera-scm-server-db
Cloudera Manager sunucusu için db.properties'i yapılandırın.
vi /etc/cloudera-scm-server/db.properties
Cloudera Manager'ın Gömülü Veritabanı'nı kullanmasını sağlamak için aşağıdaki değeri Gömülü olarak yapılandırın.
com.cloudera.cmf.db.setupType=EMBEDDED
Cloudera Manager sunucusunu başlatmak için aşağıdaki komutu çalıştırın.
sudo systemctl start cloudera-scm-server
Cloudera Manager sunucusunun durumunu kontrol etmek için aşağıdaki komutu çalıştırın.
sudo systemctl status cloudera-scm-server
Cloudera Manager aracısını başlatmak ve durumunu kontrol etmek için aşağıdaki komutu çalıştırın.
sudo systemctl start cloudera-scm-agent
sudo systemctl status cloudera-scm-agent
Cloudera Manager Server başarıyla kurulup sorunsuz bir şekilde çalışmaya başladığında, IP adresini ve bağlantı noktası numarası olan 7180 bağlantı noktasını kullanarak tarayıcıda WebUI'yi (Giriş sayfası) görüntüleyebilirsiniz. Cloudera Yöneticisi.
https://65.0.101.148:7180
Özet
Bu makalede, CentOS 7'ye Cloudera Manager kurulumunun adım adım sürecini gördük. Bir sonraki yazımızda CDH ve diğer servis kurulumlarını göreceğiz.