Ambari #01: ติดตั้ง Ambari Server

Apache Ambari เป็นเครื่องมือที่ทำให้การจัดการ Hadoop ง่ายขึ้น [1] แต่การติดตั้ง Apache Ambari เองนั้น (จาก Apache Project) ก็มีความยุ่งยากเล็กน้อย เพราะต้อง Build Source เอง จึงมีบริษัท HortonWorks เค้าไปทำตัว Binary มาให้ download และติดตั้งได้ง่ายกว่า

Ambari ประกอบด้วย Ambari Server และ Ambari Agent ซึ่ง Server จะเป็นตัวสั่งการให้ติดตั้ง Hadoop Component ต่างๆลงไปบน Agent

ในบทความนี้ จะขอนำเสนอการติดตั้ง Ambari version 2.5.1 จาก HortonWorks ซึ่งจะทำงานกับ Hortonworks Data Platform (HDP)  2.6 โดยติดตั้งบน Ubuntu 16.04 ในส่วนของ “Ambari Server” [2]

  1. ติดตั้ง Ubuntu 16.04 Server 64bit
  2. สิ่งที่สำคัญมากคือ FQDN หรือการอ้างชื่อเต็มของ host ดังนั้น ในไฟล์ /etc/hosts บรรทัดแรกต้องเป็น Fully Qualified Domain Name เช่น (ห้ามเป็น localhost เด็ดขาด) และถ้าจะให้ดี ควรมี DNS Record บน Name Server ด้วย
    192.168.1.121   ambari01.example.com ambari01

    ต้องทดสอบใช้คำสั่ง

    hostname -f

    แล้วได้ชื่อ FQDN ถึงจะใช้งานได้
    UPDATE: ในการระบบทดสอบ ซึ่งประกอบด้วยเครื่องไม่เกิน 5 เครื่อง อาจจะใช้ /etc/hosts บันทึก IP Address และ FQDN ของทุกเครื่องใน Cluster และต้องสร้าง /etc/hosts ให้เหมือนกันทุกเครื่องด้วยเช่นกัน แต่หากต้องทำระบบขนาดใหญ่ แนะนำให้ใช้ DNS ซึ่งต้องทำ Reverse DNS ด้วย กล่าวคือ ต้อง nslookup 192.168.1.2 แล้วกลับมาเป็น ambari01.example.com ได้
    แต่หากไม่สามารถจัดการ DNS หลักขององค์กรได้ ก็พอจะใช้งาน dnsmasq ช่วยได้ โดยวิธีการติดตั้งและใช้งานมีดังนี้

     apt install dnsmasq

    แก้ไขไฟล์ /etc/dnsmasq.conf
    เพิ่มบรรทัดต่อไปนี้

    interface=eth0
    address=/ambari01.example.com/192.168.1.121
    ptr-record=121.1.168.192.in-addr.arpa,ambari01.example.com
    address=/ambari02.example.com/192.168.1.122
    ptr-record=122.1.168.192.in-addr.arpa,ambari02.example.com
    ....
    address=/ambari99.example.com/192.168.1.219
    ptr-record=219.1.168.192.in-addr.arpa,ambari99.example.com
    

    จากนั้น ให้แก้ไขไฟล์ /etc/network/interfaces ของทุกเครื่อง ให้ชี้มาที่ IP ของ Ambari Server ในที่นี้คือ 192.168.1.121
    ก็จะใช้งานได้อย่างราบรื่น

  3. ตั้งค่า Ambari Public Repository
    sudo su
    wget -O /etc/apt/sources.list.d/ambari.list http://public-repo-1.hortonworks.com/ambari/ubuntu16/2.x/updates/2.5.1.0/ambari.list
    apt-key adv --recv-keys --keyserver keyserver.ubuntu.com B9733A7A07513CAD
    apt-get update -y
    sudo dpkg --configure -a
    echo never > /sys/kernel/mm/transparent_hugepage/enabled
    apt install -y ntp
    apt-cache showpkg ambari-server
  4. ติดตั้ง Ambari Server
    apt-get install -y ambari-server
  5. จากนั้นเป็นการ Setup
    ambari-server setup
    
    Customize user account for ambari-server daemon [y/n] (n)? n
    
    Checking JDK...
    [1] Oracle JDK 1.8 + Java Cryptography Extension (JCE) Policy Files 8
    [2] Oracle JDK 1.7 + Java Cryptography Extension (JCE) Policy Files 7
    [3] Custom JDK
    ==============================================================================
    Enter choice (1): 1
    
    Do you accept the Oracle Binary Code License Agreement [y/n] (y)? y
    
    Enter advanced database configuration [y/n] (n)? n
    # Default PostgreSQL Database: ambari
    # Default Username/Password:   ambari/bigdata
  6. Start Ambari
    ambari-server start

ต่อไป สามารถเปิดการทำงานของ Ambari Server จาก

http://ambari01.example.com:8080
Default Username/Password = admin/admin

 

Reference:

[1] http://ambari.apache.org/

[2] https://docs.hortonworks.com/HDPDocuments/Ambari/Ambari-2.5.1.0/index.html