本文主要内容是使用Windows Azure的VIRTUAL MACHINES和NETWORKS服务安装CDH (Cloudera Distribution Including Apache Hadoop)搭建Hadoop集群。
项目中在私有云中使用CDH (Cloudera Distribution Including Apache Hadoop)搭建Hadoop集群进行大数据计算。作为微软的忠实粉丝,将CDH部署到Windows Azure的虚拟机中是我的必然选择。由于CDH中包含多个开源服务,所以虚拟机需要开放的端口众多。Windows Azure中的虚拟机的网络是被安全隔离的,因此在Windows Azure中Virtual machines的服务中创建多个虚拟机安装Hadoop cluster,最佳的方案是为Hadoop集群创建虚拟网络,在虚拟网络中的资源和服务就像在虚拟私有云中互相访问,而与虚拟网络之外的其他资源是隔离的,从而实现安全性。
What is CDH?
CDH is the distribution of Apache Hadoop and related projects. CDH is 100% Apache-licensed open source and is the only Hadoop solution to offer unified batch processing, interactive SQL, and interactive search, and role-based access controls.
在 Windows Azure 中创建虚拟网络
- 登录到 Windows Azure 管理门户 , 在左下角单击"新建"。
- 在导航窗格中,依次单击"网络"、"虚拟网络"和"自定义创建"。
- 在"虚拟网络详细信息"屏幕上,输入虚拟网络的配置信息,然后单击"下一步"箭头。在此输入的配置信息包括虚拟网络的名称、地缘组区域和地缘组的名称。
地缘组是一种用于在同一数据中心以物理方式将 Windows Azure 服务组合起来以提高性能的方法。只能向一个虚拟网络分配地缘组。
- 设置DNS Server 和 VPN Connectivity,此步骤可不为跳过,在虚拟网络创建后需要时再设置。
- 在"地址空间和子网"屏幕上,输入以下信息,然后单击"下一步"箭头。地址空间必须为用 CIDR 表示法指定的专用地址范围:10.0.0.0/8、172.16.0.0/12 或 192.168.0.0/16(由 RFC 1918 指定)。本例中选择的是 Starting IP 选择的是192.168.0.0。
单击右下角的对号按钮,此时Windows Azure将根据提交的配置创建您的虚拟网络。
此时,您已在 Windows Azure 中拥有一个虚拟网络,可以在门户的"虚拟网络"选项卡上看到它。更多的详细配置方法可参考Windows Azure 官方文档 在 Windows Azure 中创建虚拟网络 。
从Windows Azure映像库中创建 Linux 虚拟机
创建Linux虚拟机的步骤可参考 Windows Azure 上的文档《创建运行 Linux 的虚拟机》 http://www.windowsazure.cn/zh-cn/manage/linux/tutorials/virtual-machine-from-gallery/
请注意在"虚拟机配置"对话框中的"REGION/AFFINITY GROUP/VIRTUAL NETWORK"选项中选择上一步骤中创建的虚拟网络。在本例中选中的是作者创建的虚拟网络"hadoopclusternetwork"。
为虚拟机开放如下的端口,即在虚拟机配置中设置如下的Endpoints。
-
Enable port for Virtual machines
- 7180 (Cloudera Manager web UI)
- 8020, 50010, 50020, 50070, 50075 (HDFS NameNode and DataNode)
- 8021 (MapReduce JobTracker)
- 8888 (Hue web UI)
- 9083 (Hive/HCatalog metastore)
- 41415 (Flume agent)
- 11000 (Oozie server)
- 21050 (Impala JDBC port)
使用同样的方式创建多个虚拟机组成可按照Hadoop的集群,请注意多个虚拟机使用同一个虚拟网络。
安装CDH
配置各个主机的 HOSTNAME
vi /etc/sysconfig/network
修改其中的 HOSTNAME
配置各个主机上的/etc/hosts
vi /etc/hosts
修改 HOSTNAME 和 hosts 后,建议重启。
关闭防火墙
在root下执行下面命令,可以临时关闭防火墙
service iptables stop
在root下执行下面命令,可以永久关闭防火墙(即,每次开机都会关闭),但需要重启生效。
chkconfig iptables off
关闭SELinux
如果需要永久关闭,编辑/etc/selinux/config ,设置SELINUX=disabled
,然后完成安装。
更改Cloudera-manager-installer.bin权限
$ chmod u+x cloudera-manager-installer.bin
$ ./cloudera-manager-installer.bin
接着,接受许可协议,按Enter和Next,
安装界面如下所示:
启动 Cloudera Manager Admin 控制台
通过Cloudera Manager Admin控制台,可以配置、管理、监控集群上的Hadoop,WEB端的URL地址是:http://myhost.example.com:7180,myhost.example.com是你安装Cloudera-Manager-installer.bin的主机域名,当然用IP也是可以的。例如我的WEB端URL地址就是:http://hcc1.cloudapp.net:7180 。按照提示安装即可,安装成功的界面如下图所示。
使用Windows Azure的VM安装和配置CDH搭建Hadoop集群的更多相关文章
-
ActiveMQ基础教程(二):安装与配置(单机与集群)
因为本文会用到集群介绍,因此准备了三台虚拟机(当然读者也可以使用一个虚拟机,然后使用不同的端口来模拟实现伪集群): 192.168.209.133 test1 192.168.209.134 test ...
-
配置NTP服务ntpd/ntp.conf(搭建Hadoop集群可参考)
本文拟定是在一个局域网内(比如一个Hadoop集群)设定一台NTP服务器作为整个网络的标准时间参考,使用网络(集群)内的所有机器保持时间一致!以下是详细的操作步骤: 1. 修改选定的服务器的本地时间 ...
-
配置两个Hadoop集群Kerberos认证跨域互信
两个Hadoop集群开启Kerberos验证后,集群间不能够相互访问,需要实现Kerberos之间的互信,使用Hadoop集群A的客户端访问Hadoop集群B的服务(实质上是使用Kerberos Re ...
-
Windows平台开发Mapreduce程序远程调用运行在Hadoop集群—Yarn调度引擎异常
共享原因:虽然用一篇博文写问题感觉有点奢侈,但是搜索百度,相关文章太少了,苦苦探寻日志才找到解决方案. 遇到问题:在windows平台上开发的mapreduce程序,运行迟迟没有结果. Mapredu ...
-
3.redis.3.2 下载,安装、配置、使用、集群主从创建 - 3
当然,集群最主要的就是配置文件: 简单配置如下, port 7001 bind 127.0.0.1 databases 16 appendonly yes appendfilename "a ...
-
zookeeper的安装与配置(单机和集群)
单机模式: 1.首先去官网下载zookeeper的包 zookeeper-3.4.10.tar.gz 2.用FTP上传到服务器或者Linux虚拟机的/usr/local目录下 3.解压文件tar -z ...
-
008-Centos 7.x安装 Ambari 2.2.2 + HDP 2.4.2 搭建Hadoop集群
1.安装环境说明 安装前先安装好 Centos 7.2, jdk-8u91, mysql5.7.13 一共有3台机器,一个是主节点192.168.111.10,两个是从:192.168.111.11, ...
-
Linux搭建Hadoop集群---Jdk配置
三台虚拟机:master slave1 slave2 192.168.77.99 master 192.168.77.88 slave1 192.168.77.77 slave2 1.修改主机名: ...
-
安装和使用nmon监测hadoop集群性能
nmon是一个非常易用的监测Unix/Linux系统性能的小工具,可以在一个屏幕上通过指令切换,显示几乎你想要的所有指标,并且可以自动将指标周期性的保存成 .nmon格式文件,这个工具可以与nmon_ ...
随机推荐
-
android activity改变另一个activity ui
android开发之在activity中控制另一个activity的UI更新 转自:http://www.cnblogs.com/ycxyyzw/p/3875544.html 第一种方法: 遇到一 ...
-
[LeetCode] Search for a Range(二分法)
Given a sorted array of integers, find the starting and ending position of a given target value. You ...
-
Akka(一) - akka的wordcount
1. 启动类 object Application extends App{ val _system = ActorSystem("HelloAkka") //构建akka容器 v ...
-
Java汉字转成汉语拼音工具类
Java汉字转成汉语拼音工具类,需要用到pinyin4j.jar包. import net.sourceforge.pinyin4j.PinyinHelper; import net.sourcefo ...
-
使用 ESXi 虚拟化 Ryzen 1700
最近开发的一个项目,需要多台机器支持,PC + 各种虚拟机,整得很乱,一怒之下,购买一台Ryzen 1700 + 32GB机器自行搭建服务器.经历两天时间,不停的踩坑,终于完成: Ryzen 1700 ...
-
mybatis逆向工程之生成文件解释
一.mapper接口中的方法解析 mapper接口中的函数及方法 方法 功能说明 int countByExample(UserExample example) thorws SQLException ...
-
js原生的轮播,原理以及实践
轮播,无论是文字轮播还是图片轮播,他们的原理是一样的,都是通过定时器执行循环展示和影藏. 一.手动轮播 (1)原理 一系列的大小相等的图片平铺,利用CSS布局只显示一张图片,其余隐藏.通过计算偏移量利 ...
-
session 与 coolie 的区别与联系
cookie 和session 的区别: session 在服务器端,cookie 在客户端(浏览器) cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗考虑到安全应当 ...
-
ASP.NET Core 2.1 : 十五.图解路由(2.1 or earler)
本文通过一张图来看一下路由的配置以及请求处理的机制.(ASP.NET Core 系列目录) 一.概述 路由主要有两个主要功能: 将请求的URL与已定义的路由进行匹配,找到该URL对应的处理程序并传入该 ...
-
A fine property of the non-empty countable dense-in-self set in the real line
A fine property of the non-empty countable dense-in-self set in the real line Zujin Zhang School o ...