k8s
文章平均质量分 67
我是一只代码狗
学习it我总结了五个字,听,问,看,想,敲
展开
-
k8s的三种service
clusterIp 集群ip 不能在浏览器访问service,只能在集群内部访问。NodePort 节点端口,可以在浏览器访问到service。loadbalancer 负载均衡 需要云厂商提供。原创 2024-01-31 19:01:49 · 544 阅读 · 0 评论 -
k8s常用操作命令
kubectl get nodeskubectl get podskubectl get nskubectl get svckubectl delete -fkubectl apply -fkubectl editkubectl logs -f原创 2024-01-31 18:52:23 · 448 阅读 · 0 评论 -
k8s 1.26版本 部署springcloud alibaba+vue3
k8s 1.26版本 部署springcloud+vue转载 2023-12-11 22:41:49 · 161 阅读 · 0 评论 -
k8s 1.26集群安装
k8s 1.26集群安装转载 2023-12-11 21:20:21 · 100 阅读 · 0 评论 -
centos7升级内核
2. 安装 kernel-ml 包。1. 添加 elrepo 源。3. 更新 grub 配置。5. 重启系统以完成升级。4. 设置默认内核。6. 验证内核版本。在系统重启后,使用以下命令验证内核版本。转载 2023-12-11 20:56:59 · 44 阅读 · 0 评论 -
k8s 1.26卸载
k8s 1.26卸载转载 2023-12-11 20:36:16 · 25 阅读 · 0 评论 -
k8s部署sentinel
VOLUME 指定临时文件目录为/tmp,在主机/var/lib/docker目录下创建了一个临时文件并链接到容器的/tmp。# 将jar包添加到容器中并更名为app.jar。把jar包上传到下面的目录。# 基础镜像使用java。转载 2023-12-11 16:34:33 · 181 阅读 · 0 评论 -
k8s部署vue项目
代理地址为网关的service名称.命名空间.svc.cluster.local。提前安装好harbor,我们的java项目的镜像都是放在harbor里面的。# 复制html文件到路径。9000是网关的端口号。转载 2023-12-10 22:23:58 · 114 阅读 · 0 评论 -
k8s部署springcloud之gateway项目
VOLUME 指定临时文件目录为/tmp,在主机/var/lib/docker目录下创建了一个临时文件并链接到容器的/tmp。提前安装好harbor,我们的java项目的镜像都是放在harbor里面的。我们所有的pod secret service都是放在dev的命名空间下的。直接通过服务的名称.命名空间.svc.cluster.local 去访问。service的名称.命名空间.svc.cluster.local。注册中心这里我配置的是k8s中的nacos的地址。port 是service的端口。转载 2023-12-10 19:22:43 · 215 阅读 · 0 评论 -
k8s部署springcloud之order项目
k8s部署springcloud之order项目转载 2023-12-10 18:09:39 · 47 阅读 · 0 评论 -
解决k8s 1.26版本拉取harbor失败
plugins."io.containerd.grpc.v1.cri".registry.configs."192.168.10.108:80".auth] #新增加的。[plugins."io.containerd.grpc.v1.cri".registry.configs."192.168.10.108:80".tls] #新增加的。在次使用crictl pull拉取,如果成功,那么我们的pod 就可以重新拉取到harbor的仓库的内容了。修改下面的 新增加的内容。转载 2023-12-09 23:14:12 · 301 阅读 · 1 评论 -
k8s部署springcloud之kuncun项目
提前安装好harbor,我们的java项目的镜像都是放在harbor里面的。转载 2023-12-09 20:33:07 · 93 阅读 · 0 评论 -
k8s部署redis
1主2从,提前安装好集群systemctlrpcbind。转载 2023-12-08 22:35:16 · 57 阅读 · 0 评论 -
k8s部署mysql
1主2从,提前安装好集群systemctlrpcbind。转载 2023-12-08 20:35:14 · 143 阅读 · 0 评论 -
解决k8s部署nacos 在idea启动报错的问题
在idea是连不上k8s的nacos地址的,要把地址改成集群内的虚拟ip。重新打包上传到服务器 在启动 就好了,千万不要在idea启动。如果你在idea配置的ingress端口 那么启动会报错。并且端口号是8848,然后把项目打包上传到服务器。然后把虚拟ip 放入 下面的配置。先查看service的虚拟ip。转载 2023-12-07 23:38:08 · 146 阅读 · 0 评论 -
解决k8s部署nacos出现no DataSource set
max_aggr_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值',`max_aggr_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值',转载 2023-12-07 21:08:32 · 188 阅读 · 0 评论 -
k8s 金丝雀发布
金丝雀就是灰度发布,一边发布新的版本,一边删除旧的版本,不会全部删除旧的版本当所有新的版本没有问题,所有旧的版本全部下线我们以普罗米修斯为例。转载 2023-12-07 00:54:01 · 35 阅读 · 0 评论 -
configmap多环境配置
多环境配置就是多个命名空间下相同的文件,里面的内容不一样。转载 2023-12-06 23:25:50 · 52 阅读 · 0 评论 -
k8s创建configmap
configmap就是配置文件的形式存储,最多不超过1mb我们以普罗米修斯为例子。转载 2023-12-05 23:00:14 · 43 阅读 · 0 评论 -
k8s通过制备器自动创建pv
# 必须匹配deployment中环境变量PROVISIONER_NAME的值。可以看到自动帮我们创建了pv,并且这个pv是动态的。192.168.10.108 是主节点。## 是否设置为默认的存储类。我们以普罗米修斯为例子。path的存储的位置。转载 2023-12-05 21:33:02 · 50 阅读 · 0 评论 -
解决k8s pv删除阻塞
不能一开始就删除pv,否则造成阻塞。如果有pod 先删除pod。转载 2023-12-05 20:42:40 · 30 阅读 · 0 评论 -
解决k8s pvc 显示Pending
当pvc显示Pending(待定)的时候,检查pv和pvc的访问模式 是否一致。把pv和pvc的访问模式都改成一样,在重新部署。转载 2023-12-05 20:31:43 · 273 阅读 · 0 评论 -
k8s使用volume卷实现pod数据持久化和资源共享
可以看到n1节点的文件 已经挂载到了容器里面,这样数据就不会丢失了。容器中的文件在磁盘上是临时存放的,当容器崩溃的时候,文件会丢失。kubelet会重新启动容器,容器会以干净的状态重启。和docker中的挂载到本地磁盘的目录类似。可以看到节点已经部署在了n1的节点。我们把存储的地方放到n1的节点。转载 2023-12-05 17:45:28 · 90 阅读 · 0 评论 -
解决Error loading config (--config.file=/etc/prometheus/prometheus.yml
当出现下面的错误,就是本地节点缺少这个yml文件,在对应的目录上面创建下文件就行了ts=2023-12-05T08:46:33.616Z caller=main.go:487 level=error msg="Error loading config (--config.file=/etc/prometheus/prometheus.yml)" file=/etc/prometheus/prometheus.yml err="open /etc/prometheus/prometheus.yml: no s转载 2023-12-05 16:55:28 · 733 阅读 · 0 评论 -
解决Mounting arguments: -t nfs
解决k8s部署pod 访问nfs失败的问题转载 2023-12-05 00:10:37 · 257 阅读 · 0 评论 -
k8s的pv和pvc
1主2从,提前安装好k8s集群。转载 2023-12-04 22:38:23 · 50 阅读 · 0 评论 -
k8s部署nacos
k8s部署nacos转载 2023-12-04 22:24:52 · 127 阅读 · 0 评论 -
k8s pod强制删除
kubectl delete pod pod的名字 --force --grace-period=0转载 2023-12-02 17:39:40 · 26 阅读 · 0 评论 -
k8s创建ingress
ingress要提前安装好ingress就相当于nginx,通过ingress-controller的端口号访问serviceingess在浏览器可以访问我们以普罗米修斯为例子创建aa的pod和service执行 创建bb的pod和servicetargetPort对应 pod的端口号port是服务的端口号containerPort是docker容器的端口号执行创建ingress文件ingress.kubernetes.io/rewrite-target 这里找的是/那么在path的时候也要设置/ serv转载 2023-12-01 21:52:09 · 67 阅读 · 0 评论 -
k8s部署外部mysql
kubernetes.io/service-name 一定要和service的metadata.name的值一样,因为就是通过名字去进行绑定的。我的mysql端口是13306你的可能是3306,要根据你的去改。#这里的名字要和service的元数据下的名字一致。#Service在集群内部对外暴露的端口。我这边是通过108节点 访问104机器的mysql。#容器内对外暴露的端口。#节点对外暴露的端口。#通过节点端口对外暴露。104是mysql安装的机器。#定义Service的名称。转载 2023-12-01 15:31:16 · 63 阅读 · 0 评论 -
k8s创建service
spec.selector表明Deployment要管理的Pod所必须具备的标签。#spec.template下的内容定义了Deployment管理的Pod模板。在k8s中pod的ip是虚拟ip,无法在浏览器访问,那么这个时候要想在浏览器访问。就需要创建service,通过标签绑定和绑定pod的端口,进行映射。浏览器访问service的端口,service访问pod的端口。#选择器,选中所有app=prometheus的pod。#pod容器内对外暴露的端口。因为172的都是虚拟ip,不是我们节点的ip。转载 2023-11-30 21:03:28 · 98 阅读 · 0 评论 -
k8s创建DaemonSet为新节点自动部署pod
DaemonSet就是当有新的节点加入进来,自动创建新的节点的pod,当节点从集群中移除,那么DaemonSet也会把这个节点的pod移除掉。#标签 和上面的app一致。#标签 和下面的app一致。#docker镜像的名称。可以看到他自动分配了2个节点,n1和n2。#固定写死DaemonSet。#固定写死apps/v1。转载 2023-11-30 17:16:57 · 62 阅读 · 0 评论 -
解决plugin type=“calico“ failed (add): error getting ClusterInformation: connection is unauthorized: U
当k8s 删除pod ,创建pod 查看详细信息的时候,发现网络错误。转载 2023-11-30 17:00:08 · 1379 阅读 · 0 评论 -
k8s创建deploy部署pod
匹配所有标签app且值为prometheus ,和下面的template.metadata.labels.app的值一样。#spec.selector表明Deployment要管理的Pod所必须具备的标签。#和上面的selector.matchLabels.app的值一样。#spec.template下的内容定义了Deployment管理的Pod模板。#template.spec说明具体部署的容器与镜像信息。#metadata部分定义Deployment的名字和标签。#spec下的内容都与Pod有关。转载 2023-11-29 21:59:13 · 54 阅读 · 0 评论 -
k8s创建pod
metadata下面的name就对应pod这里的name 显示的名称 可以随便命名。pod可以理解成docker中的容器,但是不会在docker中显示。#必须是docker里面的镜像名称,不能随意命名。#创建对象类型,Pod代表该YAML要创建一个pod。#容器内部暴露的端口号,即expose。#Spec用于设置容器、镜像等关键选项。#k8s显示的pod的名称。#普罗米修斯对外暴露的端口。#API版本号,固定写v1即可。#元数据,描述pod的辅助信息。转载 2023-11-29 17:39:01 · 28 阅读 · 0 评论 -
解决kubelet启动失败
永久关闭 修改/etc/sysconfig/selinux文件设置。# 永久禁用,打开/etc/fstab注释掉swap那一行。并且也做了ssh认证,不需要输入密码就能登录其他机器。保证主机和从机都配置了/etc/hosts。# 临时禁用selinux。# 关闭selinux。#重启kubelet。转载 2023-11-29 01:25:00 · 312 阅读 · 0 评论 -
解决 yum install kubeadm-1.26* kubelet-1.26* kubectl-1.26* -y 安装失败的问题
执行下面的命令 然后在重新yum。转载 2023-11-29 01:18:00 · 140 阅读 · 0 评论 -
k8s集群安装
先不要登录,我们在master虚拟机,创建一个dash.yaml文件,创建访问账号。然后还发现报CrashLoopBackOff,不要着急,请等待10分钟,就发现好了。接下来我们吧slave节点都加入集群,在另外2台机器执行,之前我们保存的命令。把令牌拿过来,放入界面上,输入token的地方,然后点击登录。只需要在master节点执行下面的命令,然后等待1分钟就好了。最下面的2个红框的命令,要保存到一个记事本中,后面会使用到。然后我们在等待初始化完成之后,在看下节点的信息。在3台机器上分别执行下面的命令。转载 2022-12-09 15:57:22 · 674 阅读 · 0 评论 -
docker安装jenkins
jenkins的前提是要有10个G的内存,否则会报错安装maven配置阿里云安装jdk删除之前的jenkins,并且创建新的jenkins授权挂载jdk,和maven,jenkins的目录,并且启动jenkins浏览器输入192.168.184.136:8080查看密码 拿到这个密码放入这里 然后选择安装推荐的插件下一步 用户名密码都是root 安装插件 安装这2个插件选中,重启jenkins 配置挂载的jdk和maven目录 保存,应用转载 2022-12-04 17:01:11 · 2248 阅读 · 6 评论 -
helm安装
helm就是k8s的包管理工具 ,前提是先安装好k8s使用kubeode快速部署k8s_我是一只代码狗的博客-CSDN博客然后我们安装helm 然后我们访问 他是helm的镜像仓库站,比如说我们要部署nginx我们输入nginx,然后点击进去详情 点击install 可以看到具体的命令 添加仓库 nginx-test 自己定义安装图表 my-nginx你可以随便起名 版本号 可以选择右侧的历史版本nginx-test/nginx前面的nginx-test,要和上面仓库的nginx-tes转载 2022-12-06 20:29:46 · 5347 阅读 · 0 评论