ubuntu单服务器部署k8s

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

初学k8s,看到网上的教程非常杂乱,并且环境什么的都没说清楚,对于初学者很不友好,导致安装的过程总是出错,并且不能安装到符合自己要求的版本或者相应的环境,所以此文对环境做了详细的说明,前前后后安装了两三天几十遍,把所有的问题都解决了,本人亲测安装成功

环境配置:ubuntu20.04+docker,k8s版本v1.23.8,由于资源有限,只用了一台云服务器2核2g

使用kubeadm引导集群的方式安装k8s,root下进行

!!!血泪教训,首先必须保证服务器/虚拟机的配置够,最低配置:2核2g

查看可用RAM

free -m

ubuntu单服务器部署k8s,linux,kubernetes,运维,k8s

必须要保证total>1700才可以!!!

基础环境配置

1.设置主机名字,具有明显的标识性

hostnamectl set-hostname xxxx

2.禁用SELinux

sudo setenforce 0
sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

3.关闭swap分区

swapoff -a  #临时关闭
sed -ri 's/.*swap.*/#&/' /etc/fstab    #永久关闭

sed -ri 's/#(.*swap.*)/\1/' /etc/fstab #开启swap分区

4.把IPv6的流量桥接到IPv4网卡上,通信更方便,统计更准确

cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF

cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

5.应用配置

sysctl --system

安装Kubernetes组件

1.Kubernetes 添加 apt 存储库

curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
sudo apt-add-repository "deb https://mirrors.aliyun.com/kubernetes/apt kubernetes-xenial main"

2.安装kubelet,kubectl,kubeadm

apt update
apt install -y kubelet=1.23.8-00 kubeadm=1.23.8-00 kubectl=1.23.8-00
apt-mark hold kubelet kubeadm kubectl

这里指定了版本是为了将其版本保持一致,以便于后面安装dashboard,由于是用docker安装k8s,而在k8sv1.24之后的版本不再支持docker,所以安装v1.23.8,如果想安装最新版本或者指定版本,把后面的版本号去掉或者修改即可

最后一行命令是为了防止其自动更新导致版本不匹配

#解除锁定

apt-mark unhold package_name

 3.设置kubelet开机自启

systemctl enable --now kubelet

4.master域名映射

echo "x  cluster-endpoint" >> /etc/hosts # 把x替换成你的服务器/虚拟机的内网ip

5.kubeadm init初始化

kubeadm init \
--apiserver-advertise-address=xxxx \  # 把xxxx替换为你的服务器/虚拟机的内网ip
--control-plane-endpoint=cluster-endpoint \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.23.8 \
--service-cidr=10.96.0.0/16 \
--pod-network-cidr=10.244.0.0/16

--apiserver-advertise-address=xxxx \  # master节点的IP
--control-plane-endpoint=cluster-endpoint \  #填写域名映射的域名,跟上面的域名保持一致
--image-repository registry.aliyuncs.com/google_containers\   #设置镜像仓库为国内的阿里云镜像仓库
--kubernetes-version v1.23.8 \            #设置k8s的版本
--service-cidr=10.96.0.0/16 \               #设置node节点的网络,暂时这样设置
--pod-network-cidr=10.244.0.0/16       #设置node节点的网络,暂时这样设置

 如果初始化过程报错,详见另一篇博客k8s安装报错error execution phase wait-control-plane: couldn‘t initialize a Kubernetes cluster-CSDN博客

 初始化成功之后的页面:

ubuntu单服务器部署k8s,linux,kubernetes,运维,k8s

ubuntu单服务器部署k8s,linux,kubernetes,运维,k8s

 令牌是节点加入的指令,24h有效,可以用以下指令生成

kubeadm token create --print-join-command

 6.根据提示继续

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

7.安装网络组件

curl https://docs.projectcalico.org/v3.20/manifests/calico.yaml -O

接着将calico.yaml中的3888和3889行修改为如图所示的样子,因为前面node节点的ip配置是这样的

ubuntu单服务器部署k8s,linux,kubernetes,运维,k8s

应用yaml文件

kubectl apply -f calico.yaml

 8.查看master节点状态

kubectl get nodes

网络配置完成过一会即可看到Ready状态

ubuntu单服务器部署k8s,linux,kubernetes,运维,k8s

至此,k8s集群搭建完毕,如有多个node节点可以使用令牌加入master节点中

dashboard的搭建教程见k8s部署dashboard-CSDN博客

后续k8s搭建微服务的教程将在之后给出 文章来源地址https://www.toymoban.com/news/detail-852246.html

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

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

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

相关文章

  • (十)服务器K8S集群部署SpringBoot项目实战

    可以在 https://start.spring.io/网站准备一个项目,这里作为k8s的学习所以springboot项目中准备一个简单的访问接口即可。 1.更新系统软件包: 2.安装 OpenJDK 11: 3.验证 Java 安装: 4.配置环境变量 5.使环境变量生效 1.可以在 https://dlcdn.apache.org/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin

    2024年02月12日
    浏览(46)
  • 在Ubuntu上通过Docker部署OpenVPN服务器

    在这篇博客中,我们将探讨如何在Ubuntu服务器上通过Docker容器化技术来部署OpenVPN服务器。下面是逐步进行的指南,适用于初学者和中级用户。 前提条件 : 一个运行Ubuntu的服务器 Docker已安装在服务器上 步骤1: 安装Docker 首先,确保你的Ubuntu服务器上已经安装了Docker。 步骤2: 创

    2024年02月05日
    浏览(62)
  • 服务器Ubuntu 系统上部署安装ensp pro 过程

    新手没啥部署经验,过程曲折,终于部署完成,记录一下过程! 步骤:         一、安装操作系统         二、安装虚拟软件         三、导入虚拟机         四、登录eNSP Pro界面 下载地址: Download Ubuntu Desktop | Download | Ubuntu https://ubuntu.com/download/desktop         服务器无

    2024年02月07日
    浏览(56)
  • Vue+ElementUI项目打包部署到Ubuntu服务器中

    1、修改config/index.js中的assetsPublicPath: \\\'/\\\',修改为assetsPublicPath: \\\'./\\\' 2、在build/utils.js中增加publicPath: \\\'../../\\\' 3、打开终端,在根目录下执行npm run build进行打包,打包成功后会生成dist 4、将dist传输到服务器上(我已经把dist重命名为html) 5、服务器中如果没有nginx则安装nginx 6、配置

    2024年02月07日
    浏览(62)
  • ubuntu20.04部署ntp服务器ntpd(ntpdate )

    首先,在终端中更新你的包列表,然后安装NTP。输入下面的命令: 编辑NTP的配置文件,这里我们使用nano文本编辑器,但你也可以使用你喜欢的其他编辑器。 在此文件中,找到以\\\"pool\\\"开头的行,它们定义了NTP将与之同步的服务器。你可以保留默认值,或者根据需要添加/更改。

    2024年02月02日
    浏览(47)
  • 阿里云Ubuntu安装部署EMQX物联网MQTT服务器

    阿里云服务器免费领取https://developer.aliyun.com/adc/student/ Xshell 云服务器可以通过远程连接的方式进行控制 1.下载安装包 XShell官网  2.简单配置 名称:随便即可 主机:服务器IP地址 端口号:默认22端口 连接后输入用户名(通常为root),密码后成功进入服务器终端    此外,还有

    2023年04月13日
    浏览(41)
  • Langchain-Chatchat-Ubuntu服务器本地安装部署笔记

     Langchain-Chatchat(原Langchain-ChatGLM)基于 Langchain 与 ChatGLM 等语言模型的本地知识库问答 | Langchain-Chatchat (formerly langchain-ChatGLM), local knowledge based LLM (like ChatGLM) QA app with langchain。         开源网址:https://github.com/chatchat-space/Langchain-Chatchat ​        因为这是自己毕设项目所需

    2024年04月08日
    浏览(55)
  • docker+django+ubuntu服务器 测试质量管理平台部署

      然后setting.py中增加服务器ip地址 0.0.0.0开放所有 其中setting.py注意 DEBUG = False 是False的话js和css的静态文件不会生效 在此注意一下!!!!!!! 2.拉取git的项目代码 构建成镜像 镜像run成容器 其中8888是容器内部的端口号,8886是对外开放的端口号  没有报错说明就是成功了 最后直接访

    2024年02月01日
    浏览(49)
  • 如何才能在Ubuntu系统部署RabbitMQ服务器并公网访问

    在Ubuntu系统上部署RabbitMQ服务器并公网访问,可以按照以下步骤进行: 安装RabbitMQ服务器: 在终端中输入以下命令安装RabbitMQ服务器: 启动RabbitMQ服务器: 在终端中输入以下命令启动RabbitMQ服务器: 设置RabbitMQ服务器开机启动: 在终端中输入以下命令设置RabbitMQ服务器开机启

    2024年02月07日
    浏览(49)
  • 将本地Django项目部署到服务器上(Ubuntu20.04)

    最近因为项目的需求开始正在搭建一个个人网站。在本地完成了项目后端的内容后需要部署到服务器上以供用户访问。因为后端使用的是Django框架,就在网上找了很多有关将Django项目部署到网站上的教程。由于本人在网络这块属于小白,原理了解甚少,在一边参照各种教程一

    2024年02月03日
    浏览(49)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包