分布式配置中心 Disconf 安装配置

分布式配置中心 Disconf 安装配置


前提准备

  1. CentOS 服务器一台
  2. MySQL 数据库一台

安装依赖软件

  1. 安装 JDK
  2. 安装 Git
  3. 安装 Maven
  4. 安装 Zookeeeper
  5. 安装 Tomcat
  6. 安装 Redis
  7. 安装 Nginx

安装jdk

  1. yum安装
yum install java
  1. 测试运行
java -version

Git 安装

  1. yum安装
yum install git
  1. 测试运行
git --version

安装maven

  1. 下载maven
wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.tar.gz
  1. 解压
tar -zxvf apache-maven-3.6.0-bin.tar.gz
  1. 配置环境
  • 打开 profile
vim /etc/profile
  • 新增配置
#Maven Environment
export MAVEN_HOME=/software/apache-maven-3.6.0
export PATH=$PATH:$MAVEN_HOME/bin
  • 更新配置
source /etc/profile
  1. 测试
mvn -v
  • 如果有私有库 Nexus ,需要配置setting.xml文件

安装zookeeper

  1. 下载zookeeper
wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13.tar.gz
  1. 解压
tar -zxvf zookeeper-3.4.13.tar.gz
  1. 配置环境
  • 打开 profile
vim /etc/profile
  • 新增配置
#ZOOKEEPER Environment
export ZOOKEEPER_HOME=/software/zookeeper-3.4.13
export PATH=$PATH:$ZOOKEEPER_HOME/bin
  • 更新配置
source /etc/profile
  1. 新建数据和日志文件
mkdir -p /software/zookeeper-3.4.13/data
mkdir -p /software/zookeeper-3.4.13/log
  1. 修改配置文件
  • 复制zookeeper配置文件
cp zoo_sample.cfg zoo.cfg
  • 打开配置文件
vim zoo.cfg
  • 修改日志文件和数据文件地址
dataDir=/software/zookeeper-3.4.13/data
dataLogDir=/software/zookeeper-3.4.13/log
  1. 测试
zkServer.sh start

安装 Tomcat 9

  1. 下载tomcat9
wget http://archive.apache.org/dist/tomcat/tomcat-9/v9.0.13/bin/apache-tomcat-9.0.13.tar.gz
  1. 解压 tomcat
tar -xzvf apache-tomcat-9.0.13.tar.gz
  1. 配置环境
  • 打开 profile
vim /etc/profile
  • 新增配置
#TOMCAT Environment
export CATALINA_HOME=/software/apache-tomcat-9.0.13
export CATALINA_BASE=/software/apache-tomcat-9.0.13
  • 更新配置
source /etc/profile
  1. Tomcat添加启动参数
vi $CATALINA_HOME/bin/catalina.sh
  • 位置cygwin=false前。
JAVA_OPTS="server Xms256m Xmx512m XX: PermSize=64M XX: MaxPermSize=128m"
  1. 开机自启动tomcat
  • 在/etc/init.d下新建一个文件tomcat
vim /etc/init.d/tomcat
  • 新增脚本
#!/bin/sh
# chkconfig: 345 99 10
# description: Auto-starts tomcat
# /etc/init.d/tomcatd
# Tomcat auto-start
# Source function library.
#. /etc/init.d/functions
# source networking configuration.
#. /etc/sysconfig/network
RETVAL=0
export CATALINA_HOME=/software/apache-tomcat-8.5.20
export CATALINA_BASE=/software/apache-tomcat-8.5.20
start()
{
        if [ -f $CATALINA_HOME/bin/startup.sh ];
          then
            echo $"Starting Tomcat"
                $CATALINA_HOME/bin/startup.sh
            RETVAL=$?
            echo " OK"
            return $RETVAL
        fi
}
stop()
{
        if [ -f $CATALINA_HOME/bin/shutdown.sh ];
          then
            echo $"Stopping Tomcat"
                $CATALINA_HOME/bin/shutdown.sh
            RETVAL=$?
            sleep 1
            ps -fwwu root | grep tomcat|grep -v grep | grep -v PID | awk '{print $2}'|xargs kill -9
            echo " OK"
            # [ $RETVAL -eq 0 ] && rm -f /var/lock/...
            return $RETVAL
        fi
}

case "$1" in
 start) 
        start
        ;;
 stop)  
        stop
        ;;
                                                
 restart)
         echo $"Restaring Tomcat"
         $0 stop
         sleep 1
         $0 start
         ;;
 *)
        echo $"Usage: $0 {start|stop|restart}"
        exit 1
        ;;
esac
exit $RETVAL
  • 这里特别提醒注意这一句ps -fwwu root | grep tomcat|grep -v grep | grep -v PID | awk ‘{print $2}’|xargs kill -9,熟悉Linux命令的人应该都清楚这句话的意义,这里就简单说下前半部分,查询root用户下tomcat的进程PID,个人根据实际情况修改。
  • 保存退出之后,给其增加可执行权限
chmod +x tomcat
  • 设定开机启动服务
chkconfig tomcat on
  • 验证:执行reboot。重启之后就会发现,Tomcat已经成功运行了。
reboot
  • 脚本命令
service tomcat start  
service tomcat stop  
service tomcat restart

安装redis

  1. 安装yum
yum install redis
  1. 设置redis开机启动
systemctl enable redis.service
  1. 设置redis密码
  • 打开文件/etc/redis.conf,找到其中的#requirepass foobared,去掉前面的#,并把foobared改成你的密码
  1. 设置所有ip访问
  • 打开文件/etc/redis.conf,找到其中的#bind 127.0.0.1,去掉前面的#,改成bind 0.0.0.0
  1. 测试启动redis
systemctl start redis.service

安装nginx

  1. 安装yum
yum install nginx
  1. 设置redis开机启动
systemctl enable nginx.service
  1. 测试启动nginx
systemctl start nginx .service

安装 disconf

  1. 下载源代码
git clone https://github.com/knightliao/disconf.git
  1. 初始化数据库 路径:sql/readme.md
  • 0-init_table.sql
  • 1-init_data.sql
  • 201512/20151225.sql
  • 20160701/20160701.sql
  1. 拷贝/disconf-web/profile/rd/目录下的文件,放到新建的目录home/disconf/online-resources,拷贝过去后修改内容
  • 将application-demo.properties复制成application.properties
cp application-demo.properties application.properties
  • jdbc-mysql.properties (数据库配置)
  • redis-config.properties (Redis配置)
  • zoo.properties (Zookeeper配置)
  • application.properties (应用配置)

修改配置文件

  • 注意,即使只有一个redis,也应该配置两个redis client,否则将造成内部错误。

设置War包将要被部署的地址(以下地址可自行设定):home/disconf/war

  • 构建 在deploy文件下执行,deploy.sh,bulid_java.sh 文件设置775权限
  1. 构建并打包
cd disconf-web
ONLINE_CONFIG_PATH=/home/disconf/online-resources
WAR_ROOT_PATH=/home/disconf/war
export ONLINE_CONFIG_PATH
export WAR_ROOT_PATH
sh deploy/deploy.sh

这样会在 /home/disconf/war 生成以下结果:

  • disconf-web.war
  • html
  • META-INF
  • WEB-INF
  1. 部署War
    修改 Tomncatserver.xml 文件,在Host结点下设定Context:
<Context path="" docBase="/home/disconf/war"></Context>
  • 并设置端口为: 8015
  1. 部署前端Nginx

新建配置文件disconf.conf

upstream disconf {
    server 127.0.0.1:8015;
}

server {

    listen   8081;
    server_name disconf.com;
    access_log /home/disconf/access.log;
    error_log /home/disconf/error.log;

    location / {
        root /home/disconf/war/html;
        if ($query_string) {
            expires max;
        }
    }

    location ~ ^/(api|export) {
        proxy_pass_header Server;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Scheme $scheme;
        proxy_pass http://disconf;
    }
}
  • 关于host
  • 这里的 host 设置成 disconf.com (可以自定义),但它 必须与 application.properties 里的domain一样。
  1. 启动tomcat 和 nginx
service start tomcat
service start nginx
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一缕南风

随心,随性

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值