泰山200鲲鹏920ARM架构Ubuntu +k3s+kuboard搭建
IBMC安装pve
泰山服务器只能安装proxmox-ve_7.4-1-arm.iso的镜像
PVE安装ARM Ubuntu
与普通VM安装方式的区别
- 操作系统
不要选中任何镜像,因为PVE默认创建的光驱在IDE 2的位置,ARM光驱启动需要在SCSI
-
系统
2.1 显卡选中默认,或者串口终端都可以(需要新建一个串口)
2.2 主板选中i440fx
2.3 BIOS选中OVMF (UEFI),但不要选中EFI Disk
2.4 SCSI选中Controller,VirtIO SCSI
-
硬盘
删除(如果你创建了硬盘,也需要删除,因为EFI最好还是在${storage_id}:0位置,否则可能会导致虚拟机启动时不能够直接进入,需要输入代码:fs0:\EFI\debian\grubaa64.efi
才能启动虚拟机) -
CPU
4.1 类型只能选默认
4.2 其他默认,或者打开NUMA都行
-
内存
随意
-
网络
默认的VirtIO即可
-
回到面板选中创建的虚拟机,选中硬件
7.1 删除光盘镜像
7.2 如果你创建了硬盘,也需要删除,因为EFI最好还是在${storage_id}:0位置,否则可能会导致虚拟机启动时不能够直接进入,需要输入代码:
fs0:\EFI\debian\grubaa64.efi
才能启动虚拟机 -
重新添加光盘镜像
注意,总线选择SCSI,位置2(其实其他位置也可以,不过2比较好)
-
去到Host主机的Shell页面
9.1 修改虚拟机配置
nano /etc/pve/qemu-server/100.conf
顶部加入
arch: aarch64
,并删除vmgenid9.2 创建EFI引导盘
qm set ${vmid} -efidisk0 ${storage_id}:0,format=raw # 比如 # qm set 100 -efidisk0 local-lvm:0,format=raw
9.3 最终参考如下
-
回到面板选中创建的虚拟机,选中硬件
新增硬盘,类型选择SCSI即可,位置1
-
回到面板选中创建的虚拟机,选中硬件
移动硬盘到首位,光盘第二
-
启动虚拟机,正常安装流程
PVE安装ARM Centos
前面8个步骤与Ubuntu的安装一致,centos从第9步开始
-
去到Host主机的Shell页面
9.1 修改虚拟机配置
qm set 105 -arch aarch64 nano /etc/pve/qemu-server/100.conf
修改配置文件
arch: aarch64 bios: ovmf boot: order=scsi0;net0;scsi2 cores: 8 efidisk0: local-lvm:vm-105-disk-0,size=64M memory: 8196 meta: creation-qemu=6.2.0,ctime=1664187142 name: kylin001 net0: virtio=CA:76:0E:59:4A:B9,bridge=vmbr0 numa: 0 ostype: l26 scsi0: local-lvm:vm-105-disk-1,backup=0,size=60G scsi2: bash:iso/Kylin-Server-10-SP2-Release-Build09-20210524-arm64.iso,media=cdrom,size=4100816K scsihw: virtio-scsi-pci serial0: socket ##添加 smbios1: uuid=104ec11d-7100-4feb-b953-f058f7e7f622 sockets: 1 ##添加 vga: serial0 ##添加 vmgenid: 80eb3ab7-5964-4d7a-8cd8-6cd5a8ce4363 ##删除
9.2 创建EFI引导盘
qm set ${vmid} -efidisk0 ${storage_id}:0,format=raw # 比如 # qm set 100 -efidisk0 local-lvm:0,format=raw
-
回到面板选中创建的虚拟机,选中硬件
新增硬盘,类型选择SCSI即可,位置1
-
回到面板选中创建的虚拟机,选中硬件
移动硬盘到首位,光盘第二
-
启动虚拟机,正常安装流程
- 注意需求对网络进行设置, IP设置为dhcp的时候还需要设置子网掩码和网关,安装完成后dhcp才能获取到IP
- 使用pve自带的shell面板是需要打开xtrem.js的控制台
Ubuntu安装Docker
2.更新apt
sudo apt-get update
3.安装基本软件
sudo apt-get install curl wget apt-transport-https ca-certificates software-properties-common
4.添加docker密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
对比:
sudo apt-key fingerprint 0EBFCD88
5.添加源
sudo add-apt-repository "deb [arch=arm64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
其中$(lsb_release -cs) 为系统函数,可自动获取当前ubuntu版本,arm64对应的是cpu版本。
6.更新apt,安装docker
sudo apt-get update
sudo apt-get install docker-ce
查看docker状态:
systemctl status docker
添加阿里镜像
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://bhfjayzb.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
安装K3s
更新源:
apt-get update
关闭防火墙
ufw disable
关闭selinux
# 未安装可以不管
setenforce 0
vim /etc/selinux/conifg
SELINUX=disabled
设置网络(不设置可能出现节点之间dns失效):
tee /etc/sysctl.d/k8s.conf <<-'EOF'
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF
modprobe br_netfilter
配置 iptables:
iptables -P FORWARD ACCEPT
vim /etc/rc.local
/usr/sbin/iptables -P FORWARD ACCEPT
永久关闭 swap 分区:sed -i 's/.*swap.*/#&/' /etc/fstab
官方网址: https://docs.k3s.io/zh/quick-start
安装脚本
K3s 提供了一个安装脚本,可以方便地将其作为服务安装在基于 systemd 或 openrc 的系统上。该脚本可在 https://get.k3s.io 获得。要使用这种方法安装 K3s,只需运行:
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -
- 每台主机必须具有唯一的主机名。如果你的计算机没有唯一的主机名,请传递
K3S_NODE_NAME
环境变量,并为每个节点提供一个有效且唯一的主机名。
运行此安装后:
- K3s 服务将被配置为在节点重启后或进程崩溃或被杀死时自动重启。
- 将安装其他实用程序,包括
kubectl
、crictl
、ctr
、k3s-killall.sh
和k3s-uninstall.sh
。 - kubeconfig 文件将写入到
/etc/rancher/k3s/k3s.yaml
,由 K3s 安装的 kubectl 将自动使用该文件。
单节点 Server 安装是一个功能齐全的 Kubernetes 集群,它包括了托管工作负载 pod 所需的所有数据存储、control plane、kubelet 和容器运行时组件。除非你希望向集群添加容量或冗余,否则没有必要添加额外的 Server 或 Agent 节点。
要安装其他 Agent 节点并将它们添加到集群,请使用 K3S_URL
和 K3S_TOKEN
环境变量运行安装脚本。以下示例演示了如何添加 Agent 节点:
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn K3S_URL=https://myserver:6443 K3S_TOKEN=mynodetoken sh -
K3S_URL
参数会导致安装程序将 K3s 配置为 Agent 而不是 Server。K3s Agent 将注册到在 URL 上监听的 K3s Server。K3S_TOKEN
使用的值存储在 Server 节点上的 /var/lib/rancher/k3s/server/node-token
中。
- 每台主机必须具有唯一的主机名。如果你的计算机没有唯一的主机名,请传递
K3S_NODE_NAME
环境变量,并为每个节点提供一个有效且唯一的主机名。
kuboard 安装(只能在amd64的服务器安装)
注意版本问题,直接使用eipwork/kuboard:v3镜像的默认版本是3.3.20,但是3.5.20才对arm进行了适配,所以需要单独指定版本
sudo docker run -d \
-p 80:80 \
--restart=unless-stopped \
--name=kuboard \
-e KUBOARD_ENDPOINT="http://10.7.89.101:80" \
-e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \
-v /root/kuboard-data:/data \
eipwork/kuboard:v3.5.2.0
共有 0 条评论