我是靠谱客的博主 愉快纸鹤,最近开发中收集的这篇文章主要介绍华为鲲鹏ARM架构部署 rancher及其服务华为鲲鹏ARM架构部署 rancher及其服务环境准备,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

华为鲲鹏ARM架构部署 rancher及其服务

环境准备

安装docker

鲲鹏docker部署 https://www.huaweicloud.com/kunpeng/software/docker.html

centos-extra仓库必须处于“enabled”状态。这是操作系统默认配置,如果你已经设置成“disabled”,则需要重新设置。

相关命令如下:

  • 查询仓库状态:yum repolist all

例如:yum repolist all|grep "CentOS-7 - Extras"

  • 设置为“enabled”状态:yum-config-manager --enable

例如: yum-config-manager --enable "CentOS-7 - Extras - mirrors.huaweicloud.com"

  • 设置为“disabled”状态:yum-config-manager --disable

例如:yum-config-manager --disable "CentOS-7 - Extras - mirrors.huaweicloud.com"

CentOS操作系统

安装步骤

安装依赖包

执行以下命令安装依赖包。

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

执行安装

方式一:使用软件仓库安装

  1. 老版本的docker的命名为“docker”或 “docker-engine”,如果安装了这些版本,需要先卸载掉。

保存在“/var/lib/docker/”中的内容,包括图片、磁盘和网络配置等都会保留下来。

sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate
  1. 配置软件仓库。
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  1. 安装docker-ce。

这个命令总是会安装最新版本的docker-ce,如果需要安装指定版本的可以参考下面的操作:

sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

方式二:下载软件包进行安装

  1. 通过https://download.docker.com/linux/centos/7/aarch64/stable/Packages/,下载指定版本的软件包。

  2. 执行命令安装软件包及依赖。“package.rpm”为下载的软件包。

sudo yum install /path/to/package.rpm

启动软件

  1. 启动Docker。
sudo systemctl start docker

设置日志大小

cat > /etc/docker/daemon.json << EOF
{
 "registry-mirrors": ["https://089da2c63700258f0fbfc01626787020.mirror.swr.myhuaweicloud.com"],
 "log-driver":"json-file",
 "log-opts":{
        "max-size": "50m",
        "max-file": "1"
    }
}
EOF

重启docker

systemctl daemon-reload && systemctl restart docker && systemctl status docker

使用一个hello-world镜像验证Docker是否正常。

sudo docker run hello-world

回显内容如下:

Unable to find image ‘hello-world:latest’ locally
latest: Pulling from library/hello-world
3b4173355427: Pull complete
Digest: sha256:41a65640635299bab090f783209c1e3a3f11934cf7756b09cb2f1e02147c6ed8
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the “hello-world” image from the Docker Hub.
(arm64v8)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/

安装docker-compose

鲲鹏dockers-compose安装 https://support.huaweicloud.com/prtg-kunpengmm/dockercompose_01_0001.html

安装步骤

获取软件包

获取“Docker Compose-1.22.0”安装包。

cd /usr/local/src
git clone https://github.com/ubiquiti/docker-compose-aarch64.git

安装

  1. 进入docker-compose源文件目录。

    cd /usr/local/src/docker-compose-aarch64
    
  2. 配置Dockerfile。

    vi Dockerfile

    注释掉RUN [ “cross-build-start” ],即在之前加入‘#’后保存退出。

    # Dockerfile to build docker-compose for aarch64
    FROM arm64v8/python:3.6.5-stretch
    
    # Add env
    ENV LANG C.UTF-8
    
    # Enable cross-build for aarch64
    COPY ./vendor/qemu-bin /usr/bin/
    #RUN [ "cross-build-start" ]
    
  3. 安装docker-compose。

cd /usr/local/src/docker-compose-aarch64
docker build . -t docker-compose-aarch64-builder

运行和验证

  1. 运行docker-compose容器。

    docker run docker-compose-aarch64-builder
    

    docker run docker-compose-aarch64-builder

  2. 找到生成的“docker-compose”可执行程序。

    find / -name "docker-compose-Linux-aarch64"
    
     [root@ecs-teukh-1 docker-compose-aarch64]# find / -name "docker-compose-Linux-aarch64"
    /var/lib/docker/overlay2/1d8081e2d4b5958a1eccbaf76e949219c260d89236315b48cf0bfa95e076c1da/diff/build/dockercompose/docker-compose-Linux-aarch64
    /var/lib/docker/overlay2/1d8081e2d4b5958a1eccbaf76e949219c260d89236315b48cf0bfa95e076c1da/diff/build/docker-compose-Linux-aarch64  /var/lib/docker/volumes/9d6624e6fc53d37221774fed9c64cf1a4ce64319a221e1069c70b4c88df7be40/_data/docker-compose-Linux-aarch64
    

    可以看到有三个目录存放了生成的“docker-compose-Linux-aarch64”可执行程序。

  3. 进入任意一个目录。

    cd /var/lib/docker/overlay2/1d8081e2d4b5958a1eccbaf76e949219c260d89236315b48cf0bfa95e076c1da/diff/build/dockercompose/
    ./docker-compose-Linux-aarch64 --version
    
    [root@ecs-teukh-1 build]# ./docker-compose-Linux-aarch64 --version
    docker-compose version 1.22.0, build e20d808e
    

    4、任意一个目录做一个软链接

    ln -s /var/lib/docker/volumes/81fc208240d41b4b5fee44713d9328246bf46d9d6dd1cf689eda1704fac43ee3/_data/docker-compose-Linux-aarch64  /usr/local/bin/docker-compose 
    

    显示类似上述,表明docker-compose安装成功。

安装Rancher

华为安装rancher流程 https://bbs.huaweicloud.com/forum/thread-44773-1-1.html

安装步骤

运行下面的docker-compose.yml

version: '2'
services:
magic-rancher:
 image: rancher/rancher:v2.3.3-linux-arm64
 container_name: magic-rancher
 hostname: magic-rancher
 restart: unless-stopped
 ports:
   - "8080:80"
   - "8443:443"
 volumes:
   - /home/rancher/data:/var/lib/rancher/ 
   - /home/rancher/auditlog:/var/log/auditlog
 environment:
     CATTLE_SYSTEM_CATALOG: bundled
     AUDIT_LEVEL: 3

docker-compose up -d

NFS安装

安装

yum install -y nfs-common nfs-utils rpcbind

分配权限

mkdir /home/magic/nfsdata && chown -R nfsnobody:nfsnobody /home/magic/nfsdata && chmod 766 -R /home/magic/nfsdata

配置挂载

touch /etc/exports
cat > /etc/exports << EOF 
/home/magic/nfsdata *(rw,no_root_squash,no_all_squash,sync) 
EOF

启动

systemctl start rpcbind && systemctl start nfs && systemctl enable rpcbind && systemctl enable nfs

检查

showmount -e [ip] 
# 返回结果,如下 
# [root@rancher-server magic]
# showmount -e 192.168.0.92 
# Export list for 192.168.0.92: 
# /home/magic/nfsdata *

登录访问,设置密码

访问 192.168.0.92:8080

image-20201207143301643

或者

image-20201207143402203

密码设置

图一

  • 允许收集匿名统计信息

  • 设置设定的密码来使用

  • 新密码

    • hancloud@1234
  • 确认密码

    • hancloud@1234
  • 继续

图二

  • 允许收集匿名统计信息

  • 当前密码

    • admin
  • 设置设定的密码来使用

  • 新密码

    • hancloud@1234
  • 确认密码

    • hancloud@1234
  • 继续

保存URL

image-20201207143648652

点击保存URL即可,进入主页,如图:创建集群

image-20201210195614992

添加集群

  • 选择自定义

  • 添加集群

image-20201212095138624

网络选择

  • image-20201209172014422
  • Custom集群名称:magic-cube-platform
  • Kubernetes选项选择V1.14.10-rancher…
  • 网络驱动:flannel
  • 其他默认
  • 下一步

集群选项

image-20201207143807196
如果是服务器,有外网地址,需填写
在这里插入图片描述

添加主机命令

  • 主机选项
    • Etcd
    • Control
    • Worker

复制以下命令在主机的SSH终端运行(注意复制当前rancher生成的命令),

image-20201207143831192image-20201207143850649image-20201207143902512

如图:完成,等待集群安装完成(耐心等待),成功如下:

image-20201207143919807

更新coredns的版本。

如下图将鼠标移至项目名称下,选择对应项目的System:

5.2-10.png

能发现这里coredns对应的pod运行是有异常的:

image-20201212101920711

点击右方的选项按钮,并选择“升级”:

5.2-12.png

修改如下: coredns/coredns:1.6.5

5.2-13.png

说明:官方原本的rancher/coredns-coredns虽然有1.6.5版本,但是不支持Arm64,而官方的coredns是fork了coredns的仓库,该仓库的1.6.5镜像是支持Arm64的。

修改完成后点击“升级”即可。

5.2-14.png

服务部署

创建持久卷(pv)

image-20201207144001834

image-20201207144014553

  • 点击添加PV

  • 配置

    • 名称:nfsdata

    • 卷插件:NFS Share

    • 容量:60

    • 插件配置

      • 路径:/home/magic/nfsdata
      • 服务器(nfs 所在服务器ip):192.168.0.92
    • 自定义

      • 单主机读写

      • 多主机读写

保存

image-20201207144159003

成功如下图:

image-20201207144209311

创建PVC

image-20201207144228816

image-20201207144243452

  • 点击添加PVC

  • 配置

    • 名称:pvc-data
    • 持久卷:nfsdata

创建

image-20201207144323752

等待状态从pending > Bound,成功如下图:

image-20201207144348735

编排服务

如果需要外网访问,请开放其端口

手动添加

先点开到部署服务的界面

image-20201210200415865image-20201210200457821

输入名称,镜像,端口

image-20201210200607536

挂载数据卷,点击数据卷-》添加现有PVC

image-20201210200813382

显示高级选项点击命令

image-20201210200847445

image-20201210200921917

添加 redis.conf 配置文件

mv redis /home/magic/nfsdata

实际目录是

image-20201210201010471

导入yaml编排

image-20201211105553484

点击从文件读取或者手动填写

image-20201211105632609

注意

如果有程序需要访问宿主机的硬件或者其他操作 请勾选这个

–privileged 为true

image-20201211105856259

或者编排yaml的时候设置为true

image-20201211105956270

卸载

rancher卸载

rm rf /var/lib/kubelet

最后

以上就是愉快纸鹤为你收集整理的华为鲲鹏ARM架构部署 rancher及其服务华为鲲鹏ARM架构部署 rancher及其服务环境准备的全部内容,希望文章能够帮你解决华为鲲鹏ARM架构部署 rancher及其服务华为鲲鹏ARM架构部署 rancher及其服务环境准备所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部