• 第21周作业



    1、搭建一个 redis 哨兵集群
    实验环境:主节点 10.0.0.81 从节点1 10.0.0.82 从节点2 10.0.0.83
    首先安装redis,yum install -y redis
    实现redis的主从复制
    在主节点,修改配置文件 /etc/redis.conf
    sed -Ei.bak 's/bind 127.0.0.1/bind 0.0.0.0/' /etc/redis.conf
    requirepass 123456
    在全部从节点,修改配置文件 /etc/redis.conf
    sed -Ei.bak 's/bind 127.0.0.1/bind 0.0.0.0/' /etc/redis.conf
    replicaof 10.0.0.81 6379
    requirepass 123456
    masterauth 123456
    主,从节点设置服务的开机自启与服务启动
    systemctl enable --now redis
    设置哨兵环境
    主节点修改配置文件 /etc/redis-sentinel.conf
    sentinel monitor mymaster 10.0.0.81 6379 2
    sentinel auth-pass mymaster 123456
    sentinel down-after-milliseconds mymaster 3000
    将修改好的主节点sentinel的配置文件传送到全部从节点
    确保每个哨兵主机的muid不同
    主从节点启动服务
    systemctl enable --now redis-sentinel.conf
    ss -ntl 查看26379端口是否打开
    2、实现 redis cluster 得部署
    实验环境:6台机器 81-86
    每台机器安装redis
    yum install -y redis
    修改每台机器的配置文件,同时检查机器是否有数据,确保没有数据
    sed -i.bak -e 's/bind 127.0.0.1/bind 0.0.0.0/' -e '/masterauth/a masterauth 123456' -e '/# requirepass/a requirepass 123456' -e '/# cluster-enabled yes/a cluster-enabled yes' -e '/# cluster-config-file nodes-6379.conf/a cluster-config-file nodes-6379.conf' -e '/cluster-require-full-coverage yes/c cluster-require-full-coverage no' /etc/redis.conf
    每台机器启动服务
    systemctl enable --now redis
    类似meet的操作
    redis-cli -a 123456 --cluster create 10.0.0.81:6379 10.0.0.82:6379 10.0.0.83:6379 10.0.0.84:6379 10.0.0.85:6379 10.0.0.86:6379 --cluster-replicas 1
    输入 yes
    查看主从状态
    redis-cli -a 123456 -c INFO replication
    redis-cli cluster nodes

    3、部署一个 tomcat 服务
    #!/bin/bash
    . /etc/init.d/functions
    dir=`pwd`
    jdk_file="jdk-8u271-linux-x64.tar.gz"
    tomcat_file="apache-tomcat-8.5.59.tar.gz"
    jdk_dir="/usr/local"
    tomcat_dir="/usr/local"

    install_jdk() {
    if ! [ -f "$dir/$jdk_file" ];then
    action "$jdk_file文件不存在" false
    exit;
    elif [ -d $jdk_dir/jdk ];then
    action "jdk 已经安装" false
    exit;
    else
    [ -d "$jdk_dir" ] || mkdir -pv "$jdk_dir"
    fi
    tar xf $jdk_file -C $jdk_dir
    cd $jdk_dir && ln -s jdk1.8.* jdk
    cat > /etc/profile.d/jdk.sh <<EOF
    export JAVA_HOME=$jdk_dir/jdk
    export JRE_HOME=$JAVA_HOME/jre
    export CLASSPATH=$JAVA_HOME/lib/:$JRE_HOME/lib/
    export PATH=$PATH:$JAVA_HOME/bin
    EOF
    . /etc/profile.d/jdk.sh
    java -version && action "JDK 安装完成"
    || { action "JDK 安装失败" false ; exit; }
    }
    install_tomcat() {
    if ! [ -f "$dir/$tomcat_file" ];then
    action "$tomcat_file文件不存在" false
    exit;
    elif [ -d $tomcat_dir/tomcat ];then
    action "tomcat 已经安装" false
    exit;
    else
    [ -d "$tomcat_dir" ]||mkdir -pv "$tomcat_dir"
    fi

    tar xf $dir/$tomcat_file -C $tomcat_dir
    cd $tomcat_dir && ln -s apache-tomcat-* tomcat
    echo "PATH=$tomcat_dir/tomcat/bin:$PATH" > /etc/profile.d/tomcat
    id tomcat &> /dev/null || useradd -r -s /sbin/nologin tomcat
    cat > $tomcat_dir/tomcat/conf/tomcat.conf <<EOF
    JAVA_HOME=$jdk_dir/jdk
    EOF
    chown -R tomcat.tomcat $tomcat_dir/tomcat/
    cat > /lib/systemd/system/tomcat.service <<EOF
    [Unit]
    Description=Tomcat
    #After=syslog.target network.target remote-fs.target nss-lookup.target
    After=syslog.target network.target
    [Service]
    Type=forking
    EnvironmentFile=$tomcat_dir/tomcat/conf/tomcat.conf
    ExecStart=$tomcat_dir/tomcat/bin/startup.sh
    ExecStop=$tomcat_dir/tomcat/bin/shutdown.sh
    RestartSec=3
    PrivateTmp=true
    User=tomcat
    Group=tomcat
    [Install]
    WantedBy=multi-user.target
    EOF
    systemctl daemon-reload
    systemctl enable --now tomcat.service
    systemctl is-active tomcat.service &> /dev/null && action "TOMCAT 安装完成"
    || { action "tomcat 安装失败" false ; exit; }
    }
    install_jdk
    install_tomcat

  • 相关阅读:
    【转】有关Managed code和Native code的区别
    【转】wince6.0 vs2005 编译选项详解
    【转】Wince Device Emulator使用介绍Device Emulator 2.0
    Dapper基础增删查改、事务和存储过程
    SharpCompress的压缩文件解压和文件夹压缩
    MVC WebAPI 的基本使用
    prepare for travel 旅行准备
    gossip
    JS笔记(3) 词汇结构(待续。。。)
    Good Points Bad Points
  • 原文地址:https://www.cnblogs.com/ssel/p/13935896.html
Copyright © 2020-2023  润新知