百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术流 > 正文

hadoop新手入门篇:hadoop集群服务器详细配置教程

citgpt 2024-10-02 13:24 13 浏览 0 评论

虚拟机以及Linux系统安装在之前的两篇分享中已经详细的介绍了方法,并且每一步的都配图了。如果有朋友还是看不懂,那我也爱莫能助了。本篇主要就hadoop服务器操作系统配置进行详细说明,hadoop安装会在下一篇文章中详细的介绍。

hadoop安装包用的是大快DKHadoop发行版,个人觉得DKHadoop的安装过程是比较简单,关于dkhadoop的安装在下一次的分享中再详细介绍吧。下面进入到本篇的主题——服务器操作系统配置教程

hadoop新手入门篇:hadoop集群服务器详细配置教程

一、安装包准备

1、虚拟机分布式安装(三台及以上虚拟机)

若是个人电脑Windows系统或Linux系统,虚拟机上虚拟的三台服务器,则将安装包拷贝到服务器上,进行安装操作即可。

2、物理集群(三台及以上实体服务器)

1、 外网下载模式

2、 本地文件模式

将安装包文件直接拷贝到实体服务器root目录下,进行安装操作即可。

3、上传模式

当服务器在机房,且无显示和输入设备的情况下,应用该模式。

现将文件,安装在本地计算机上(默认为笔记本电脑,在机房现场),并将计算机与服务器连接,将安装包install、DKHInstall上传到服务器root目录下。

二、服务器操作系统配置教程

准备工作完成之后,就要进行服务器配置操作,首先必须三台服务器之间要互相ping通。所谓ping通,就是两台设备之间网络是通的。从一端发送一个数据包,另一端就能够收到,就代表两台设备是能够ping通了。

1、修改权限

目的:使install、DKHInstall两个安装包有可执行的权限。权限不足无法执行一些操作。install里面是脚本和所有组件,DKHInstall里面是安装界面。

步骤:在准备工作中拷贝安装包 install、DKHInstall到主节点目录后,修改文件权限。首先进入root目录,安装目录 install、DKHInstall的权限改为:文件所有者可读可写可执行,与文件所有者属于一个用户组的其他用户可读可执行,其他用户组可读可执行。

命令:

cd /root/

unzip DKHPlantform.zip

chmod -R 755 DKHPlantform

2、 搭建Hadoop集群设置SSH免密登录

目的:Hadoop运行过程中需要管理远端Hadoop守护进程,在Hadoop启动以后,NameNode是通过SSH(Secure Shell)来启动和停止各个DataNode上的各种守护进程的。这就必须在节点之间执行指令的时候是不需要输入密码的形式,所以我们需要配置SSH运用无密码公钥认证的形式,这样NameNode使用SSH无密码登录并启动DataName进程,同样原理,DataNode上也能使用SSH无密码登录到NameNode。

步骤:

(1)修改本机hosts文件,写入对应关系

为了区分局域网内的每台主机,都会给主机配一个主机名,每台主机之间又是通过IP进行通信,但IP地址不方便记忆,所以配置主机名和IP映射能够实现主机之间的快速方便的访问。

命令:

vi /etc/hosts

通过按键盘上的insert或是I键进入编辑模式,编辑完成后按一下Esc键然后按一下按Shift+: 键,输入wq,后回车就可以保存。输入q!后回车则是放弃保存并退出.

进入编辑模式后,按照规则写入主机与ip的对应关系(主机名称dk41是自己命名的,如下图)例:

192.168.1.41 dk41

192.168.1.42 dk42

192.168.1.43 dk43

编辑完后,保存退出。把对应关系拷到其他两台或多台机器上。

命令:

scp -r /etc/hosts 192.168.1.42:/etc

scp -r /etc/hosts 192.168.1.43:/etc

(2)执行集群之间免密前的准备工作

执行sshpass.sh的脚本的时候会去读sshhosts和sshslaves这两个文件,替换sshpass.sh中的master和slave文件。 修改文件sshhosts,输入全部机器的主机名,每行一个主机名(如下图)

命令:

vi /root/DKHPlantform/autossh/sshhosts

通过按键盘上的insert或是I键进入编辑模式,编辑完成后按一下Esc键然后按一下按Shift+:键,输入wq,后回车就可以保存。输入q!后回车则是放弃保存并退出.

修改文件sshslaves,写入除主机名之外的所有机器名(如下图)

命令:

vi /root/DKHPlantform/autossh/sshslaves

通过按键盘上的insert或是I键进入编辑模式,编辑完成后按一下Esc键然后按一下按Shift+:键,输入wq,后回车就可以保存。输入q!后回车则是放弃保存并退出.

(3)执行集群免密工作

命令:

cd /root/DKHPlantform/autossh

./autossh 主节点主机名 集群密码

例: ./autossh dk41 123456

(4)关闭防火墙

防止访问服务器时某些服务被拦截,需关闭防火墙。

命令:

cd /root/DKHPlantform/autossh

./offIptables.sh

3、 安装双机热备份的MySQL

目的:存放Hive的元数据

步骤:

(1)从主节点分发mySQL安装目录到第二节点

命令:

scp -r /root/DKHPlantform/mysqlInst/ 192.168.1.42:/root/

(2)主节点执行:

命令:

cd /root/DKHPlantform/mysqlInst/

./mysql.sh 1

从节点执行:

命令:

cd /root/mysqlInst/

./mysql.sh 2

(3)执行成功之后执行热备份(两台机器上都要执行,两个ip互换,41上写42,42上写41,密码是MySQL的密码为:123456。平台内已经设定好,请勿修改):

命令:

source /etc/profile

./sync.sh 192.168.1.xxx(另一台mysql地址)

4、 创建数据库

目的:MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,增加了速度并提高了灵活性。

步骤:

(1)导入MySQL数据表,只在主节点执行:

命令:

mysql -uroot -p123456 < { 此处为sql文件,主目录下文件: dkh.sql}

如:mysql -uroot -p123456 </root/DKHPlantform/dkh.sql

(2)执行完后查看一下两台mysql的数据表是否存在,从主节点中查看执行:

命令:

mySQL -uroot -p123456

show databases;

use dkh;

show tables;

5、启动安装

目的:服务器配置操作完成之后,启动DKH。

步骤:执行以下命令。

命令:

cd /root/DKHPlantform/dkh-tomcat*/bin/

./startup.sh

6、本地时间服务器搭建步骤

没联网或者装系统时时间未同步,需要搭建本地时间服务器。

(1)搭建内网的ntp服务器

修改/etc/ntp.conf

命令:

Vim /etc/ntp.conf

通过按键盘上的insert或是I键进入编辑模式,编辑完成后按一下Esc键然后按一下按Shift+:键,输入wq后回车就可以保存。输入q!后回车则是放弃保存并退出.

修改下列三行:

#server 0.centos.pool.ntp.org

#server 1.centos.pool.ntp.org

#server 2.centos.pool.ntp.org

在文件最后添加下列两行:

server 127.127.1.0

fudge 127.127.1.0 stratum 10

(2)启动ntp服务

service ntpd start

(3)开机自动启动

chkconfig ntpd on

(4)客户端同步时间

命令:

Vim /etc/ntp.conf

通过按键盘上的insert或是I键进入编辑模式,编辑完成后按一下Esc键然后按一下按Shift+:键,输入wq,后回车就可以保存。输入q!后回车则是放弃保存并退出.

在文件最后添加一行:

*/15 * * * * root ntpdate 192.168.27.35;hwclock -w

相关推荐

js中arguments详解

一、简介了解arguments这个对象之前先来认识一下javascript的一些功能:其实Javascript并没有重载函数的功能,但是Arguments对象能够模拟重载。Javascrip中每个函数...

firewall-cmd 常用命令

目录firewalldzone说明firewallzone内容说明firewall-cmd常用参数firewall-cmd常用命令常用命令 回到顶部firewalldzone...

epel-release 是什么

EPEL-release(ExtraPackagesforEnterpriseLinux)是一个软件仓库,它为企业级Linux发行版(如CentOS、RHEL等)提供额外的软件包。以下是关于E...

FullGC详解  什么是 JVM 的 GC
FullGC详解 什么是 JVM 的 GC

前言:背景:一、什么是JVM的GC?JVM(JavaVirtualMachine)。JVM是Java程序的虚拟机,是一种实现Java语言的解...

2024-10-26 08:50 citgpt

使用Spire.Doc组件利用模板导出Word文档
  • 使用Spire.Doc组件利用模板导出Word文档
  • 使用Spire.Doc组件利用模板导出Word文档
  • 使用Spire.Doc组件利用模板导出Word文档
  • 使用Spire.Doc组件利用模板导出Word文档
跨域(CrossOrigin)

1.介绍  1)跨域问题:跨域问题是在网络中,当一个网络的运行脚本(通常时JavaScript)试图访问另一个网络的资源时,如果这两个网络的端口、协议和域名不一致时就会出现跨域问题。    通俗讲...

微服务架构和分布式架构的区别

1、含义不同微服务架构:微服务架构风格是一种将一个单一应用程序开发为一组小型服务的方法,每个服务运行在自己的进程中,服务间通信采用轻量级通信机制(通常用HTTP资源API)。这些服务围绕业务能力构建并...

深入理解与应用CSS clip-path 属性
深入理解与应用CSS clip-path 属性

clip-pathclip-path是什么clip-path 是一个CSS属性,允许开发者创建一个剪切区域,从而决定元素的哪些部分可见,哪些部分会被隐...

2024-10-25 11:51 citgpt

HCNP Routing&Switching之OSPF LSA类型(二)
  • HCNP Routing&Switching之OSPF LSA类型(二)
  • HCNP Routing&Switching之OSPF LSA类型(二)
  • HCNP Routing&Switching之OSPF LSA类型(二)
  • HCNP Routing&Switching之OSPF LSA类型(二)
Redis和Memcached的区别详解
  • Redis和Memcached的区别详解
  • Redis和Memcached的区别详解
  • Redis和Memcached的区别详解
  • Redis和Memcached的区别详解
Request.ServerVariables 大全

Request.ServerVariables("Url")返回服务器地址Request.ServerVariables("Path_Info")客户端提供的路...

python操作Kafka

目录一、python操作kafka1.python使用kafka生产者2.python使用kafka消费者3.使用docker中的kafka二、python操作kafka细...

Runtime.getRuntime().exec详解

Runtime.getRuntime().exec详解概述Runtime.getRuntime().exec用于调用外部可执行程序或系统命令,并重定向外部程序的标准输入、标准输出和标准错误到缓冲池。...

promise.all详解 promise.all是干什么的
promise.all详解 promise.all是干什么的

promise.all详解promise.all中所有的请求成功了,走.then(),在.then()中能得到一个数组,数组中是每个请求resolve抛出的结果...

2024-10-24 16:21 citgpt

Content-Length和Transfer-Encoding详解
  • Content-Length和Transfer-Encoding详解
  • Content-Length和Transfer-Encoding详解
  • Content-Length和Transfer-Encoding详解
  • Content-Length和Transfer-Encoding详解

取消回复欢迎 发表评论: