安装Rancher的步骤

这篇具有很好参考价值的文章主要介绍了安装Rancher的步骤。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、安装Docker yum install docker

2、配置Docker镜像站 [root@rancher1 ~]# docker pull rancher/rancher Using default tag: latest Error response from daemon: Head https://registry-1.docker.io/v2/rancher/rancher/manifests/latest: net/http: TLS handshake timeout 通过docker拉取rancher最新版的镜像,daemon报错了。怎么办,修改为国内的即可。 建议自己去道客镜像站免费注册个账号,就可以使用它的加速器了。 或者重启docker systemctl restart docker

3、自签名证书

#!/bin/bash -e

help ()

{

    echo  ' ================================================================ '

    echo  ' --ssl-domain: 生成ssl证书需要的主域名,如不指定则默认为www.rancher.local,如果是ip访问服务,则可忽略;'

    echo  ' --ssl-trusted-ip: 一般ssl证书只信任域名的访问请求,有时候需要使用ip去访问server,那么需要给ssl证书添加扩展IP,多个IP用逗号隔开;'

    echo  ' --ssl-trusted-domain: 如果想多个域名访问,则添加扩展域名(SSL_TRUSTED_DOMAIN),多个扩展域名用逗号隔开;'

    echo  ' --ssl-size: ssl加密位数,默认2048;'

    echo  ' --ssl-cn: 国家代码(2个字母的代号),默认CN;'

    echo  ' 使用示例:'

    echo  ' ./create_self-signed-cert.sh --ssl-domain=www.test.com --ssl-trusted-domain=www.test2.com \ '

    echo  ' --ssl-trusted-ip=1.1.1.1,2.2.2.2,3.3.3.3 --ssl-size=2048 --ssl-date=3650'

    echo  ' ================================================================'

}

case "$1" in

    -h|--help) help; exit;;

esac

if [[ $1 == '' ]];then

    help;

    exit;

fi

CMDOPTS="$*"

for OPTS in $CMDOPTS;

do

    key=$(echo ${OPTS} | awk -F"=" '{print $1}' )

    value=$(echo ${OPTS} | awk -F"=" '{print $2}' )

    case "$key" in

        --ssl-domain) SSL_DOMAIN=$value ;;

        --ssl-trusted-ip) SSL_TRUSTED_IP=$value ;;

        --ssl-trusted-domain) SSL_TRUSTED_DOMAIN=$value ;;

        --ssl-size) SSL_SIZE=$value ;;

        --ssl-date) SSL_DATE=$value ;;

        --ca-date) CA_DATE=$value ;;

        --ssl-cn) CN=$value ;;

    esac

done

# CA相关配置

CA_DATE=${CA_DATE:-3650}

CA_KEY=${CA_KEY:-cakey.pem}

CA_CERT=${CA_CERT:-cacerts.pem}

CA_DOMAIN=cattle-ca

# ssl相关配置

SSL_CONFIG=${SSL_CONFIG:-$PWD/openssl.cnf}

SSL_DOMAIN=${SSL_DOMAIN:-'www.rancher.local'}

SSL_DATE=${SSL_DATE:-3650}

SSL_SIZE=${SSL_SIZE:-2048}

## 国家代码(2个字母的代号),默认CN;

CN=${CN:-CN}

SSL_KEY=$SSL_DOMAIN.key

SSL_CSR=$SSL_DOMAIN.csr

SSL_CERT=$SSL_DOMAIN.crt

echo -e "\033[32m ---------------------------- \033[0m"

echo -e "\033[32m       | 生成 SSL Cert |       \033[0m"

echo -e "\033[32m ---------------------------- \033[0m"

if [[ -e ./${CA_KEY} ]]; then

    echo -e "\033[32m ====> 1. 发现已存在CA私钥,备份"${CA_KEY}"为"${CA_KEY}"-bak,然后重新创建 \033[0m"

    mv ${CA_KEY} "${CA_KEY}"-bak

    openssl genrsa -out ${CA_KEY} ${SSL_SIZE}

else

    echo -e "\033[32m ====> 1. 生成新的CA私钥 ${CA_KEY} \033[0m"

    openssl genrsa -out ${CA_KEY} ${SSL_SIZE}

fi

if [[ -e ./${CA_CERT} ]]; then

    echo -e "\033[32m ====> 2. 发现已存在CA证书,先备份"${CA_CERT}"为"${CA_CERT}"-bak,然后重新创建 \033[0m"

    mv ${CA_CERT} "${CA_CERT}"-bak

    openssl req -x509 -sha256 -new -nodes -key ${CA_KEY} -days ${CA_DATE} -out ${CA_CERT} -subj "/C=${CN}/CN=${CA_DOMAIN}"

else

    echo -e "\033[32m ====> 2. 生成新的CA证书 ${CA_CERT} \033[0m"

    openssl req -x509 -sha256 -new -nodes -key ${CA_KEY} -days ${CA_DATE} -out ${CA_CERT} -subj "/C=${CN}/CN=${CA_DOMAIN}"

fi

echo -e "\033[32m ====> 3. 生成Openssl配置文件 ${SSL_CONFIG} \033[0m"

cat > ${SSL_CONFIG} <<EOM

[req]

req_extensions = v3_req

distinguished_name = req_distinguished_name

[req_distinguished_name]

[ v3_req ]

basicConstraints = CA:FALSE

keyUsage = nonRepudiation, digitalSignature, keyEncipherment

extendedKeyUsage = clientAuth, serverAuth

EOM

if [[ -n ${SSL_TRUSTED_IP} || -n ${SSL_TRUSTED_DOMAIN} ]]; then

    cat >> ${SSL_CONFIG} <<EOM

subjectAltName = @alt_names

[alt_names]

EOM

 IFS=","

    dns=(${SSL_TRUSTED_DOMAIN})

    dns+=(${SSL_DOMAIN})

    for i in "${!dns[@]}"do

      echo DNS.$((i+1)) = ${dns[$i]} >> ${SSL_CONFIG}

    done

    if [[ -n ${SSL_TRUSTED_IP} ]]; then

        ip=(${SSL_TRUSTED_IP})

        for i in "${!ip[@]}"do

          echo IP.$((i+1)) = ${ip[$i]} >> ${SSL_CONFIG}

        done

    fi

fi

echo -e "\033[32m ====> 4. 生成服务SSL KEY ${SSL_KEY} \033[0m"

openssl genrsa -out ${SSL_KEY} ${SSL_SIZE}

echo -e "\033[32m ====> 5. 生成服务SSL CSR ${SSL_CSR} \033[0m"

openssl req -sha256 -new -key ${SSL_KEY} -out ${SSL_CSR} -subj "/C=${CN}/CN=${SSL_DOMAIN}" -config ${SSL_CONFIG}

echo -e "\033[32m ====> 6. 生成服务SSL CERT ${SSL_CERT} \033[0m"

openssl x509 -sha256 -req -in ${SSL_CSR} -CA ${CA_CERT} \

    -CAkey ${CA_KEY} -CAcreateserial -out ${SSL_CERT} \

    -days ${SSL_DATE} -extensions v3_req \

    -extfile ${SSL_CONFIG}

echo -e "\033[32m ====> 7. 证书制作完成 \033[0m"

echo

echo

echo -e "\033[32m ====> 8. 以YAML格式输出结果 \033[0m"

echo "----------------------------------------------------------"

echo "ca_key: |"

cat $CA_KEY | sed 's/^/  /'

echo

echo "ca_cert: |"

cat $CA_CERT | sed 's/^/  /'

echo

echo "ssl_key: |"

cat $SSL_KEY | sed 's/^/  /'

echo

echo "ssl_csr: |"

cat $SSL_CSR | sed 's/^/  /'

echo

echo "ssl_cert: |"

cat $SSL_CERT | sed 's/^/  /'

echo

echo -e "\033[32m ====> 9. 附加CA证书到Cert文件 \033[0m"

cat ${CA_CERT} >> ${SSL_CERT}

echo "ssl_cert: |"

cat $SSL_CERT | sed 's/^/  /'

echo

echo -e "\033[32m ====> 10. 重命名服务证书 \033[0m"

echo "cp ${SSL_DOMAIN}.key tls.key"

cp ${SSL_DOMAIN}.key tls.key

echo "cp ${SSL_DOMAIN}.crt tls.crt"

cp ${SSL_DOMAIN}.crt tls.crt

4、将该脚本拷贝到虚拟机的 create_certs.sh中,执行:

mkdir -p /host/certs vim create_certs.sh # 新建文件,复制脚本内容 sh create_certs.sh --ssl-trusted-domain=rancher1 --ssl-trusted-ip=20.20.51.10,20.20.51.11,20.20.51.12 #生成证书

查看生成的证书:
total 44 -rw-r--r-- 1 root root 1131 Nov 11 11:36 cacerts.pem -rw-r--r-- 1 root root 17 Nov 11 11:36 cacerts.srl -rw-r--r-- 1 root root 1679 Nov 11 11:36 cakey.pem -rw-r--r-- 1 root root 5220 Nov 11 11:35 create_certs.sh -rw-r--r-- 1 root root 381 Nov 11 11:36 openssl.cnf -rw-r--r-- 1 root root 2319 Nov 11 11:36 tls.crt -rw-r--r-- 1 root root 1679 Nov 11 11:36 tls.key -rw-r--r-- 1 root root 2319 Nov 11 11:36 www.rancher.local.crt -rw-r--r-- 1 root root 1098 Nov 11 11:36 www.rancher.local.csr -rw-r--r-- 1 root root 1679 Nov 11 11:36 www.rancher.local.key

5、关闭并禁用防火墙 [root@rancher1 ~]# systemctl stop firewalld.service [root@rancher1 ~]# systemctl disable firewalld.service Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

6、安装Rancher

sudo docker run --privileged -d --restart=unless-stopped -p 30000:80 -p 30001:443 -v /mnt/d/rancher_data:/var/lib/rancher/ rancher/rancher:stable

融合部署时候 443端口需要重定向,和存储端口冲突

7、异常处理

密码没找到或者生成

密码重置
Rancher重新安装或从日志找不到密码了,怎么办呢?
这里教大家一个方法,首先确保Rancher是正常运行的,我们打开主节点shell
执行 docker ps
可以看到Rancher正在运行
我们执行下面命令,进入容器 并执行重置密码,注意容器id换成自己的Rancher id
docker exec -ti 884ffd35731b reset-password
执行后我们会得到一个随机密码
docker exec -ti 560de5a4ed88 reset-password New password for default admin user (user-k6cms): M0225ozhk8dNLjNSug4w文章来源地址https://www.toymoban.com/news/detail-718032.html

到了这里,关于安装Rancher的步骤的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • rancher安装

    官网 由于镜像比较大 所以先拉去下来 创建文件 启动容器 访问:ip即可会自动跳转 设置密码 添加集群 导入集群 命名标签 点击创建在master执行,因为我们ssl证书是不受信任/自签名的 master 1. 安装git仓库 创建文件 docker-compose.yml文件如下 执行 查看初始密码 账号root 密码从上面

    2024年02月07日
    浏览(33)
  • 使用docker部署rancher并导入k8s集群

    前言:鉴于我已经部署了k8s集群,那就在部署rancher一台用于管理k8s,这是一台单独的虚拟环境,之前在k8s的master节点上进行部署并未成功,有可能端口冲突了,这个问题我并没有深究,如果非要通过修改端口等操作部署上去后续可能带来的问题我处理不了,也很浪费时间,所

    2024年02月09日
    浏览(46)
  • Kubernetes、Docker Swarm和Rancher的特点 - 容器编排平台比较

    本文将介绍三种流行的容器编排平台:Kubernetes、Docker Swarm和Rancher。我们将比较它们的特点,包括架构、功能、性能和生态系统。通过了解这些平台的优势和劣势,读者可以更好地选择适合自己需求的容器编排平台。 随着容器技术的快速发展,容器编排平台的需求也日益增长

    2024年02月12日
    浏览(60)
  • Rancher的安装(k8s)

    1、 Rancher概述 rancher官方文档 Rancher 是一个 Kubernetes 管理工具,让你能在任何地方和任何提供商上部署和运行集群。 Rancher 可以创建来自 Kubernetes 托管服务提供商的集群,创建节点并安装 Kubernetes,或者导入在任何地方运行的现有 Kubernetes 集群。 Rancher 基于 Kubernetes 添加了新的

    2024年02月15日
    浏览(35)
  • rancher-k8s 管理工具安装

    浏览器输入:https://192.168.31.105:8443/dashboard/auth/login  #修改密码 设置admin密码 Rancher12345    

    2024年02月11日
    浏览(33)
  • Kubernetes rancher、prometheus、ELK的安装

    有关rancher的安装其实官方网站给的步骤已经很详细了,可以直接按照步骤安装即可。 执行 helm repo add 命令,以添加包含安装 Rancher 的 Chart 的 Helm Chart 仓库。 官方推荐的是 Stable:建议用于生产环境 默认是使用下面方式,当然你自己已有证书的情况还是配置为已有证书。 Ra

    2024年02月05日
    浏览(49)
  • 使用 Rancher 安装 K8s 集群

    Ubuntu 22.04.2 LTS Docker 24.0.2 2GB RAM或者更多 CPU 2核心或者更多 Rancher 2.6.9 测试环境中,我准备了两台 Ubuntu 服务器,IP分别是 192.168.10.43 和 192.168.10.42,一台用做 k8s 的 master 节点,一台 note 节点,Rancher 和 master 节点公用一台主机。另外,服务器之间的时间一定要 精准同步 。可以

    2024年02月11日
    浏览(40)
  • Docker+rancher部署SkyWalking8.5并应用在springboot服务中

    Skywalking是一个国产的开源框架,2015年有吴晟个人开源,2017年加入Apache孵化器,国人开源的产品,主要开发人员来自于华为,2019年4月17日Apache董事会批准SkyWalking成为顶级项目,支持Java、.Net、NodeJs等探针,数据存储支持Mysql、Elasticsearch等,跟Pinpoint一样采用字节码注入的方式

    2024年02月13日
    浏览(35)
  • 云原生|kubernetes|rancher-2.6.4安装部署简明手册

    rancher是一个比较特殊的开源的kubernetes管理工具,特殊在它是一个名称为k3s的简单kubernetes集群,而该集群是在kubernetes集群内的。 rancher还可以在一个裸的仅具有docker环境的机器部署,然后通过该机器将其它的kubernetes集群纳入rancher管理(简称纳管),或者是通过该机器快速的

    2023年04月26日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包