后台服务器及相关中间件部署(zookeeper、ActiveMQ,mysql,mongo、redis) - Go语言中文社区

后台服务器及相关中间件部署(zookeeper、ActiveMQ,mysql,mongo、redis)


结构部署图

部署条件
    三台CentOS6.6服务器,ip分别是10.5.1.61、10.5.1.62、10.5.1.73,其中73主要是对外提供服务使用,需要绑定固定IP和映射域名;
    特别注意:服务器时间一点要调整一致,相差60秒内,因为时间不一致,很可能导致做数据库集群的时候,备份服务器不能访问主服务器的问题,或者其它一些原因;

一、安装部署需要的软件
需要安装的软件如上图中所提到的,包括redis,mysql,mongo,zookeeper,ActiveMQ,Tomcat,JDK等;
1.  在61和62上,分别安装redis:
1.1.  下载安装包并上传至服务器/usr/local/目录下,下载网址:http://redis.io/download
1.2.  解压Redis 安装包;
#tar -zxvf redis-2.8.19.tar.gz
1.3.  进入解压出来的文件件;
#cd redis-2.8.19
1.4.  编译
#make
#make install
编译的时候可能会出现缺少gcc 包的问题:

解决办法:使用yum安装gcc ;
#yum install gcc
#yum install gcc-c++
1.5.  为了方便我们自己操作,我们可以创建一个简单的目录,目的是为了方便我们记忆和使用;
创建一个简单的文件目录,根据自己的需求来,在这里我在/urs/local/下创建redis文件夹,并在redis 下创建bin、etc文件夹,bin用来存放redis批处理命令,etc存放配置文件;
#mkdir /usr/local/redis/bin
#mkdir /usr/local/redis/etc
1.6.  将/redis-2.8.19/src下,带有可执行权限的批处理命令移动到自己新建的/redis/bin目录下,一般带执行权限的批处理命令为绿色;
#mv  mkreleasehdr.sh redis-benchmark  redis-check-dump   redis-cli  redis-server redis-check-aof  /usr/local/redis/bin
1.7.  将/redis-2.8.19目录下配置文件redis.conf移动到自己新建的/redis/etc目录下
#mv /usr/local/redis-2.8.19/redis.conf /usrl/local/redis/etc
1.8.  配置redis:
1.8.1.  内存分配,redis可以使用本机的物理内存大小:
#echo "vm.overcommit_memory=1" >> /etc/sysctl.conf
执行sysctl -p命令试配置生效:
#sysctl -p
1.8.2.   不使用透明内存
#echo never > /sys/kernel/mm/transparent_hugepage/enabled
1.8.3.  修改系统端口最大监听队列的长度,默认值为128,我们修改为具体信息为511;
#echo 511 > /proc/sys/net/core/somaxconn
1.8.4.  修改允许redis 后台运行,将redis.config的daemonize配置修改为yes;
#vim /usr/local/redis/etc/redis.conf
1.8.5.  网络优化,在sysctl.conf中添加如下配置:
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
运行命令#sysctl -p 使配置生效。
1.9.  启动redis ,指定配置文件redis.conf,
#/usr/local/redis/bin/redis-server /use/local/redis/etc/redis.conf
1.10.  检查是否启动,redis 默认的端口号是6379,查看该端口是否启动监听
#netstat -na|grep 6379
看到如下信息,证明启动成功;

也可以使用netstat -tunpl | grep 6379命令查看;

1.11.  进入redis客户端
#/usr/local/redis/bin/redis-cli

1.12.  添加一条数据测试:

1.13.  添加redis启动/停止脚本
#vim /etc/init.d/redis
添加一下内容:
# chkconfig: 2345 90 10  
# description: Start and Stop redis        
PATH=/usr/local/bin:/sbin:/usr/bin:/bin        
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
REDIS_CLI=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis.pid  
CONF="/usr/local/redis/etc/redis.conf"

case "$1" in  
        start)  
                if [ -f $PIDFILE ]  
                then  
                        echo "$PIDFILE exists, process is already running or crashed."  
                else  
                        echo "Starting Redis server..."  
                        $EXEC $CONF  
                fi  
                if [ "$?"="0" ]  
                then  
                        echo "Redis is running..."  
                fi  
                ;;  
        stop)  
                if [ ! -f $PIDFILE ]  
                then  
                        echo "$PIDFILE exists, process is not running."  
                else  
                        PID=$(cat $PIDFILE)  
                        echo "Stopping..."  
                        $REDIS_CLI -p $REDISPORT SHUTDOWN  
                        while [ -x $PIDFILE ]  
                        do  
                                echo "Waiting for Redis to shutdown..."  
                                sleep 1  
                        done  
                        echo "Redis stopped"  
                fi  
                ;;  
        restart|force-reload)  
                ${0} stop  
                ${0} start  
                ;;  
        *)  
                echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2  
                exit 1  
esac

1.13.  给redis脚本添加执行权限
#chmod +x /etc/init.d/redis
1.14.  测试启动,停止redis服务命令:
#service redis start
#service redis stop
1.15.  设置开机自启:
#chkconfig redis on
1.16.  查看启动项
chkconfig --list | grep redis

1.27.  编辑防火墙,开放6379端口
2.  redis 集群
2.1.  前提条件:
按上述步骤,分在61 和 62 上安装服务器分别安装redis,并保证redis端口号已经开放;61为主节点master,62是备份节点slave;
2.2.  修改slave节点 redis 配置文件redis.conf,添加配置项:slaveof 10.5.1.61 6379
2.3.  重新启动slave,在master 添加测试数据test,在slave节点读
mater:

slave:

恭喜您集群配置成功。
3.  在61和62上,分别上安装Mysql
3.1.  首先检查mysql 是否自带myql
#rpm -qa|grep mysql
3.2  如果有,先卸载
#rpm remove mysql
3.3.  下载mysql 安装文件,二进制包下载网址:ftp://mirror.switch.ch/software/applications/mysql/Downloads/MySQL-5.6/
3.4.  mysql 共三个包,我下载的是:MySQL-client-5.6.25-1.el6.x86_64.rpm、MySQL-devel-5.6.25-1.el6.x86_64.rpm、MySQL-server-5.6.24-1.el6.x86_64.rpm
#rpm -ivh MySQL-client-5.6.25-1.el6.x86_64.rpm

                    #rpm -ivh MySQL-devel-5.6.25-1.el6.x86_64.rpm

                    #rpm -ivh MySQL-server-5.6.24-1.el6.x86_64.rpm
安装过程出现的问题:
错误信息: file /usr/share/mysql/charsets/latin2.xml from install of MySQL-server-5.6.24-1.el6.x86_64 conflicts with file from package mariadb-libs-1:5.5.41-2.el7_0.x86_64
看到“conflicts”,是产生冲突了,文件“/usr/share/mysql/charsets/*”需要MySQL-server- 5.6.19-1.linux_glibc2.5.x86_64版本的,而系统已经存在mysql-libs-5.1.71-1.el6.x86_64版本的!

解决办法:

执行以下命令,删除mysql-libs-5.1.71-1.el6.x86_64:

yum -y remove mysql-libs-5.1.71*

再执行以下命令安装MySQL:

rpm -ivh MySQL-server-5.6.19-1.linux_glibc2.5.x86_64.rpm

3.5.  安装完成之后,测试启动mysql服务,启动和停止mysql命令如下:
#/etc/init.d/mysql start
查看mysql 端口号,netstat -tunpl|grep 3306;

如果出现上图中信息,证明启动成功。
3.6.  停止sql服务,修改root账户密码
#/etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('1234') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit;
重新执行:
#mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
Mysql>SET PASSWORD = PASSWORD('1234');
3.7.  配置mysql
复制my.cnf文件到/etc目录下:
#cp /use/share/mysql/my-default.cnf /etc/my.cnf
修改mysql字符集为UTF-8,编辑/etc/my.cnf文件,添加如下内容:
[client]  
password=123456  
port=3306  
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_23603981/article/details/48802407
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-03-01 10:32:02
  • 阅读 ( 1589 )
  • 分类:数据库

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢