• 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/

    感谢您的阅读。

  • 相关阅读:
    android 访问SD卡的方法
    android 用Achartengine 作图
    hello
    IIS 7.0 "确认文件是否存在"功能
    test
    收藏:如何在Web页面上直接打开、编辑、创建Office文档
    JavaScript面向对象技术
    正则表达式30分钟入门教程
    JWT有状态登陆与无状态登陆
    20条JavaScript代码简洁的写法
  • 原文地址:https://www.cnblogs.com/libingbin/p/6759104.html
Copyright © 2020-2023  润新知