Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

VirtualBox allows you to run multiple operating systems (inside multiple virtual machines) at the same time. In this Quick Start you will be using VirtualBox to run Linux on OS X.:

Image Added

Vagrant is a tool that makes it easier to work with virtual machines. It helps automate the work of setting up, running, and removing virtual machine environments. For our purposes, Vagrant makes it easy to install and run a preconfigured environment for running Ambari.

  1. Download and install VirtualBox from https://www.virtualbox.org/wiki/Downloads.
    Note: as of 4/25/16 there are potential issues running the latest version of VirtualBox with the Ambari Vagrant setup. We recommend installing an older (4.x) version. This Quick Start has been tested on 4.3.34.
  2. Download and install Vagrant from http://downloads.vagrantup.com.
  3. Clone the ambari-vagrant GitHub repository into a convenient folder on your Mac. The repository contains scripts for setting up Ambari virtual machines on several Linux distributions.
    From the command-line:

    Code Block
    git clone https://github.com/u39kun/ambari-vagrant.git
    
  4. Edit the /etc/hosts file on your computer so that you will be able to resolve hostnames for the VMs:

    Code Block
    sudo -s 'cat ambari-vagrant/append-to-etc-hosts.txt >> /etc/hosts'
    
  5. Use the vagrant command to create a private key. You will need the key for Ambari.
    The vagrant command displays Vagrant command usage and common commands, and creates a private key as ~/.vagrant.d/insecure_private_key.

    Code Block
    vagrant
    


Start

...

Linux Virtual Machines

The ambari-vagrant directory (cloned from GitHub) contains several subdirectories, each for a specific Linux distribution. Each subdirectory has scripts and configuration files for running Ambari and HDP on that version of Linux.

...

  1.  Change your current directory to ambari-vagrant:

    Code Block
    cd ambari-vagrant
    

    You will see subdirectories for different OS’s.

  2. cd into the OS subdirectory for the OS you wish to use. CentOS 6.4 is recommended, because it is quicker to launch than other OS's.
    The remainder of this Quick Start uses CentOS 6.4. To install and use another version or distribution of Linux, specify the other directory name in place of centos6.4

    Code Block
    cd centos6.4
    
  3. Copy the private key into your OS directory:

    Code Block
    cp ~/.vagrant.d/insecure_private_key .
    
  4. (Optional) If you have at least 16 GB of memory on your Mac, consider increasing the amount of memory allocated to the VMs. Edit the following line in Vagrantfile, increasing 3072 to 4096 or more:

    Code Block
    vb.customize ["modifyvm", :id, "--memory", 3072] # RAM allocated to each VM
    
  5. All VMs will have a directory called /vagrant inside the VM. This corresponds to the ambari-vagrant/<os> directory on your local computer. If you have any files to access from within the VM, you can place them in this shared directory.
  6. Start one or more VMs, using the ./up.sh command. Three seems to be a good number Each VM will run one HDP node.
    Three nodes can run well if you have 16GB of RAM , without taxing the system too muchon your Mac.

    Code Block
    ./up.sh <# of VMs to launch>
    

    For example, up.sh 3 on CentOS 6.4 starts 3 VMs. Associated hostnames will be c6401, c6402, and c6403.

    Additional notes:
    - With the default Vagrantfile (in each OS subdirectory) you can specify up to 10 VMs. (Additional notes:
    - With the default Vagrantfile (in each OS subdirectory) you can specify up to 10 VMs. (If your computer can handle it; you can even add more.)
    - VMs will have The fully-qualified domain names name (FQDN) with for each VM will have the format <os-code>[01-10].ambari.apache.org, where <os-code> is c59 (CentOS 5.9), c64 (CentOS 6.4), etc. For example, c5901.ambari.apache.org, c6401.ambari.apache.org, etc.
    - VMs will have IP addresses will be the FQDN for node 01 running CentOS 5.9.
    - The IP address for each VM will have the format 192.168.<os-subnet>.1[01-10], where <os-subnet> is 59 for CentOS 5.9, 64 for CentOS 6.4, etc. For example, 192.168.59.101 will be the IP address for CentOS 5.9 node c5901.

    For example,   192.168.64.101, for /up.sh 3 starts 3 VMs. For CentOS 6.4 node c6401, etc.
    - Note that , the associated hostnames will be c6401, c6402, and c6403.

    Note:  up.sh 3 is equivalent to doing something like vagrant up c640{1..3}.

  7. Check the status of your VMsVM(s):

    Code Block
    hw100:centos6.4 lkg$ vagrant status
    
    Current machine states:
    c6401                     running (virtualbox)
    c6402                     running (virtualbox)
    c6403                     running (virtualbox)
    c6404                     not created (virtualbox)
    c6405                     not created (virtualbox)
    c6406                     not created (virtualbox)
    c6407                     not created (virtualbox)
    c6408                     not created (virtualbox)
    c6409                     not created (virtualbox)
    c6410                     not created (virtualbox)

    (You can use the vagrant init command to initialize your current directory as a Vagrant environment, but this step should already be handled by the preceding steps.)

  8. Next, log into one of your VMs. For example:

    Code Block
    vagrant ssh c6401
    

    From this point onward, this terminal window will operate within the VM until you exit the VM. All commands will go to the VM, not your Mac.
    Tip: Open a second terminal window for submitting commands on your Mac. This will be useful when accessing the Ambari Web UI.

  9. When you first access the VM you will be logged in as user vagrant. Change to root user:

    Code Block
    sudo su -
    
  10. When you are finished using the VM, TBD (save, exit; snapshot)

...

  • yum

  • rpm

  • scp

  • curl

  • wget

  • pdsh

  • ntpd?

(how to check)

 

  1. From the terminal window on your VM (where the main ambari service should run?), download the Ambari repository. The following commands download Ambari version 2.2.1.0 and install ambari-server:

    OSCommands
    CentOS 6
    wget -O /etc/yum.repos.d/ambari.repo http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.2.1.0/ambari.repo
    yum install ambari-server -y
    CentOS 7wget -O /etc/yum.repos.d/ambari.repo http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.2.1.0/ambari.repo
    yum install ambari-server -y
    Ubuntu 12
    wget -O /etc/apt/sources.list.d/ambari.list http://public-repo-1.hortonworks.com/ambari/ubuntu12/2.x/updates/2.2.1.0/ambari.list
    apt-key adv --recv-keys --keyserver keyserver.ubuntu.com B9733A7A07513CAD apt-get update apt-get install ambari-server -y
     Ubuntu 14wget -O /etc/apt/sources.list.d/ambari.list http://public-repo-1.hortonworks.com/ambari/ubuntu14/2.x/updates/2.2.1.0/ambari.list
    apt-key adv --recv-keys --keyserver keyserver.ubuntu.com B9733A7A07513CAD
    apt-get update
    apt-get install ambari-server -y

    Note: to test a branch build or the trunk buildrun a different version of Ambari, specify the repo URL for the branch or trunk version.

  2. To install Ambari with default settings, set up and start ambari-server:

    Code Block
    ambari-server setup -s
    ambari-server start

    For more information about installation options, see Ambari User Guides.

  3. (Optional) For frontend developers only: see "Frontend Development" (later on this page) for extra setup instructions.

  4. Once Ambari Server is started, access the Ambari Web UI at http://<hostname>.ambari.apache.org:8080. For example:

    Code Block
    http://c6401.ambari.apache.org:8080

    The URL depends on the OS and the node where you installed Ambari
    Note: The Ambari Server can take some time to launch and be ready to accept connections. Keep trying the URL until you see the login page.

  5. Login using default username admin, password admin.

  6. Choose "Launch Install Wizard."

  7. Name your cluster.

  8. On the Install Options page, list the FQDNs of the VMs. For example:

    Code Block
    c6401.ambari.apache.org
    c6402.ambari.apache.org
    c6403.ambari.apache.org
    

    Alternatively, you can use a range expression:

    Code Block
    c64[01-03].ambari.apache.org
    
  9. Upload the insecure_private_key file that you created earlier.

  10. Specify non-root SSH user vagrant.

  11. Follow the onscreen instructions to install your cluster.

Install the HDP Stack

<tbd>

Choose which HDP version, ...

 Choose services

Next, install HDP on your cluster.

http://docs.hortonworks.com/HDPDocuments/Ambari-2.2.1.0/bk_Installing_HDP_AMB/content/ch_Deploy_and_Configure_a_HDP_Cluster.html

Choose which HDP version,  Choose services, Assign master and slave processes, Customize services (here I assigned admin/admin to Hive and Oozie)

Timeline for my Mac & VMs to installinstalling HDP, and mac hardware

Other tips:

  • yum failed - ?
  • fix transparent huge page setting in /etc/rc.loca (CentOS7)
  • "host checks" & message about firewall & THP: not very clear. Sounded like those were the warnings.
  • ntpd not installed?

...