1.解压
解压到指定目录
tar -xzvf jdk-8u301-linux-x64.tar.gz -C ./../servers/
指定文件解压
tar -zxvf /export/software/hadoop-2.7.4.tar.gz
2.建立软连接【快捷方式】
ln -s hadoop-2.7.4 hadoop
ls
ln -s jdk1.8.0_301/ jdk
ls
3.Linux环境变量
在自定义安装软件的时候,经常需要配置环境变量,下面列举出各种对环境变量的配置方法。
3.1 输出环境变量
- export 命令显示当前系统定义的所有环境变量
- echo $PATH 命令输出当前的PATH环境变量的值
[root@master ~]# export
echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/root/bin
3.2 Linux设置环境变量
这里以Java为例
在JDK1.5之后的版本,配置Java环境变量的时候我们不再需要配置classpath,只需要配置Java_Home以及path即可!
rpm -qa|grep jdk
rpm -e --nodeps java
1.Linux环境变量配置方法一:export PATH
使用export命令直接修改PATH的值
export JAVA_HOME=/export/servers/jdk
# 一般把PATH放在前面中间是:(linux冒号)
export PATH=$PATH:$JAVA_HOME/bin
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/root/bin:/export/servers/jdk
注意事项:
- 生效时间:立即生效
- 生效期限:当前终端有效,窗口关闭后无效
- 生效范围:仅对当前用户有效
- 配置的环境变量中不要忘了加上原来的配置,即$PATH部分,避免覆盖原来配置
2.Linux环境变量配置方法二:vim ~/.bashrc
通过修改用户目录下的~/.bashrc文件进行配置:
vim ~/.bashrc
export JAVA_HOME=/export/servers/jdk
# 在最后一行加上
export PATH=$PATH:$JAVA_HOME/bin
注意事项:
- 生效时间:使用相同的用户打开新的终端时生效,或者手动source ~/.bashrc生效
- 生效期限:永久有效
- 生效范围:仅对当前用户有效
- 如果有后续的环境变量加载文件覆盖了PATH定义,则可能不生效
3.Linux环境变量配置方法三:vim ~/.bash_profile
和修改~/.bashrc文件类似,也是要在文件最后加上新的路径即可:
vim ~/.bash_profile
export JAVA_HOME=/export/servers/jdk
#在最后一行加上
export PATH=$PATH:$JAVA_HOME/bin
注意事项:
- 生效时间:使用相同的用户打开新的终端时生效,或者手动source ~/.bash_profile生效
- 生效期限:永久有效
- 生效范围:仅对当前用户有效
- 如果没有/.bash_profile文件,则可以编辑/.profile文件或者新建一个
4.Linux环境变量配置方法四:vim /etc/bashrc
该方法是修改系统配置,需要管理员权限(如root)或者对该文件的写入权限:
# 如果/etc/bashrc文件不可编辑,需要修改为可编辑
chmod -v u+w /etc/bashrc
export JAVA_HOME=/export/servers/jdk
#在最后一行加上
export PATH=$PATH:$JAVA_HOME/bin
注意事项:
- 生效时间:新开终端生效,或者手动source /etc/bashrc生效
- 生效期限:永久有效
- 生效范围:对所有用户有效
5.Linux环境变量配置方法五:vim /etc/profile
该方法修改系统配置,需要管理员权限或者对该文件的写入权限,和vim /etc/bashrc类似:
# 如果/etc/profile文件不可编辑,需要修改为可编辑
chmod -v u+w /etc/profile
vim /etc/profile
export JAVA_HOME=/export/servers/jdk
#在最后一行加上
export PATH=$PATH:$JAVA_HOME/bin
注意事项:
- 生效时间:新开终端生效,或者手动source /etc/profile生效
- 生效期限:永久有效
- 生效范围:对所有用户有效
6.Linux环境变量配置方法六:vim /etc/environment
该方法是修改系统环境配置文件,需要管理员权限或者对该文件的写入权限:
# 如果/etc/bashrc文件不可编辑,需要修改为可编辑
chmod -v u+w /etc/environment
vim /etc/environment
export JAVA_HOME=/export/servers/jdk
#在最后一行加上
export PATH=$PATH:$JAVA_HOME/bin
注意事项:
- 生效时间:新开终端生效,或者手动source /etc/profile生效
- 生效期限:永久有效
- 生效范围:对所有用户有效
环境变量的分类
环境变量可以简单的分成用户自定义的环境变量以及系统级别的环境变量。
用户级别环境变量定义文件:
~/.bashrc、~/.profile(部分系统为:~/.bash_profile)
系统级别环境变量定义文件:
/etc/bashrc、/etc/profile(部分系为:/etc/bash_profile)、/etc/environment
另外在用户环境变量中,系统会首先读取~/.bash_profile(或者~/.profile)文件,如果没有该文件则读取~/.bash_login,根据这些文件中内容再去读取~/.bashrc。
可以推测出Linux加载环境变量的顺序如下:
- /etc/environment
- /etc/profile
- /etc/bash.bashrc
- /etc/profile.d/test.sh
- ~/.profile
- ~/.bashrc
小技巧:
可以自定义一个环境变量文件,比如在某个项目下定义env.profile,在这个文件中使用export定义一系列变量,然后在~/.profile文件后面加上:sourc env.profile,这样你每次登陆都可以在Shell脚本中使用自己定义的一系列变量。
也可以使用alias命令定义一些命令的别名,比如alias rm=“rm -i”(双引号必须),并把这个代码加入到~/.profile中,这样你每次使用rm命令的时候,都相当于使用rm -i命令,非常方便。
4.防火墙
4.1 firewalld
1.查看防火状态
systemctl status firewalld
2.暂时关闭防火墙
systemctl stop firewalld
3.永久关闭防火墙
systemctl disable firewalld
4.永久关闭后重启防火墙
systemctl enable firewalld
4.1 selinux
查看:sestatus
临时禁用:
setenforce 0
setenforce Permissive
永久禁用
vi /etc/sysconfig/selinux
SELINUX=disabled
5.免密登录
SSH 三步解决免密登录:
1.客户端生成公私钥
ssh-keygen
2.上传公钥到服务器
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.121.202
3.测试免密登录
ssh root@192.168.121.202
6.zookeeper配置
查看启动命令
netstat -at|grep 2181 #查看zookeeper端口
netstat -nat #查看端口信息
./zkServer.sh start #启动
jps #查看启动的服务名称
./zkServer.sh stop #关闭
dataDir=/home/jqlin/dev/zookeeper-3.4.6/data
tickTime=2000
initLimit=5
syncLimit=2
clientPort=2181
server.0=192.168.121.151:2888:3888
server.1=192.168.121.152:2888:3888
server.2=192.168.121.153:2888:3888
tickTime:这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
dataDir:顾名思义就是 Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
clientPort:这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
配置参数说明
initLimit:这个配置项是用来配置Zookeeper接受客户端初始化连接时最长能忍受多少个心跳时间间隔数。当已经超过10个心跳的时间长度后Zookeeper服务器还没有收到客户端的返回信息,那么表明这个客户端连接失败。总的时间长度就是52000=10秒(即tickTimeinitLimit=10秒)。
注意:
1、Leader/Follower:领导者/追随者
2、这里所说的客户端不是用户连接Zookeeper服务器的客户端,而是Zookeeper服务器集群中连接到Leader的Follower服务器
syncLimit:这个配置项标识Leader与Follower之间发送消息,请求和应答时间长度,最长不能超过多少个tickTime的时间长度,总的时间长度就是2*2000=4秒
server.A=B:C:D配置项
A:这是一个数字,表示这是第几号服务器
B:A服务器的IP地址
C:通讯端口,即A服务器与集群中的 Leader 服务器交换信息的端口
D:选举通讯端口,表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时服务器相互通信的端口。如果是伪集群的配置方式,由于 B 都是一样,所以不同的 Zookeeper 实例通信端口号不能一样,所以要给它们分配不同的端口号。
创建myid文件
除了修改 zoo.cfg 配置文件,集群模式下还要配置一个文件 myid,这个文件在 dataDir 目录下,这个文件里面就只有一个数据就是 A 的值,Zookeeper 启动时会读取这个文件,拿到里面的数据与 zoo.cfg 里面的配置信息比较从而判断到底是那个server。
6.hadoop的配置
参考文档
7.mysql的配置
7.1在线安装
1.下载mysql源安装包 wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
2.安装mysql源
yum localinstall mysql57-community-release-el7-8.noarch.rpm
3.安装MySQL
yum install mysql-community-server
4.启动MySQL服务systemctl start mysqld
5.获取默认密码grep 'temporary password' /var/log/mysqld.log
6.登录修改密码
mysql -u root –p
输入密码:
SET PASSWORD = PASSWORD(‘Hadoop@123’);
7.修改密码强度
set global validate_password_mixed_case_count=0;
set global validate_password_number_count=3;
set global validate_password_special_char_count=0;
set global validate_password_length=6;
8.修改成000000
7.2 包安装
mysql版本:mysql-5.6.44-linux-glibc2.12-x86_64.tar
8修改host文件
8.1 linux下修改hosts
/etc/hosts下添加如下
192.168.121.151 master
192.168.121.152 slaver1
192.168.121.153 slaver2
8.2 windows下修改hosts
hosts文件是一个用于储存计算机网络中各节点信息的计算机文件。这个文件负责将主机域名映射到相应的IP地址。hosts文件通常用于补充或取代网络中DNS的功能。和DNS不同的是,计算机的用户可以直接对hosts文件进行控制。hosts文件的作用非常大,可以自由解析域名。
hosts文件位置在不同操作系统的位置不大一样:
Windows NT/2000/XP/Vista/win7(即微软NT系列操作系统):
默认位置为 %SystemRoot%\system32\drivers\etc\,但也可以改变。
复制以下内容进去保存一下,要改hosts的时候运行一下就出来了
@echo 去除hosts文件的只读和隐藏属性,防止hosts文件无法修改
attrib -r -h %Systemroot%\System32\Drivers\Etc\hosts
@echo 用记事本打开hosts文件
notepad.exe %Systemroot%\System32\Drivers\Etc\hosts
其实后面可以开始-运行 输入回车:
notepad.exe %Systemroot%\System32\Drivers\Etc\hosts
9.修改主机名
Linux修改系统主机名
9.1查看主机名
[root@master export]# uname -n
master
[root@master export]# hostname
master
9.2 修改hostname的两种方式?
1: hostname test --运行后立即生效(新会话生效),但是在系统重启后会丢失所做的修改
2.hostnamectl set-hostname master 重启永久生效
10.scp的用法
10.1 将本机文件复制到远程服务器上
(1)将本地文件拷贝到 远程
scp 文件名 --用户名 @计 算机IP或者计算机名称 :远程路径
#复制文件
scp /etc/hosts root@192.168.121.152:/etc/hosts
(2)将本地目录拷贝到远程
scp -r 目录名 用 户名 @计算机IP或者计算机名称 :远程路径
#复制目录
scp -r /etc/ root@192.168.121.152:/etc/
10.2 将远程服务器上的文件复制到本机
(1)从远程将文件拷回本地
scp --用户名 @计算机IP或者计算机名称 :文件名 本地路径
#复制文件
scp root@192.168.121.152:/etc/hosts /etc/hosts
(2)从远程将目录拷回本地
scp -r 用户名@计算机IP或者计算机名称:目录名 本地路径
#复制目录
scp -r root@192.168.121.152:/etc/ /etc/
技巧
#目标的相同目录
scp 文件名 --用户名 @计 算机IP或者计算机名称:`pwd`
#复制文件
scp /etc/hosts root@192.168.121.152:`pwd`
11.安装SSH的客户端
#查看 openssh 版本命令
ssh -V
#查看 openssl 版本命令
openssl version
#不存在的时候安装
yum install -y openssh-clients.x84_64