zoukankan      html  css  js  c++  java
  • Linux下分布式项目部署环境搭建与使用(druid-1.0.25.jar)数据库连接加密

    一、JDK安装


      1.执行命令:cd Downloads/
      2.上  传:jdk-8u111-linux-x64.tar.gz 到Downloads
      3.执行命令:tar -zxvf jdk-8u111-linux-x64.tar.gz
      4.执行命令:mv jdk1.8.0_111 ~/soft/jdk1.8
      5.执行命令:vim ~/.bash_profile
      6.在文件末尾插入如下内容:

    export JAVA_HOME=/home/redhat/soft/jdk1.8
    export JRE_HOME=/home/redhat/soft/jdk1.8/jre
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
    export PATH=$JAVA_HOME/bin:$PATH

      7.执行命令:source ~/.bash_profile
      8.执行命令验证jdk版本:java -version
        返回如下内容表示安装成功:

    java version "1.8.0_111"
    Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
    Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

     

    二、zookeeper集群环境搭建

    (也可参考:http://www.cnblogs.com/libingbin/p/6604585.html)


      注意:使用三台集群机器,提前确认锁定好ip分别为:
        192.176.0.33
        192.176.0.34
        192.176.0.35

      1.执行命令:cd Downloads/
      2.上传文件:zookeeper-3.4.6.tar.gz
      3.执行命令:tar -zxvf zookeeper-3.4.6.tar.gz
      4.执行命令:mv zookeeper-3.4.6 ~/soft/zookeeper
      5.执行命令:cd ~/soft/zookeeper/
      6.执行命令:mkdir data
      7.执行命令:mkdir logs
      8.执行命令:cd conf/
      9.执行命令:cp zoo_sample.cfg zoo.cfg
      10.执行命令:vim zoo.cfg


      修改
      ...
      dataDir=/tmp/zookeeper
      ...
      为
      ...
      dataDir=/home/redhat/soft/zookeeper/data
      dataLogDir=/home/redhat/soft/zookeeper/logs
      ...
      server.1=192.176.0.33:2888:3888
      server.2=192.176.0.34:2888:3888
      server.3=192.176.0.35:2888:3888
      其中灰色部分添加到文件末尾。
      11.执行命令:cd ~/soft/zookeeper/data/
      12.执行命令:vim myid
        在文件中新增
        1
      13.执行命令:vim ~/.bash_profile
        在文件末尾添加如下内容
        # zookeeper env
        export ZOOKEEPER_HOME=/home/redhat/soft/zookeeper
        export PATH=$ZOOKEEPER_HOME/bin:$PATH
      14.执行命令:source ~/.bash_profile
      15.防火墙中打开2181,2888,3888端口
      16.执行命令(启动zookeeper):zkServer.sh start(zkServer.sh start-foreground)
        zookeeper常用命令:
        启动zookeeper:zkServer.sh start-foreground;
        查看zookeeper进程:jps
        查看状态:zkServer.sh status
        停止服务:zkServer.sh stop

      此服务器搭建好后需要克隆两台机器,每台机器按照ip,修改:
        cd ~/soft/zookeeper/data/
        vim myid

        1-->192.176.0.33
        2-->192.176.0.34
        3-->192.176.0.35

      备注:myid的值是zoo.cfg文件里定义的server.A项A的值,Zookeeper 启动时会读取这个文件,拿到里面的数据与 zoo.cfg 里面的配置信息比较从而判断到底是那个server,只是一个标识作用。

     

    三、redis及哨兵安装——redis安装


      1.root用户登录
      2.执行命令:yum install gcc tcl
      3.执行命令:cd /usr/local/src
      4.上传附件:redis-2.8.19.tar.gz
      5.执行命令:tar -zxvf redis-2.8.19.tar.gz
      6.执行命令:mv redis-2.8.19 redis2.8
      7.执行命令:mkdir /usr/local/redis
      8.执行命令:cd redis2.8
      9.执行命令:make PREFIX=/usr/local/redis install
      10.执行命令:cp /usr/local/src/redis2.8/utils/redis_init_script  /etc/rc.d/init.d/redis
      11.执行命令:mkdir /usr/local/redis/conf
      12.执行命令:mkdir /usr/local/redis/log
      13.执行命令:mkdir /usr/local/redis/data
      14.执行命令:cp /usr/local/src/redis2.8/redis.conf  /usr/local/redis/conf/6379.conf
      15.执行命令:vim /usr/local/redis/conf/6379.conf
        将:logfile "" 改为> logfile "/usr/local/redis/log/redis.log"
        将:daemonize no 改为> daemonize yes
        将:dir ./ 改为>dir /usr/local/redis/data
        将:pidfile /var/run/redis.pid 改为> pidfile /var/run/redis_6379.pid
        在:# requirepass foobared 下新增: requirepass "thinkpad"
        在:# masterauth <master-password> 下新增:masterauth "thinkpad"

      16.执行命令:vim /etc/rc.d/init.d/redis
        修改

    #!/bin/sh
    #
    # Simple Redis init.d script conceived to work on Linux systems
    # as it does use of the /proc filesystem.
    
    REDISPORT=6379
    EXEC=/usr/local/bin/redis-server
    CLIEXEC=/usr/local/bin/redis-cli
    
    PIDFILE=/var/run/redis_${REDISPORT}.pid
    CONF="/etc/redis/${REDISPORT}.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
            ;;
        stop)
            if [ ! -f $PIDFILE ]
            then
                    echo "$PIDFILE does not exist, process is not running"
            else
                    PID=$(cat $PIDFILE)
                    echo "Stopping ..."
                    $CLIEXEC -p $REDISPORT shutdown
                    while [ -x /proc/${PID} ]
                    do
                        echo "Waiting for Redis to shutdown ..."
                        sleep 1
                    done
                    echo "Redis stopped"
            fi
            ;;
        *)
            echo "Please use start or stop as first argument"
            ;;
    esac

      为

    #!/bin/sh
    #
    # Simple Redis init.d script conceived to work on Linux systems
    # as it does use of the /proc filesystem.
    #chkconfig: 2345 80 90
    REDISPORT=6379
    EXEC=/usr/local/redis/bin/redis-server
    CLIEXEC=/usr/local/redis/bin/redis-cli
    
    PIDFILE=/var/run/redis_${REDISPORT}.pid
    CONF="/usr/local/redis/conf/${REDISPORT}.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
            ;;
        stop)
            if [ ! -f $PIDFILE ]
            then
                    echo "$PIDFILE does not exist, process is not running"
            else
                    PID=$(cat $PIDFILE)
                    echo "Stopping ..."
                    $CLIEXEC -p $REDISPORT shutdown
                    while [ -x /proc/${PID} ]
                    do
                        echo "Waiting for Redis to shutdown ..."
                        sleep 1
                    done
                    echo "Redis stopped"
            fi
            ;;
        *)
            echo "Please use start or stop as first argument"
            ;;
    esac

    17.执行命令:vim /etc/profile
      末尾新增

    # redis
    export REDIS_HOME=/usr/local/redis
    export PATH=$REDIS_HOME/bin:$PATH

    18.执行命令:source /etc/profile
    19.执行命令 : chkconfig --add redis
    20.开放端口:6379

    redis常用命令:
       启动redis:service redis start
       关闭redis: service redis stop(密码不方便直接写到脚本中,目前使用下面的命令停服务)
           redis-cli -p 6379 -a thinkpad shutdown
       redis客户端:redis-cli
       redis-cli -h <ip> -a <密码> info Replication

    redis及哨兵安装——哨兵安装

     

      1.执行命令:mkdir /usr/local/redis/sentinel
      2.执行命令:cp /usr/local/src/redis2.8/src/redis-sentinel /usr/local/redis/sentinel/
      3.执行命令:cd /usr/local/redis/sentinel/
      4.执行命令:mkdir dir
      5.执行命令:cp /usr/local/src/redis2.8/sentinel.conf /usr/local/redis/sentinel/
      6.执行命令:vim sentinel.conf
        

    将: daemonize no 改为> daemonize yes
        将: dir /tmp 改为> dir "/usr/local/redis/sentinel/dir"
        将: sentinel monitor mymaster 127.0.0.1 6379 2 改为> 
          sentinel monitor mymaster 192.176.0.35 6379 2(主节点)
        将: sentinel down-after-milliseconds mymaster 30000 改为>
          sentinel down-after-milliseconds mymaster 1000
        在:# sentinel auth-pass <master-name> <password> 下新增:
          sentinel auth-pass mymaster thinkpad
          logfile "/usr/local/redis/sentinel/sentinel.log"


        批注:行尾最后的一个2代表什么意思呢?我们知道,网络是不可靠的,有时候一个sentinel会因为网络堵塞而误以为一个master redis已经死掉了,当sentinel集群式,解决这个问题的方法就变得很简单,只需要多个sentinel互相沟通来确认某个master是否真的死了,这个2代表,当集群中有2个sentinel认为master死了时,才能真正认为该master已经不可用了。(sentinel集群中各个sentinel也有互相通信,通过gossip协议)。

      7.打开防火墙端(修改vim /etc/sysconfig/iptables命令添加使防火墙开放6272,26379端口):
        

    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 6272 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 26379 -j ACCEPT

      备注:
        关闭/开启/重启防火墙
        /etc/init.d/iptables stop
        #iptables start 开启
        #iptables restart 重启
        #iptables status 查看

      8.起redis-sentinel服务命令:

    ./redis-sentinel sentinel.conf

     

     四、nginx安装

     

      1.执行命令:mkdir temp

      2.执行命令:cd temp

      3.上传文件到服务器:nginx-1.8.1.tar.gz,pcre-8.35.tar.gz,zlib-1.2.8.tar.gz

      4.执行命令:yum install -y gcc gcc-c++

      5.执行命令:tar -zxvf pcre-8.35.tar.gz

      6.执行命令:cd /root/temp/pcre-8.35

      7.执行命令:./configure

      8.执行命令:make

      9.执行命令:make install

      10.执行命令:cd /root/temp/

      11.执行命令:tar -zxvf zlib-1.2.8.tar.gz

      12.执行命令:cd zlib-1.2.8

      13.执行命令:./configure

      14.执行命令:make

      15.执行命令:make install

      16.执行命令:cd /root/temp/

      17.执行命令:tar -zxvf nginx-1.8.1.tar.gz

      18.执行命令:mkdir /usr/local/nginx

      19.执行命令:cd nginx-1.8.1

      20.执行命令:./configure --prefix=/usr/local/nginx/

      21.执行命令:make

      22.执行命令:make install

      23.执行命令:ln -s /usr/local/lib/libpcre.so.1 /lib64

      24.打开防火墙80端口:

      -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

     

     weblogic安裝

      进入weblogic安装包存放目录执行安装命令如:

        java –d64 –jar /home/fmw_12.1.3.0.0_wls.jar

       之后按照提示一步一步安装就好。

       (配置与部署可参考:http://www.cnblogs.com/libingbin/p/6759994.html)

     

    备注:使用(druid-1.0.25.jar)数据库连接加密操作流程

      1.进入到附件:druid-1.0.25.jar对应的路径。例如(windows):

      2.执行命令:java -cp druid-1.0.25.jar com.alibaba.druid.filter.config.ConfigTools 密码
        如下图所示

      3.使用标记即可复制出内容,需要注意:无论是公钥还是密码都只取publicKey:,password:后面的数据,且如果有换行去掉换行,公钥和密码每个都是独立的一行。
      4.把加密后的密码公钥配置到配置文件中即可。

     

    <!-- Start -->

    获知及时信息,请关注我的个人微信订阅号:0与1的那点事

     <!-- End -->

     

    本文为博主原创文章,转载请注明出处!

    http://www.cnblogs.com/libingbin/

    感谢您的阅读。

  • 相关阅读:
    HDU 5835 Danganronpa 贪心
    HDU 5842 Lweb and String 水题
    HDU 5832 A water problem 水题
    Codeforces Beta Round #14 (Div. 2) A. Letter 水题
    Western Subregional of NEERC, Minsk, Wednesday, November 4, 2015 Problem K. UTF-8 Decoder 模拟题
    Western Subregional of NEERC, Minsk, Wednesday, November 4, 2015 Problem I. Alien Rectangles 数学
    Western Subregional of NEERC, Minsk, Wednesday, November 4, 2015 Problem H. Parallel Worlds 计算几何
    Western Subregional of NEERC, Minsk, Wednesday, November 4, 2015 Problem F. Turning Grille 暴力
    Western Subregional of NEERC, Minsk, Wednesday, November 4, 2015 Problem C. Cargo Transportation 暴力
    Western Subregional of NEERC, Minsk, Wednesday, November 4, 2015 Problem G. k-palindrome dp
  • 原文地址:https://www.cnblogs.com/libingbin/p/6759104.html
Copyright © 2011-2022 走看看