当前位置: 首页 > news >正文

Vmware虚拟机Ubantu安装Docker、k8s、kuboard

准备工作:

  1. 切换用户:su root
  2. 关闭防火墙: sudo ufw diasble
  3. 关闭swap:
systemctl stop swap.target
systemctl status swap.target
systemctl disable swap.target   #开机禁用
systemctl stop swap.img.swap
systemctl status swap.img.swap

关闭虚拟交换分区
vim /etc/fstab  
将 包含swap 的一行注释掉
  1. 更新apt: apt-get update
  2. 时间同步
    先查看时区是否正常,不正确则替换为上海时区
date
timedatectl set-timezone Asia/Shanghai   #设置时区
apt -y install ntp	 	#安装ntp服务
systemctl start ntp
systemctl enable ntp

安装docker

安装docker:

apt install -y docker.io
systemctl status docker
systemctl enable docker:开机自启

更换docker镜像地址:

sudo vim /etc/docker/daemon.json
{
  "registry-mirrors": ["https://docker.m.daocloud.io","https://p5lmkba8.mirror.aliyuncs.com","https://registry.docker-cn.com"]
}

下面选一个: 
a. 阿里云国内源加速:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
b. "http://hub-mirror.c.163.com",
        "https://mirrors.tuna.tsinghua.edu.cn",
        "http://mirrors.sohu.com",
        "https://ustc-edu-cn.mirror.aliyuncs.com",
        "https://ccr.ccs.tencentyun.com",
        "https://docker.m.daocloud.io",
        "https://docker.awsl9527.cn"
c. "https://dockerpull.org","https://docker.unsee.tech/","https://docker.1panel.live/","https://docker.udayun.com/","https://docker.nastool.de/"
d.  "https://docker.mirrors.ustc.edu.cn"
e. "https://alzgoonw.mirror.aliyuncs.com"
f. "http://hub-mirror.c.163.com","https://registry.docker-cn.com"

若还提示Error response from daemon可试试修改以下文件:
sudo vim /etc/resolv.conf
把nameserver 127.0.0.53 改成nameserver 8.8.8.8

可查看镜像地址是否修改成功:sudo docker info

修改后必须重启:
sudo systemctl daemon-reload
sudo systemctl restart docker

可查询镜像验证地址是否可用:docker search hello-world

安装kubeamd、kubectl、kubelet安装脚本

执行(可创建sh脚本执行):
#!/bin/bash
apt update && apt install apt-transport-https
curl -fsSL https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main"
apt-get update
apt-cache madison kubelet kubectl kubeadm |grep '1.22.7-00' 
apt install -y kubelet=1.22.7-00 kubectl=1.22.7-00 kubeadm=1.22.7-00
禁用swap
vim /etc/default/kubelet

KUBELET_EXTRA_ARGS="--fail-swap-on=false"

systemctl daemon-reload && systemctl restart kubelet
修改cgroup管理器
vim /etc/docker/daemon.json

{
  "exec-opts": [
    "native.cgroupdriver=systemd"
  ], 
  "registry-mirrors": ["https"] #注意这个用自己的
}

systemctl restart docker
systemctl restart kubelet
克隆两个worker

修改hostname: hostnamectl set-hostname k8s-worker1

创建集群

查看kubectl version

初始化集群 master、两个worker同样都要执行

kubeadm init \
  --kubernetes-version=v1.22.7 \
  --image-repository registry.aliyuncs.com/google_containers \
  --pod-network-cidr=10.24.0.0/16 \
  --ignore-preflight-errors=Swap


如果失败了,基本都是所需的几个设置的问题:
swap没有关闭
ufw 没关
cgroup管理器没有修改
下载的kubeadm没有指定小于1.25.0,因为1.25.0之后k8s使用了containerd。
这个时候使用
kubeadm reset
充值kubeadm
然后检查错误,重新kubeadm init即可
记录得到的信息

Your Kubernetes control-plane has initialized successfully! …kubeadm join

执行.kube配置
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
配置calico网络
wget curl https://projectcalico.docs.tigera.io/manifests/calico.yaml
kubectl apply -f calico.yaml
master查看节点
kubectl get nodes
应该只有master

两个worker执行:

把master 记录得到的信息最后一行kubeadm join...执行
重新生成一条:kubeadm token create --print-join-command


如果出现文件已存在错误: rm -rf /etc/kubernetes/manifests /etc/kubernetes/kubelet.conf /etc/kubernetes/pki/ca.crt
如果出现端口已占用: lsof -i :11250    kill -9 pid
可尝试:kubeadm reset   
再次去master查看节点
kubectl get nodes
出现一个master两个worker就算成功

安装 Kuboard v3 - 内建用户库

官方安装: 地址

sudo docker run -d \
  --restart=unless-stopped \
  --name=kuboard \
  -p 80:80/tcp \
  -p 10081:10081/tcp \
  -e KUBOARD_ENDPOINT="http://内网IP:80" \
  -e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \
  -v /root/kuboard-data:/data \
  eipwork/kuboard:v3
  # 也可以使用镜像 swr.cn-east-2.myhuaweicloud.com/kuboard/kuboard:v3 ,可以更快地完成镜像下载。
  # 请不要使用 127.0.0.1 或者 localhost 作为内网 IP \
  # Kuboard 不需要和 K8S 在同一个网段,Kuboard Agent 甚至可以通过代理访问 Kuboard Server \
访问 Kuboard v3.x

在浏览器输入 http://your-host-ip:80 即可访问 Kuboard v3.x 的界面,登录方式:
用户名: admin
密 码: Kuboard123

添加已有 Kubernetes 集群到 Kuboard

进去后使用token方式跟着操作就行

注意api service要用https 端口一般是6443

相关文章:

  • 银行IT治理——安全架构定义
  • 企业组网IP规划与先关协议分析
  • overflow-x: auto 使用鼠标实现横向滚动,区分触摸板和鼠标滚动事件的方法
  • 【自学笔记】Spring Boot框架技术基础知识点总览-持续更新
  • STM32-温湿度上传OneNET项目
  • 机器学习 - 衡量模型的特性
  • 合合信息2025届春季校园招聘全面启动!
  • 深入浅出机器学习:概念、算法与实践
  • 一篇搞懂vue3中如何使用ref、reactive实现响应式数据
  • Vue3+element UI:使用el-dialog时,对话框不出现解决方案
  • Mysql 迁移 dm 数据库
  • ip属地是电话号码吗怎么改
  • 企业知识管理平台重构数字时代知识体系与智能服务网络
  • 利用爬虫精准获取淘宝商品描述:实战案例指南
  • 腾讯云cloudstudio使用笔记(一)
  • ros通信与回调函数多线程应用
  • 基于Python+Vue开发的反诈视频宣传管理系统源代码
  • 一文详解U盘启动Legacy/UEFI方式以及GPT/MBR关系
  • MySQL八股学习笔记
  • 回不去的乌托邦
  • 娃哈哈:调整产销布局致部分工厂停工,布局新产线可实现自主生产,不排除推新品牌
  • 今年有望投产里程已近3000公里,高铁冲刺谁在“狂飙”?
  • 视频丨中国海警成功救助8名外籍遇险渔民,韩方向中方致谢
  • 缅甸内观冥想的历史漂流:从心理治疗室到“非语言现场”
  • 哪种“网红减肥法”比较靠谱?医学专家和运动专家共同解答
  • 3年多来俄乌要首次直接对话?能谈得拢吗?