k8s学习

dandan2年前程序开发2032

k3s学习环境安装,准备3台虚拟机,centos7.6

以上操作每台机子都要执行,操作完成后,修改主机名

hostnamectl set-hostname k8s-master

hostnamectl set-hostname k8s-worker1

hostnamectl set-hostname k8s-worker2


关闭防火墙

systemctl disable firewalld --now
systemctl disable nm-cloud-setup.service nm-cloud-setup.timer   #实际执行报错,待验证


下载策略

yum install -y container-selinux
yum install -y https://rpm.rancher.io/k3s/stable/common/centos/7/noarch/k3s-selinux-1.2-2.el7.noarch.rpm



下载3个文件

(1)https://github.com/k3s-io/k3s 地址中,下载install.sh

(2)该页面右边releases版本进去,下载k3s 和  k3s-airgap-images-amd64.tar.gz


进入/home目录,将文件3个文件拷贝进去


将k3二进制文件放到/usr/local/bin目录中,并添加权限

mv k3s /usr/local/bin/
chmod +x /usr/local/bin/k3s

将镜像移到/var/lib/rancher/k3s/agent/images 目录中,无需解压

mkdir -p /var/lib/rancher/k3s/agent/images/
cp ./k3s-airgap-images-amd64.tar.gz /var/lib/rancher/k3s/agent/images/

给安装脚本添加执行权限,并执行

chmod +x install.sh


安装master节点,ip:192.168.75.140

INSTALL_K3S_SKIP_DOWNLOAD=true ./install.sh

#安装完毕查看节点状态
kubectl get node
#查看token
cat /var/lib/rancher/k3s/server/node-token
#比如得到:K103c29bbea4b64481244f99e89d93909123346969e2d3d01dcf7e4be51fa38948d::server:fa4c24deaaf1f668b57052004b663c49


安装两个worker节点

INSTALL_K3S_SKIP_DOWNLOAD=true K3S_URL= K3S_TOKEN=K103c29bbea4b64481244f99e89d93909123346969e2d3d01dcf7e4be51fa38948d::server:fa4c24deaaf1f668b57052004b663c49 ./install.sh


安装完后,master节点再看下节点状态,加入成功即可


添加containerd镜像加速

在master节点上,创建配置文件

vim /etc/rancher/k3s/registries.yaml

复制以下内容

mirrors:
  docker.io:
    endpoint:
      - "https://fsp2sfpr.mirror.aliyuncs.com/"

保存后,重启

systemctl restart k3s


在两个worker节点同样操作,但需要先新建文件夹

mkdir -p /etc/rancher/k3s/
vim /etc/rancher/k3s/registries.yaml

同样复制内容后,重启

systemctl restart k3s-agent



pod是k8s中管理的最小单位,pod中的内容共用一个ip等,创建方式为:

kubectl run mynginx --image=nginx:1.22

可以查看pod状态

kubectl get pod
kubectl get pod -owide

可以进入pod执行:(退出用exit)

kubectl exec -it mynginx -- /bin/bash

删除

kubectl delete pod mynginx


管理集合

创建,可以保证会有3个pod运行

kubectl create deployment nginx-deploy --image=nginx:1.22 --replicas=3

查看信息

kubectl get deploy
kubectl get replicaSet

扩容到5个

kubectl scale deploy nginx-deploy --replicas=5


相关文章

git操作

将本地现有项目放到远端上:添加远程仓库: git remote add [远端名称] [远端地址], 名称一般默认都是origin,地址就是项目地址git remote add&n...

go-zero中使用jaeger链路追踪

go-zero中使用jaeger链路追踪

链路追踪分两块:(1)框架内置的,通过配置实现,一般都在api、rpc等中间件中,粗浅理解是请求级;(2)自定义的,可以定义到函数里,粗浅理解可以自己写代码级的,也就是可以跟踪每个函数方法的执行时间;...

win11 RTX4070Ti 部署langchain-chatchat

1、下载py的环境管理工具:Anaconda (等同于node环境的nvm工具)2、创建一个专属环境conda create -n langchain pyth...

mac m1 docker找不到加载卷的问题

#需求是filebeat采集其他docker容器的日志,执行下面这个后,把路径/var/lib/docker/containers 给映射上,似乎就能访问到了 docker ru...

mysql5.6导入mysql8的坑

1、虽然在mysql8里设置数据库的排序规则是utf8mb4_general_ci ,但是导入后,却都被变成了utf8mb4_0900_ai_ci解决:用navicae导出的,表语句中没有COLLAT...

MQTT协议使用

服务端因为使用的发布/订阅模式,似乎不需要自己写服务端,只要安装现成开源服务器即可,这里选了EMQX#到官网,选择服务器版本,下载安装,已centos7为例: #下载源码包 wget h...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。