背景说明 二进制方式安装的k8s集群,etcd集群有3个节点,某天有一台机器hang住了,无法远程ssh登陆,于是被管理员直接重启了,重启后发现k8s集群删除一个deployment应用,多次刷新一会有,一会没有,于是在3个节点上执行etcd命令去查询该数据,发现被重启的节点上仍存在删除的该应用的数据,于是判断etcd集群的该节点存在脏数据,和其他节点数据不同步。排障过程发现问题#删除应用kubectl-nkube-systemdeletedeploymetrics-server#检查应用状态kubectl-nkube-systemgetpod|grepmetrics-server此处多次查询
k8s入门学习环境搭建学习于许大仙:https://www.yuque.com/fairy-erak8s官网https://kubernetes.io/kuboard官网https://kuboard.cn/基于k8s1.21.10版本前置环境准备一主两从,三台虚拟机CPU内存硬盘角色主机名IPhostname操作系统4C16G50Gmasterk8s-master192.168.8.11k8s-mastercentos7.94C16G50Gworker(node)k8s-node1192.168.8.22k8s-node1centos7.94C16G50Gworker(node)k8s-no
一:增(创建)。直接进行创建。kubectlrunnginx--image=nginx使用yaml清单方式进行创建。直接创建方式,并建立pod。kubectlcreatedeploymentmy-nginx-deployment--image=nginx:latest先创建employment,不会自动建立pod。第一步:创建文件kubectlcreatedeploymentmy-nginx-deployment--image=nginx:latest--dry-run=client-oyaml>02_deploment.yaml第二步:运行kubectlapply-f02_deploment
文章目录前言1、开发者将代码PUSH到Git2、通过Jenkins部署,自动到Git上PULL代码2.1、配置SSH-KEY2.1.1、生成/添加SSH公钥2.1.2、将公钥配置到git平台2.1.3、测试2.2、配置Jenkins的pipeline自动clone代码2.2.1、Jenkins创建任务2.2.2、测试拉代码流程3、通过maven构建代码3.1、maven插件安装3.2、maven构建项目3.3、测试拉代码流程+构建项目过程4、将maven构建后的jar打包成docker镜像并pushdocker镜像到dockerregistry5、通过k8s发起**发布/更新服务**操作5.1
k8s中提供了一套自动创建PV的机制,就是基于StorageClass进行的,通过StorageClass可以实现仅仅配置PVC,然后交由StorageClass根据PVC的需求动态创建PV。问题: 使用k8s1.28版本,通过kubectlgetpvc,发现PVC一直处于Pending状态。通过kubectldescribepvc[pvc名称]描述,发现如下错误:Waitingforavolumetobecreatedeitherbytheexternalprovisioner'fuseim.pri/ifs'ormanuallybythesystemadministrator.Ifvo
K8s 集群内有一个已经不再使用的 PV,虽然已经删除了与其关联的 Pod及 PVC,并对其执行了删除命令,但仍无法正常删除,一直处于 Terminating状态: 解决办法:1.获取pv信息kubectlgetpv 2.解除pv锁定kubectlpatchpv[PV_NAME]-p'{"metadata":{"finalizers":null}}'kubectlpatchpvprometheus-data-pv-p'{"metadata":{"finalizers":null}}' 3.解除pvc锁定kubectlpatchpvc【PV_NAME】-p'{"metadata":{"final
Kubernetes(K8S)快速搭建typecho个人博客1、准备工作K8S集群环境,搭建教程参考腾讯云Lighthouse组建跨地域Kubernetes集群K8S集群面板,搭建教程参考Kubernetes集群管理面板的安装及使用-青阳のblog-一个计算机爱好者的个人博客(hipyt.cn)注意如果没有集群或者服务器不够可以通过传送门新购。腾讯云轻量应用服务器购买地址:传送门2、部署说明说明:本文的教程是基于Kubernetes集群的,搭建了kuboard管理面板,之后在进行搭建typecho博客的教程。本文使用的对应docker镜像的地址如下:MySQL:mysql-OfficialIm
Ingress是对集群中服务的外部访问进行管理的API对象,典型的访问方式是HTTP。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟托管官方说明如下:你必须拥有一个Ingress控制器才能满足Ingress的要求。仅创建Ingress资源本身没有任何效果你可能需要部署Ingress控制器,例如ingress-nginx。你可以从许多Ingress控制器中进行选择。通过以下的链接我们找到了官方安装网址InstallationGuide-Ingress-NginxController这里介绍了三种方法withHelm,usingtheprojectrepositorychart;wit
k8s之认证文件丢失首先集群状态无法查看,检查了防火墙,selinux是否关闭。随后检查sawp是否禁用。关闭swapswapoff-a都不是以上问题。查看kubulet进程,发现kubelet有报错。报错信息systemctlstatuskubeletfailedtorunKubelet:unabletoloadbootstrapkubeconfig:stat/etc/kubernetes/bootstrap-kubelet.conf:nosuchfileordirectory显示目前无法启动kubelet进程。解决方法:重新生成证书备份并重新生成证书cd/etc/kubernetes/pk
题目k8s集群Container安全Context:ContainerSecurityContext应在特定namespace中修改Deployment。Task:按照如下要求修改 sec-ns 命名空间里的Deployment secdep用ID为 30000 的用户启动容器(设置用户ID为:30000)不允许进程获得超出其父进程的特权(禁止allowPrivilegeEscalation)以只读方式加载容器的根文件系统(对根文件的只读权限)参考为Pod或容器配置安全上下文|Kubernetes解答 1、切换集群kubectlconfiguse-contextKSMV001022、修改文件