![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
K8S
joker_zhou
这个作者很懒,什么都没留下…
展开
-
记一次关闭POD无法优雅关闭的问题
在容器内使用了 dumb-init 启动java进程,之前都是可以响应关闭信号的, 之后有一个需求需要脚本去生成随机数传入java进程中,所以采用脚本去生成并且在脚本内启动java程序,后发现java在关闭的时候居然不响应关闭信号…考虑是启动脚本的问题.根据网上的信息需要修改shell脚本的shebang为#!/usr/bin/dumb-init /bin/sh 即可,但是不知道原因我这边并没有生效.有高人可以帮忙看下。我使用的是在脚本内使用 exec 来提升子进程到PID进程下,即可…原创 2023-03-07 11:37:11 · 174 阅读 · 1 评论 -
Centos7 安装Fluent Bit 监控日志文件并保存到Es中,简单示例
【代码】Centos7 安装Fluent Bit 监控日志文件并保存到Es中,简单示例。原创 2022-11-29 11:22:34 · 728 阅读 · 0 评论 -
自定义admission controller(Mutating) supports kubernetes 1.24.6
本文使用admission的方式对开发环境的POD增加label。原创 2022-11-08 16:58:54 · 222 阅读 · 0 评论 -
kubernetes从1.23.8升级到1.24.6
kubernetes 1.23.8 升级 1.24.6原创 2022-10-11 13:41:00 · 1289 阅读 · 0 评论 -
Deployment批量扩容缩容
记录下今天公司在准备k8s环境中因为kafka消费出现问题,需要紧急下线K8S中的服务。原创 2022-09-07 18:14:43 · 275 阅读 · 0 评论 -
在宿主机上对POD进行抓包
【代码】在宿主机上对POD进行抓包。原创 2022-09-06 14:38:43 · 359 阅读 · 0 评论 -
记录Spring-boot-actuator 暴露K8S 检查检查接口
有时候有些特殊的资源需要手动修改liveness的状态,可以用如下方法/**try {//主要是这里就是修改状态为DOWN的 } } . start();;} }原创 2022-08-25 11:54:56 · 780 阅读 · 0 评论 -
Java根据线程指标自定义HPA(Prometheus为监控收集)
这里使用的是上面指标接口的jvm_threads_current也就是当前线程数量作为扩容指标,这个指标随便改吧…访问: http://k8s服务器:21904/metrics 出现如下输出就算配置正确了。增加/metrics接口,这里是直接暴露simpleclinet的Servlet。这里使用prometheus simpleclient暴露java的一些指标。安装: prometheus-adapter。在pom.xml增加。原创 2022-08-20 09:35:59 · 1070 阅读 · 0 评论 -
高版本Jenkins 通过HTTP开启任务
因为高版本Jenkins认为跨域不安全,需要一个插件来搞原创 2022-07-25 17:50:50 · 648 阅读 · 0 评论 -
Jenkins使用Pipeline 使用 Kubernetes pod tmp编译java程序
Jenkisn使用K8s插件模板方式编译原创 2022-07-25 17:21:02 · 470 阅读 · 0 评论 -
k8S使用logging-operator收集日志(修改DOCKER ROOT DIR,导致无法采集日志的问题)
介绍不多说,百度一片,安装其实也不少,这里主要记录是因为我这边修改了DOCKERROOTDIR,然后不做一些特殊配置没办法收集到日志,网上关于这个的也少记录下自己用,从安装开始记录,额我感觉写这篇文章不错概念什么的直接看他的吧https//blog.csdn.net/tao12345666333/article/details/116178575我这边主要记录如何解决,一些问题的。......原创 2022-07-22 10:45:35 · 503 阅读 · 0 评论 -
k8s 1.24 使用nfs,解决无法下载镜像问题
feature-gates=RemoveSelfLink=false 参数正式移除了,所以导致添加这个之前的nfs provider不好用, 现在使用新的方式去做解压后修改 values.yaml中的 nfs.server 和 nfs.path字段为NFS服务器的然后使用 helm安装命令安装即可会创建一个nfs-client的storageclass,如果需要可以使用下面命令改成默认存储PS镜像无法下载问题:这 里需要一个k8s.io的镜像 这个镜像在国内无法下载,这里说下解决方案,使用阿里云原创 2022-06-27 10:38:15 · 2111 阅读 · 0 评论 -
K8S以及ETCD删除Shell , Docker / containerd 镜像清除
K8S/ETCD清理原创 2022-06-21 10:30:45 · 1207 阅读 · 0 评论 -
K8S etcd备份与恢复(kubesphere搭建的集群)
etcd备份恢复原创 2022-06-17 10:12:17 · 876 阅读 · 0 评论 -
K8S删除节点重新加入集群
K8S删除节点重新加入节点原创 2022-06-15 10:33:40 · 997 阅读 · 0 评论 -
记录一次 虚拟机断电k8s 集群的etcd 数据损坏启动不起来的问题
突然断电导致k8s的apiserver 启动失败,查看原因是无法连接本地 2379端口,该端口是etcd的.所以查看etcd的日志journalctl -u etcd -n 10mv /var/lib/etcd/member/* /opt删除 etcd 数据目录,启动即可,但是如果是单机服务的话记得然后将启动参数ETCD_INITIAL_CLUSTER_STATE 改为 new...原创 2022-05-29 00:13:56 · 1917 阅读 · 0 评论 -
Helm快速搭建Harbor镜像仓库(带端口)
简单几步:helm repo add harbor https://helm.goharbor.iohelm fetch harbor/harbortar -zxvf ./harbor-1.9.0.tgz #根据版本解压kubectl create ns harbor修改values.yaml中的值core.harbor.domain 全局替换为你的域名notary.harbor.domain 为你的域名storageClass: “” 全局替换为你的存储该值根据需要去修改即可6.原创 2022-04-14 17:22:02 · 1223 阅读 · 0 评论 -
如何根据PID查找进程是在哪个容器实例运行的
今天部署 prometheus 发现端口被占用了,寻思刚配置文件就OK了然后开始查找哪个进程,先使用netstat -anop | grep 9100查看进程ID 根据进程ID 使用 ps aux 命令查看 该进程的信息本来想修改下配置文件就OK了,然后发现/etc/下没有prometheus,考虑可能是容器启动的,如何查找该进程在哪个容器内使用如下命令ps -e -o pid,cmd,comm,cgroup | grep 3188在输出的内容中很容器看到 docker实例的ID,然后使原创 2022-04-11 09:45:01 · 2352 阅读 · 0 评论 -
Istio 使用Ingress,启用灰度更新以及解决跨域问题的路由配置
kind: IngressapiVersion: extensions/v1beta1metadata:name: biz-module-diesel-ingressnamespace: p-lms-meshannotations:kubesphere.io/creator: adminnginx.ingress.kubernetes.io/cors-allow-headers: >-DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requeste原创 2022-02-10 13:17:08 · 1028 阅读 · 0 评论 -
jenkins pipeline记录
def riqi=’’def basedir=‘biz-module-storage/biz-module-storage-start’import java.text.SimpleDateFormatpipeline {agent {node {label ‘maven’}}environment {DATETAG=""DEPLOY_ENV_SELECT=“test”DEPLOY_ENV=‘dev’BRANCH_ENV=‘dev’PROJECT=‘p-lms-istio’VE原创 2022-02-08 09:47:28 · 703 阅读 · 0 评论 -
配合K8S 本地调试Springcloud微服务中的某一个模块
此方案仅适用于k8s环境中部署的SpringCloud微服务程序. 中心思想是:利用kt connect+Proxifier将本机的网络代理到k8s服务器中,自定义负载均衡策略识别http请求中的标识(我使用的是header中的特殊值)匹配,微服务注册到nacos中的元数据值,将请求路由到指定的服务器中.具体如下.答题思路就是以上思路具体中也要看项目使用的gateway是什么来具体做,本项目使用的网关是gateway负载均衡策略为 Ribbon1.下载kubectl并将k8s服务器中的config文件(原创 2021-05-27 14:19:43 · 1351 阅读 · 0 评论 -
K8S 指定 emptydir 的时候出现no space left on device
检查发现是POD所在服务器的kubectl的硬盘空间不足解决方案: 1 清理kubectl所在磁盘 2 转移kubectl的工作目录磁盘2的解决方案: 修改kubelet工作目录 1 修改配置文件/etc/default/kubelet (默认不存在该文件,需要新增创建) KUBELET_EXTRA_ARGS=--root-dir=/mnt/data/kubelet...原创 2021-05-12 10:01:32 · 578 阅读 · 0 评论 -
解决calico/node is not ready: BIRD is not ready: BGP not established withxxx
发现问题:使用kubectl get pod -n kube-system 发现 有calico的pod启动不成功,在网上百度发现千篇一律的答案然后测试.后来发现也不是全部的都对然后使用kubectl describe podcalico-node-gdkvg-n kube-system 查看pod发现pod出现以下错误百度发现是没有发现阵子的网卡使用ifconfig 查看集群机器台机器的网卡分别是 enp6s0,eno1 发现都是 en开头 然后修改 calico 的配置文件:...原创 2021-05-10 17:38:47 · 3815 阅读 · 1 评论 -
在K8S中使用NFS
基本流程简单:1. 首先在客户端按照nfs 服务..这个网上一堆不介绍了,2. 创建一个命名空间 (kubectl create namespace xxxx)3. 创建rbac (rbac.yaml)4. 创建nfs的provisioner (deployment.yaml)5. 创建StorageClass (storageClass.yaml)6. 在PVC使用storageClass即可 (pvc.yaml)rbac.yamlapiVersion: v1kin..原创 2021-05-08 10:45:06 · 1636 阅读 · 0 评论 -
MAC使用kubectl链接其他服务器k8s集群
kubectl其实就是client-go的客户端,既然是客户端就可以链接其他的服务器..一顿源码分析找到了,链接其他服务器的关键..过程不重要..主要是分析的时候乱糟糟的.回头截图麻烦.有空再写一篇文章.mac和Windows简单,下载按照docker desktop先去远程K8S的机器上执行. cat ~/.kube/config使用下列命令, 将certificate-authority-data client-certificate-dataclient-key-data...原创 2021-05-08 10:15:17 · 663 阅读 · 0 评论 -
使用kubesphere3.0 完成 自制应用的 DevOps
改DevOps主要就是 监控git 在有版本更新的时候可以自动拉取代码打包发布docker images,更新k8s的deployment1. 自制应用参考官方文档配置( 自制应用可以用的KubeSphere的灰度发布功能)Jenkins的pipeline如下def riqi=''import java.text.SimpleDateFormatpipeline { agent { node { label 'maven' } } environme原创 2021-03-30 11:10:00 · 1302 阅读 · 0 评论 -
KubeSphere DevOps的 pipeline文件随记
pipeline { agent { node { label 'maven' } } environment { REPOSITORY="git@gitee.com:t" //默认测试环境变量 VERSION='test' DEPLOY_ENV = 'dev' BRANCH_ENV = 'dev' } stages { stage('发布环境选择'){ //这里是判断是否可以选择.原创 2021-03-05 13:07:43 · 385 阅读 · 0 评论 -
centos7 编译安装cri-o 出现 btrfs/ioctl.h: No such file or directory 错误
执行 yum install -ybtrfs-progs-devel 就可以了原创 2020-12-04 17:50:53 · 1472 阅读 · 0 评论 -
K8S重启后coredns pod无法正常运行
查看POD 发现 爆Readiness probe failed: HTTP probe failed with statuscode: 503查半天 特么的 居然是防火墙没关...原创 2020-11-12 09:19:11 · 2812 阅读 · 1 评论 -
安装K8S 记录
准备三台机器如下192.168.1.193 master192.168.1.191 node01192.168.1.192 node02yum install -y yum-utils device-mapper-persistent-data lvm2设置Docker源yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo安装Doc...原创 2020-11-06 14:27:53 · 134 阅读 · 0 评论