前言

上期讲到要实现.net 6框架下的EF Core操作数据库基本增删改查,没有及时兑现。没有兑现的原因就是因为安装kubernetes。安装kubernetes的过程是灾难性的,也是十分顺利的。灾难性是因为在安装kubernetes过程中误操作,在/etc下执行了一个重置的命令导致我的工作站系统崩塌了。索性直接将原来的Ubuntu-Desktop22.04版的系统(对硬件有一定的要求,所以有点卡),换成了Ubuntu-server22.04系统。这个过程中用到了一个制作u启动的工具---ventoy。关于ventoy的介绍请看我的另一篇文章制作启动U盘工具---ventoy。十分顺利就是一次成功。闲言少叙,请看正文。

基础环境

系统(版本)
Ubuntu-server 22.04

安装kubectl,用来操作k8s

官网提供三种在 Linux 系统中安装 kubectl 的方法:

1、用 curl 在 Linux 系统中安装 kubectl

2、用原生包管理工具安装

3、用其他包管理工具安装

官网地址:https://kubernetes.io/zh-cn/docs/tasks/tools/install-kubectl-linux/

我们选用第一种方法:

先查看电脑系统型号是arm64还是x86的uname -m

# 下载最新发行版
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
# 验证该可执行文件(可选步骤)
curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"
echo "$(cat kubectl.sha256) kubectl" | sha256sum --check
# 验证通过时,输出为:
kubectl: OK
# 验证失败时,sha256 将以非零值退出,并打印如下输出:
kubectl: FAILED
sha256sum: WARNING: 1 computed checksum did NOT match
# 安装 kubectl
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl

安装docker,用作k8s启动驱动

# 安装docker
sudo apt-get install -y docker.io
# 启动docker(默认启动)
systemctl start docker
# 设置为开机自启动(默认)
systemctl enable docker

docker运行需要用非root用户,否则会报错。

1、添加docker用户组:sudo groupadd docker

执行以上命令会提示已存在,原因是在安装docker时已自动创建。

2、将指定用户添加到用户组(username为你的用户名):sudo gpasswd -a username docker

3、添加完成以后需要关闭当前窗口,重新启动docker

3、重启docker:sudo systemctl restart docker

5、更新用户组:newgrp docker

安装k8s,单机版的就是minikube

下载安装

官网地址:https://minikube.sigs.k8s.io/docs/start/



我的系统是Ubuntu,属于Debian系的。安装的时候根据自己的系统选择。

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_amd64.deb
sudo dpkg -i minikube_latest_amd64.deb

指定启动驱动

minikube config set driver docker

启动

minikube start



这个过程有点慢,因为需要下载东西。到图片的最后,说明启动成功,但是现在只能通过127.0.0.1在服务器的默认浏览器查看。我的是server版的,没有浏览器,需要从外网查看的。还需要再设置一步。

# 192.168.11.82 为你服务器本机地址。port根据自己的系统设置,只要不冲突就好。
kubectl proxy --port=8001 --address='192.168.11.82' --accept-hosts='^.*' &

通过 url: http://192.168.11.82:8001/api/v1/namespaces/kube-system/services/http:kubernetes-dashboard:/proxy/ 访问 dashboard。

最终效果图。

我的安装比较顺利,一次性搞定。这里不提供任何错误的参考信息,如果遇到解决不了的错误,可以发在评论区,我来帮大家解答。

Ubuntu22.04 安装单机版kubernetes的更多相关文章

  1. ubuntu22.04安装 kubernetes(docker)

    初始化检查 操作系统:ubuntu22.04 LTS docker:20.10.18 kubelet: v1.23.6 kubeadm:v1.23.6 kubectl: v1.23.6 1.校准时间: ...

  2. Ubuntu22.04 安装配置流水账

    前两天为了测一个CH340的bug, 装了三遍20.04. bug解决完, 心想反正也要重新装各种软件, 不如直接装22.04吧. 把涉及的安装记录一下方便将来参考. 制作启动U盘 在Ubuntu网站 ...

  3. Ubuntu22.04 安装配置VNC Server

    如果转载, 请注明出处 https://www.cnblogs.com/milton/p/16730512.html Ubuntu22.40下VNC和远程桌面的区别 使用远程桌面时, 用户必须在hos ...

  4. ubuntu22.04安装mysql5.7

    22版本的ubuntu默认安装mysql8.0版本,要想安装5.x的版本就得下载安装,这个比较详细的教程,可以参考: https://www.cnblogs.com/juanxincai/p/1648 ...

  5. 带有pwn环境的Ubuntu22.04快速安装

    pwn环境ubuntu22.04快速安装(有克隆vmk) ubuntu更新到了22.04版本,经过本人测试后非常的好(ma)用(fan),该版本和mac很相像,而且用起来也比较丝滑,只不过配置上稍微有 ...

  6. Ubuntu22.04 KubeSphere 安装K8S集群

    Ubuntu22.04 KubeSphere 安装K8S集群_Ri0n的博客-CSDN博客 一.系统环境系统:Ubuntu 22.04集群IP分布hostname 角色 IP地址master mast ...

  7. 单机版Kubernetes集群(一)

    环境:CentOS Linux release 7.4.1708 (Core)   单机版Kubernetes集群的效果,如图: 1)JSP页面通过JDBC直接访问Mysql数据库并展示:这里只是为了 ...

  8. 离线环境下使用二进制方式安装配置Kubernetes集群

    本文环境 Redhat Linux 7.3,操作系统采用的最小安装方式. Kubernetes的版本为 V1.10. Docker版本为18.03.1-ce. etcd 版本为 V3.3.8. 1. ...

  9. Ubuntu 16.04下搭建kubernetes集群环境

    简介 目前Kubernetes为Ubuntu提供的kube-up脚本,不支持15.10以及16.04这两个使用systemd作为init系统的版本. 这里详细介绍一下如何以非Docker方式在Ubun ...

  10. Ubuntu16.04安装kubernetes1.13集群

    Ubuntu16.04安装kubernetes1.13集群 最新的安装可以使用以下方式:https://www.cnrancher.com/docs/rancher/v2.x/cn/overview/ ...

随机推荐

  1. 63.C++类型转换

      类型转换(cast)是将一种数据类型转换成另一种数据类型.例如,如果将一个整型值赋给一个浮点类型的变量,编译器会暗地里将其转换成浮点类型.   转换是非常有用的,但是它也会带来一些问题,比如在转换 ...

  2. 大数据面试——Flink

    一.公司怎么提交的实时任务,有多少 Job Manager.TaskManager 是多少 我们使用 yarn session 模式提交任务:另一种方式是每次提交都会创建一个新的 Flink集群,为每 ...

  3. VUE中的$set与$delete的原理

    我们上文说了,Vue 是通过 Object.defineProperty 和重写数组的原型方法来达到监控数据的目的.但是,在某些情况下,上面两种方案无法做到监控数据的变化,例如: (1):当我们给对象 ...

  4. do { } while(){ }

    1 var j=10; 2 do{ 3 console.log("十八岁以下禁止观看") 4 console.log(j); 5 j++; //j为18之前都不执行while 6 ...

  5. 白嫖一个月的ES,完成了与MySQL的联动

    前言 <腾讯云 x Elasticsearch三周年>活动来了.文章写之前的思路是:在腾讯云服务器使用docker搭建ES.但是理想很丰满,显示很骨感,在操作过程中一波三折,最后还是含着泪 ...

  6. [Linux]Linux执行sh脚本时,出现$‘\r‘: command not found(未找到命令)"错误的解决方案[转载]

    1 文由 为什么要把这么一个看似很简单的问题,还要以[转载]的方式专门用博客写出来? 主要是在编写crontab的自动化定时脚本的过程中,发现是这个错导致的自动化脚本频繁执行异常时,已经花了好几个小时 ...

  7. Gartner最新报告,分析超大规模边缘解决方案

    当下,酝酿能量的超级边缘. 最近,我们在谈视频化狂飙.谈AIGC颠覆.谈算力动能不足,很少谈及边缘.但"边缘"恰恰与这一切相关,且越发密不可分,它是未来技术发展的极大影响因子. & ...

  8. day08 元组字典集合

    day08 元组 集合 字典 元组 """ 小括号括起来,内部存放多个元素,元组之间逗号隔开,元素不可改变,元素类型不能是任意的, """ ...

  9. Java设计模式 —— 观察者模式

    16 观察者模式 16.1 观察者模式概述 Observer Pattern: 定义对象之间的依赖关系(一对多),当一个对象的状态发生改变时,其关联的依赖对象均收到通知并自动更新. 观察者模式又称:发 ...

  10. 定时器中断_PWM输出_STM32第三课

    1.TIM2中断,需求:实现LED间隔0.5秒闪烁 1.使用CubeMX设置系统时钟.RCC.LED灯.时钟树等基础操作. 2.配置TIMER2,使能为全局变量,设置优先级.并生成代码. 3.代码编写 ...