IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> CDH和CM部署环境准备 -> 正文阅读

[大数据]CDH和CM部署环境准备

01、服务器环境

云主机,CentOS版本版本3.10.0-1160.31.1.el7.x86_64

02、集群规划

集群规划hadoop102hadoop103hadoop104
内(私)网IP
外(公)网IP

03、hostname

hostnamectl --static set-hostname hadoop102
hostnamectl --static set-hostname hadoop103
hostnamectl --static set-hostname hadoop104

04、hosts

vim /etc/hosts

添加内网IP映射

内网IP hadoop102 hadoop102
内网IP hadoop103 hadoop103
内网IP hadoop104 hadoop104

05、WIN10网络映射配置

去到C:\Windows\System32\drivers\etc管理员身份编辑hosts文件,添加外网IP映射

外网IP hadoop102
外网IP hadoop103
外网IP hadoop104

06、关闭防火墙

保存当前防火墙规则

iptables-save > ~/firewall.rules

禁用防火墙

systemctl disable firewalld

停止防火墙

systemctl stop firewalld

查看防火墙状态

systemctl status firewalld

07、集群之间SSH免密登录

每台机执行:生成公钥和密钥

ssh-keygen

每台机执行:把自己的公钥发到所有节点,填yes和密码

ssh-copy-id -i ~/.ssh/id_rsa.pub root@hadoop102
ssh-copy-id -i ~/.ssh/id_rsa.pub root@hadoop103
ssh-copy-id -i ~/.ssh/id_rsa.pub root@hadoop104

08、Python版本确认

Hue需要用到Python2.7;CentOS7默认装好了Python2.7,用下面命令确认一下

python --version

09、集群分发脚本

mkdir ~/bin
touch ~/bin/rsync.py
chmod 777 ~/bin/rsync.py
vim ~/bin/rsync.py
#!/usr/bin/python2
# coding:utf-8
import os, re, socket

# 获取第一个参数
a = os.sys.argv
if len(a) != 2:
    print a
    exit('使用方法:rsync.py $HADOOP_HOME')
a = a[1]

# 补全路径
if not a.startswith('/'):
    a = os.path.join(os.getcwd(), a)
if os.path.isdir(a) and not a.endswith('/'):
    a += '/'
if not os.path.exists(a):
    print a
    exit('路径不存在')

# 文件分发
hostname = socket.gethostname()
with open('/etc/hosts') as f:
    for i in set(re.findall('hadoop[0-9]+', f.read())):
        if i == hostname:
            continue
        aa = 'rsync -a %s %s:%s' % (a, i, a)
        print aa
        os.system(aa)

分发

rsync.py ~/bin

10、禁用SELinux模式

注:安全增强的Linux(SELinux)允许通过策略设置访问控制。如果在部署CDH时遇到困难,请在将CDH部署到集群之前,在每个主机上将SELinux设置为permissive模式。

检查当前SELinux mode状态

getenforce

如果输出为DisabledPermissive ,进入下一步

如果输出结果为enforcing,则需要额外4步:
1、vim /etc/selinux/config
2、将SELINUX=enforcing改为SELINUX=permissive
3、保存并关闭文件
4、重新启动系统或运行setenforce 0命令来立即禁用SELinux

11、禁用透明大页配置

Cloudera公司建议关闭透明大页;如果未关闭,就会在后面的环境检测中报错

每台机执行

# 前两行代码:暂时生效,当重启后配置会消失
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
# 后两行代码:把信息加到启动项中,使其永久生效
echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' >> /etc/rc.local
echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local

12、集群操作脚本(可选)

touch ~/bin/cluster.py
chmod 777 ~/bin/cluster.py
vim ~/bin/cluster.py
#!/usr/bin/python2
import os, re

# command
a = os.sys.argv
if len(a) < 2:
    print a
    exit('Usage: cluster.py python --version')
cmd = ' '.join(a[1:])

# cluster operation
with open('/etc/hosts') as f:
    for h in sorted(set(re.findall('hadoop[0-9]+', f.read()))):
        c = "ssh %s '%s'" % (h, cmd)
        print '\033[033m{}\033[0m'.format(c)
        os.system(c)

另外,还有在每台机执行:将/etc/profile文件内容追加到~/.bashrc,只执行一次

cat /etc/profile >> ~/.bashrc
cat ~/.bashrc

.bashrc是针对特定用户的环境变量配置

13、集群时间同步

云服务本身已经提供时间服务,我们可用下面命令检查集群时间是否一致

cluster.py date

14、CDH平台权限与命令概览

任务需要的权限
安装Cloudera Manager Server安装CM Server的主机需要有root或sudo权限
使用service或systemctl工具启动、停止或重新启动Cloudera Manager服务器Cloudera Manager Server 的主机需要有root或sudo权限;默认情况下服务运行在cloudera-scm用户下
使用CM安装CDH组件在Cloudera Manager初始安装时配置的如下之一:
有密码或者ssh秘钥的方式访问root用户的权限
为特定用户提供无密码的sudo访问
对于此任务,不支持使用另一个提供root或sudo访问的系统(例如PowerBroker)
使用CM安装CM Agent在Cloudera Manager初始安装时配置的如下之一:
有密码或者ssh秘钥的方式访问root用户的权限
为特定用户提供无密码的sudo访问
对于此任务,不支持使用另一个提供root或sudo访问的系统(例如PowerBroker)
自动启动CM Agent进程在运行时访问root帐户,通过以下场景之一:
在Cloudera Manager和CDH安装期间,如果安装成功,代理将自动启动。然后使用以下其中一种启动它,这与Cloudera Manager初始安装期间的配置相同:
有密码或者ssh秘钥的方式访问root用户的权限
为特定用户提供无密码的sudo访问.
对于此任务,不支持使用另一个提供root或sudo访问的系统(例如PowerBroker)。
在系统启动过程中使用init自动启动
手动启动、停止或重新启动Cloudera Manager Agent进程root或sudo 权限。
该权限要求确保Cloudera Manager代理管理的服务可以作为适当的用户运行(例如hdfs服务的hdfs用户)。在CDH服务的Cloudera Manager中运行命令不需要root或sudo访问,因为操作是由Cloudera Manager Agent处理的,它已经作为root在运行了
如果您想为Cloudera Manager用户配置特定的sudo访问(默认情况下是Cloudera -scm),您可以使用以下列表来完成(CM运行的sudo命令有下面这些):
yum (RHEL/CentOS/Oracle)
sed
service
/sbin/chkconfig (RHEL/CentOS/Oracle)
id
rm
mv
chown
install
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-05-10 11:58:25  更:2022-05-10 12:00:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 22:59:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码