Ember -- Docker 中的 Ambari 和 Cloudera 管理器

Docker 中的 Ambari 和 Cloudera 管理器。(Ambari and Cloudera Manager in Docker)

  • 所有者: SamHjelmfelt/Ember
  • 平台: Docker, Linux
  • 许可证:
  • 分类:
  • 主题:
  • 喜欢:
    0
      比较:

Github星跟踪图

Ember

Ember provides a solution for running Ambari and Cloudera Manager clusters in Docker (HDP, CDH, and HDF). It was designed to streamline training, testing, and development by enabling multi-node dev/test clusters to be installed on a single machine with minimal resource requirements.

Update January 24, 2019

  1. Rebranding to Ember
  2. Cloudera Manager and CDH Support
  3. Improved port mapping
  4. Updated to latest Ambari and HDP versions

Pre-built Images

Pre-built versions of the single node samples have been loaded into docker hub. They can be configured with their respective ini files and launched with the following commands:

./ember.sh createFromPrebuiltSample samples/yarnquickstart/yarnquickstart-sample.ini
./ember.sh createFromPrebuiltSample samples/hadoopkafka/hadoopkafka-sample.ini
./ember.sh createFromPrebuiltSample samples/druidkafka/druidkafka-sample.ini
./ember.sh createFromPrebuiltSample samples/hivespark/hivespark-sample.ini
./ember.sh createFromPrebuiltSample samples/nifiNode/nifiNode-sample.ini
./ember.sh createFromPrebuiltSample samples/cm_essentials/essentials-sample.ini

Docker images are composed of layers that can be shared by other images. This allows for a great reduction in the total size of images on disk and over the network. Ember's pre-built images are composed as much as possible to take advantage of this feature.

The following diagram shows how the images built on top of each other. For example, Ambari Agent + Ambari Server + YarnQuickstart + HadoopKafka + DruidKafka is a total of 6.09 GB in size, but all five layers are less than 3GB each and each can be reused independently or for other containers.

Image Sizes

Prerequisites

  • 8GB RAM and 30GB disk is recommended for the threeNode sample configuration. 4GB RAM or less is viable for smaller clusters.

  • Docker 17+

    yum install -y yum-utils device-mapper-persistent-data lvm2
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    yum install -y docker-ce
    systemctl start docker
    systemctl enable docker
    
  • (Optional) Configure for External Network Access to Nodes

    1. Add multiple IPs to Host OS (N+1 for N nodes)
    • Use the interface from VMWare, VirtualBox, or the cloud provider to add extra network adaptors to the VM
    • For example, the threeNode-sample configuration can use 4 IPs: 1 for host, 3 for the cluster.
    1. Limit SSH on host VM to listen on a Single IP. By default, SSH listens on 0.0.0.0
      • Edit sshd_config
        vi /etc/ssh/sshd_config  
        
      • Add the following line with the IP address for the host OS:
        ListenAddress <IP Address>  
        
      • Restart sshd
        service sshd restart  
        
    2. Enable IPv4 forwarding
      sysctl -w net.ipv4.ip_forward=1  
      

Configuration

An .ini file is required to define hostnames and a cluster name. An external IP list can be defined to allow external access to the containers.

HDP/HDF and CDH can be installed manually or through Ambari Blueprints/CM templates. Example blueprint and template files are provided in the samples folder.

INI Fields:

主要指标

概览
名称与所有者SamHjelmfelt/Ember
主编程语言Shell
编程语言Shell (语言数: 2)
平台Docker, Linux
许可证
所有者活动
创建于2016-02-02 19:24:44
推送于2019-03-07 23:17:09
最后一次提交2019-03-07 15:15:58
发布数2
最新版本名称v1.1 (发布于 )
第一版名称v1.0 (发布于 )
用户参与
星数22
关注者数7
派生数16
提交数46
已启用问题?
问题数0
打开的问题数0
拉请求数1
打开的拉请求数0
关闭的拉请求数0
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?