young8 / ambari-dev-env

Docker based development environment for Ambari

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ambari development environment

Docker based development environment for Ambari

This project aims to ease the development of the ambari server by setting up a real-like development environment using docker containers.

Prerequisites

The following software components need to be installed:

The concept

  • the source code is cloned to the host machine
  • the project is made available to the containers as docker volumes
  • development is done in the preferred IDE, on the host
  • components (the server and the agents) run in docker containers

Usage

  1. clone the project from the git repo: git clone git@github.com:lpuskas/ambari-dev-env.git

  2. set up your development profile: ./setup.sh and set the variables in the generated .dev-profile file

  3. run the ./setup.sh again

  4. run the ./startDevEnv.sh

  5. you remotely debug the code from your IDE

Set up local mirror for Yum repos

run ./setup.sh repo-mirror repoid repo_source_url

e.g. ./setup.sh repo-mirror HDP-2.3.2.0 http://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.3.2.0/hdp.repo will setup a mirror for HDP-2.3.2.0

Using repos from local mirror

Specify http://yum-repos/repos/HDP-2.3.2.0 and http://yum-repos/repos/HDP-UTILS-1.1.0.20 as the URL for the HDP repositories for the desired os type when deploying the cluster.

Ambari server command line

Ambari server command line functions can be reached through ambari-server.py python script within ambari server docker container

  1. Start a bash session in a running ambari server container docker exec -it ambari-server bash
  2. Run the desired ambari server command line function in the container

e.g. to refresh stack hash codes run python /ambari/ambari-server/src/main/python/ambari-server.py refresh-stack-hash

About

Docker based development environment for Ambari


Languages

Language:Shell 100.0%