# 安装 需要相关包
# ==================================================================node1 node2 node3

yum install -y gcc gcc-c++ zlib zlin-devel perl ncurses-devel

# 安装 openssl
# ==================================================================node1

scp -r ~/openssl-1.1.0g.tar.gz node2:~/
scp -r ~/openssl-1.1.0g.tar.gz node3:~/

# ==================================================================node1 node2 node3

tar -zvxf ~/openssl-1.1.0g.tar.gz

cd openssl-1.1.0g

./config --prefix=/usr/local/openssl

# 修改Makefile
vi Makefile #CFLAG= -DOPENSSL_THREADS
CFLAG= -fPIC -DOPENSSL_THREADS # 执行执行
make && make install rm -rf ~/openssl-1.1.0g.tar.gz
rm -rf ~/openssl-1.1.0g

# 安装 erlang
# ==================================================================node1

scp -r ~/otp_src_20.3.tar.gz node2:~/
scp -r ~/otp_src_20.3.tar.gz node3:~/

# ==================================================================node1 node2 node3

cd ~
tar -xf ~/otp_src_20.3.tar.gz mkdir /usr/local/erlang cd otp_src_20.3 # 配置安装路径编译代码
./configure --prefix=/usr/local/erlang --without-javac --with-ssl=/usr/local/openssl # 执行编译结果
make && make install # 完成后进入/usr/local/erlang查看执行结果
ls /usr/local/erlang rm -rf ~/otp_src_20.3.tar.gz
rm -rf ~/otp_src_20.3 # 环境变量
vi /etc/profile # 在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL下添加 export JAVA_HOME=/usr/java/jdk1.8.0_111
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.12
export HADOOP_HOME=/usr/local/hadoop-2.7.6
export MYSQL_HOME=/usr/local/mysql
export HBASE_HOME=/usr/local/hbase-1.2.4
export HIVE_HOME=/usr/local/hive-2.1.1
export SCALA_HOME=/usr/local/scala-2.12.4
export KAFKA_HOME=/usr/local/kafka_2.12-0.10.2.1
export FLUME_HOME=/usr/local/flume-1.8.0
export SPARK_HOME=/usr/local/spark-2.3.0
export STORM_HOME=/usr/local/storm-1.1.0
export ERLANG_HOME=/usr/local/erlang export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ZOOKEEPER_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$MYSQL_HOME/bin:$HBASE_HOME/bin:$HIVE_HOME/bin:$SCALA_HOME/bin:$KAFKA_HOME/bin:$FLUME_HOME/bin:$SPARK_HOME/bin:$SPARK_HOME/sbin:$STORM_HOME/bin:$ERLANG_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native # 使环境变量生效
cd ~
source /etc/profile # 查看配置结果
echo $ERLANG_HOME cd $ERLANG_HOME erl # 退出
> halt().

# 安装 rabbitmq

# ==================================================================node1
# 解压rabbitmq,官方给的包是xz压缩包,所以需要使用xz命令

cd ~
xz -d ~/rabbitmq-server-generic-unix-3.7.5.tar.xz #xz解压后得到.tar包,再用tar命令解压
tar -xvf rabbitmq-server-generic-unix-3.7.5.tar -C /usr/local rm -rf ~/rabbitmq-server-generic-unix-3.7.5.tar

# 环境变量
# ==================================================================node1 node2 node3

vi /etc/profile

# 在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL下添加

export JAVA_HOME=/usr/java/jdk1.8.0_111
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.12
export HADOOP_HOME=/usr/local/hadoop-2.7.6
export MYSQL_HOME=/usr/local/mysql
export HBASE_HOME=/usr/local/hbase-1.2.4
export HIVE_HOME=/usr/local/hive-2.1.1
export SCALA_HOME=/usr/local/scala-2.12.4
export KAFKA_HOME=/usr/local/kafka_2.12-0.10.2.1
export FLUME_HOME=/usr/local/flume-1.8.0
export SPARK_HOME=/usr/local/spark-2.3.0
export STORM_HOME=/usr/local/storm-1.1.0
export ERLANG_HOME=/usr/local/erlang
export RABBITMQ_HOME=/usr/local/rabbitmq_server-3.7.5 export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ZOOKEEPER_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$MYSQL_HOME/bin:$HBASE_HOME/bin:$HIVE_HOME/bin:$SCALA_HOME/bin:$KAFKA_HOME/bin:$FLUME_HOME/bin:$SPARK_HOME/bin:$SPARK_HOME/sbin:$STORM_HOME/bin:$ERLANG_HOME/bin:$RABBITMQ_HOME/ebin:$RABBITMQ_HOME/sbin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

# ==================================================================node1

# 使环境变量生效
source /etc/profile # 查看配置结果
echo $RABBITMQ_HOME scp -r $RABBITMQ_HOME node2:/usr/local/
scp -r $RABBITMQ_HOME node3:/usr/local/

# ==================================================================node2 node3

# 使环境变量生效
source /etc/profile # 查看配置结果
echo $RABBITMQ_HOME

# 高并发设置

# ==================================================================node1 node2 node3

# 调整可打开文件/文件描述符数目(高并发支持)
# 调整系统限制
vi /etc/sysctl.conf fs.file-max = 100000 # 使设置生效
sysctl -p # 查看系统限制
sysctl fs.file-max # 调整用户限制
vi /etc/security/limits.conf * soft nofile 65536
* hard nofile 65536 shutdown -h now
# 快照 rabbitmq集群前

# ==================================================================node1 node2 node3

# 在后台启动Rabbit
rabbitmq-server -detached # 安装web插件管理界面
# ==================================================================安装 rabbitmq_management插件
rabbitmq-plugins enable rabbitmq_management # ==================================================================安全认证
# 添加用户(用户名 admin 密码 Rabbitmq*123456 )
rabbitmqctl add_user admin Rabbitmq*123456 # 设置用户角色(设置admin用户为管理员角色)
rabbitmqctl set_user_tags admin administrator # 设置用户权限(设置admin用户配置、写、读的权限)
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*" # 删除用户(删除guest用户)
rabbitmqctl delete_user guest
# 注意:rabbitmq从3.3.0开始禁止使用guest/guest权限通过除localhost外的访问。 # 创建和赋角色完成后查看并确认
rabbitmqctl list_users # 查看状态
rabbitmqctl status # 查看 admin 用户的权限
rabbitmqctl list_user_permissions admin # 浏览器输入地址:http://node1:15672/
# 用户名密码: admin/Rabbitmq*123456 # 浏览器输入地址:http://node2:15672/
# 用户名密码: admin/Rabbitmq*123456

# 集群配置

# ==================================================================node1
find / -name ".erlang.cookie" ll /root/.erlang.cookie chmod 600 /root/.erlang.cookie # 读取其中一个节点的cookie, 并复制到其他节点(节点之间通过cookie确定相互是否可通信)
# 查看rabbitmq的启动日志中 home dir
echo -n "RABBITMQERLANGCOOKIE" > /root/.erlang.cookie cat /root/.erlang.cookie
#RABBITMQERLANGCOOKIE # ==================================================================node2 node3
chmod 600 /root/.erlang.cookie # ==================================================================node1
scp /root/.erlang.cookie node2:/root/.erlang.cookie
scp /root/.erlang.cookie node3:/root/.erlang.cookie # ==================================================================node1 node2 node3 reboot rabbitmq-server -detached # 加入集群
# 默认是磁盘节点,如果是内存节点的话,需要加--ram参数
# 其中--ram代表是内存节点,如果希望是磁盘节点则不用加--ram,在rabbitmq集群中,至少需要一个磁盘节点
# ==================================================================node1
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster --ram rabbit@node1
rabbitmqctl start_app
rabbitmqctl status # ==================================================================node2
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster --ram rabbit@node1
rabbitmqctl start_app
rabbitmqctl status # ==================================================================node3
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@node1
rabbitmqctl start_app
rabbitmqctl status # ==================================================================node1
# 设置镜像策略
rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all","ha-sync-mode":"automatic"}' rabbitmqctl cluster_status # ==================================================================node1
# 创建和赋角色完成后查看并确认
rabbitmqctl list_users # 需重新添加用户(用户名 admin 密码 Rabbitmq*123456 )
rabbitmqctl add_user admin Rabbitmq*123456 # 设置用户角色(设置admin用户为管理员角色)
rabbitmqctl set_user_tags admin administrator # 设置用户权限(设置admin用户配置、写、读的权限)
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*" # 删除用户(删除guest用户)
rabbitmqctl delete_user guest
# 注意:rabbitmq从3.3.0开始禁止使用guest/guest权限通过除localhost外的访问。 # ==================================================================node1 node2 node3
# 创建和赋角色完成后查看并确认
rabbitmqctl list_users rabbitmqctl cluster_status # 浏览器输入地址:http://node1:15672/
# 用户名密码: admin/Rabbitmq*123456 # 浏览器输入地址:http://node2:15672/
# 用户名密码: admin/Rabbitmq*123456 rabbitmqctl stop shutdown -h now
# 快照 rabbitmq

hadoop生态搭建(3节点)-12.rabbitmq配置的更多相关文章

  1. hadoop生态搭建(3节点)

    软件:CentOS-7    VMware12    SSHSecureShellClient shell工具:Xshell 规划 vm网络配置 01.基础配置 02.ssh配置 03.zookeep ...

  2. hadoop生态搭建(3节点)-08.kafka配置

    如果之前没有安装jdk和zookeeper,安装了的请直接跳过 # https://www.oracle.com/technetwork/java/javase/downloads/java-arch ...

  3. hadoop生态搭建(3节点)-15.Nginx_Keepalived_Tomcat配置

    # Nginx+Tomcat搭建高可用服务器名称 预装软件 IP地址Nginx服务器 Nginx1 192.168.6.131Nginx服务器 Nginx2 192.168.6.132 # ===== ...

  4. hadoop生态搭建(3节点)-04.hadoop配置

    如果之前没有安装jdk和zookeeper,安装了的请直接跳过 # https://www.oracle.com/technetwork/java/javase/downloads/java-arch ...

  5. hadoop生态搭建(3节点)-10.spark配置

    # https://www.scala-lang.org/download/2.12.4.html# ================================================= ...

  6. hadoop生态搭建(3节点)-13.mongodb配置

    # 13.mongodb配置_副本集_认证授权# ==================================================================安装 mongod ...

  7. hadoop生态搭建(3节点)-03.zookeeper配置

    # https://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html # ===== ...

  8. hadoop生态搭建(3节点)-09.flume配置

    # http://archive.apache.org/dist/flume/1.8.0/# ===================================================== ...

  9. hadoop生态搭建(3节点)-14.redis配置

    # ==================================================================规划node1 redis:7000 7001 192.168. ...

随机推荐

  1. SQL-SERVER学习(一) 数据表的基本操作

    1.创建一个数据库,数据库的名字是UserInfo create database UserInfo; 2.创建一个数据表,数据表的名字是UserInfocreate table UserInfo( ...

  2. 华为手机在开发Android调试时logcat不显示输出信息的解决办法

    手机连接电脑RUN AS logcat 提示:Unable to open log device '/dev/log/main': No such file or directory 信息 本人华为C ...

  3. 【Leetcode】【Medium】Unique Paths II

    Follow up for "Unique Paths": Now consider if some obstacles are added to the grids. How m ...

  4. Python学习---重点模块之shelve

    简单示例 import shelve f = shelve.open(r'shelve.txt') f['info'] = {'name':'ftl', 'age':23, 'sex': 'male' ...

  5. C/C++ 标准

    正式标准是需要付费的,不过可以在http://open-std.org/上找到标准的草案(和实际标准相差不大但是可以免费获取) 下面列出一下可能会用到的标准草案:C99:http://open-std ...

  6. JS中confirm弹出框

    if(confirm("确定要删除该任务吗?")){ $.post("findTaskById.action",{taskId:taskId},function ...

  7. ResNet 修改

    https://github.com/tornadomeet/ResNet apache 开源项目 修改如下: 训练模块 import argparse,logging,os import mxnet ...

  8. PHP------面向对象的特性

    面向对象的特性 一.面向对象有三大特性: 封装.继承.多态.(非常重要,第一要记住!!!!!!!!!!) 二.封装 封装就是用来做类的,把一个类封装起来.做类不能随便的做.我们做类不能随便去写一个类, ...

  9. 【题解】洛谷P2704 [NOI2001] 炮兵阵地(状压DP)

    洛谷P2704:https://www.luogu.org/problemnew/show/P2704 思路 这道题一开始以为是什么基于状压的高端算法 没想到只是一道加了一行状态判断的状压DP而已 与 ...

  10. HDU 1286 找新朋友 (欧拉公式或者标记法(其实就是欧拉公式的思想))

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1286 找新朋友 Time Limit: 2000/1000 MS (Java/Others)    M ...