项目中在私有云中使用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 的虚拟机》
请注意在"虚拟机配置"对话框中的"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
$ setenforce 0
如果需要永久关闭,编辑/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 控制台