![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
K8S
文章平均质量分 59
运维@小兵
技术改变世界
展开
-
K8S网络原理
k8s网络原理原创 2023-10-04 14:36:07 · 1411 阅读 · 3 评论 -
ctr从harbor拉取镜像报错“x509: certificate signed by unknown authority”
添加-k参数跳过认证即可。原创 2023-11-01 10:19:35 · 526 阅读 · 0 评论 -
Linux部署kubeedge 1.4
Linux部署kubeedge 1.4原创 2023-10-11 20:19:35 · 554 阅读 · 0 评论 -
k8s节点不断Created/Removed slice libcontainer_105746_systemd_test_default.slice
k8s节点不断Created/Removed slice libcontainer_105746_systemd_test_default.slice原创 2023-02-23 10:15:11 · 531 阅读 · 0 评论 -
k8s安装tekton,编写task
k8s安装tekton,编写task原创 2023-02-20 14:00:19 · 1026 阅读 · 0 评论 -
k8s强制删除命名空间
k8s强制删除命名空间原创 2022-10-17 20:04:34 · 403 阅读 · 0 评论 -
k8s部署minio单机版
k8s部署minio单机版原创 2022-10-09 16:08:53 · 802 阅读 · 0 评论 -
k8s部署es集群和kibana
k8s部署es集群和kibana原创 2022-10-08 18:24:30 · 3473 阅读 · 2 评论 -
k8s部署es单机版和kibana
k8s部署es和kibana原创 2022-09-07 11:25:04 · 1631 阅读 · 3 评论 -
k8s镜像拉取策略
k8s镜像拉取策略原创 2022-08-29 19:32:27 · 2526 阅读 · 0 评论 -
k8s如何优雅地关闭Pod
优雅地关闭Pod原创 2022-07-20 15:32:02 · 6320 阅读 · 0 评论 -
k8s部署redis哨兵
k8s部署redis哨兵原创 2022-06-28 11:15:26 · 3577 阅读 · 4 评论 -
k8s的kubelet报错PLEG is not healthy: pleg was last seen active 3m41.603110188s ago
报错日志原因k8s集群中存在大量状态为Terminating的Pod解决rancher kubectl get pod -n ${NAMESPACE} | grep Terminating | awk '{print $1}' | xargs -i rancher kubectl delete pod {} --force --grace-period=0 -n ${NAMESPACE}原创 2022-04-26 15:48:18 · 1161 阅读 · 0 评论 -
rancher创建用户,授予访问特定项目下的权限,并且可以进入容器
一、创建用户二、授权给指定项目选择项目成员添加成员完成原创 2022-02-17 11:27:17 · 1452 阅读 · 7 评论 -
rancher k8s集群pod一直处于Pending状态
资源、docker、kubelet、调度器都没有发现问题解决:到调度节点重启kubeletdocker restart kubelet原创 2022-02-17 10:25:32 · 2722 阅读 · 3 评论 -
rancher不能登录,FATA[0000] Get https://ip/v3: x509: cannot validate certificate for ip
文章目录一、问题描述`执行rancher kubectl get ns报错``查看rancher server容器日志``查看etcd日志`二、原因三、解决`临时解决``永久解决`一、问题描述执行rancher kubectl get ns报错查看rancher server容器日志docker ps | grep rancherdocker logs -f 1109d9b6e6b7发现有etcdserver有“took too long ”的警告查看etcd日志docker l原创 2021-12-30 14:20:06 · 1718 阅读 · 1 评论 -
shell脚本检查k8s Pod是否更新成功
rancher kubectl get pod -n ${k8sNamespace} | grep Evicted | awk '{print \$1}' | xargs -i rancher kubectl delete pod {} -n ${k8sNamespace}num=0 while [[ ${num} -lt 60 ]] do echo "INFO:Begin Upgrade ${serviceName},Please Wait..." sleep 10 p原创 2021-12-28 11:30:13 · 1331 阅读 · 0 评论 -
Jenkins+企业微信机器人实现rancher证书过期时间的检查并发送通知
背景:有一天突然发现rancher 2.3.8不能登录了,后台查看日志,发现是证书有问题,查看证书时间,发现昨天已经过期了临时解决方法rancher证书过期怎么办长远方案通过Jenkins任务定时去检查证书的过期时间,如果证书3个月后过期,则通过企业微信机器人发出通知一共需要三个脚本‘check_rancher_cert_time.groovy’timestamps { /** * 每周一9点检查192.168.1.2的rancher证书过期时间 */ pr原创 2021-12-18 12:44:13 · 1513 阅读 · 0 评论 -
rancher证书过期怎么办
查看证书日期find / -name '*client-ca.crt' -type fcd /data/docker/volumes/d5c55bbfc477cc744ec4b7ba2361c26b3bc5c814ee9e79e7205207b02d278bdd/_data/k3s/server/tls/for i in ls /var/lib/rancher/k3s/server/tls/*.crt; do echo $i; openssl x509 -enddate -noout -in $i原创 2021-12-17 15:07:38 · 5219 阅读 · 0 评论 -
K8S部署skywalking
文章目录一、安装K8S集群kubeadm部署K8s集群V1.19.0二、部署skywalking`2.1.创建命名空间``2.2.给节点打标签``2.3.skywalking-oap.yml``2.4.skywalking-ui.yml``2.5.访问`三、sidecar 模式挂载 agent四、微服务对接skywalking一、安装K8S集群kubeadm部署K8s集群V1.19.0二、部署skywalking2.1.创建命名空间kubectl create ns skywalking2原创 2021-10-17 10:10:05 · 4554 阅读 · 8 评论 -
k8s资源对象完整示例
deployment原创 2021-09-17 16:46:54 · 757 阅读 · 0 评论 -
k8s部署Istio1.5.8
文章目录一、部署K8S集群二、部署Istio`2.1. 安装二进制包``2.2. 下载所需镜像`docker配置镜像加速器`2.3. 安装 demo`三、部署bookinfo实例`3.1. 为 default 命名空间开启自动注入``3.2. 拉取相关镜像``3.3. 创建入口网关``3.4. 从网页访问`四、卸载istio一、部署K8S集群kubeadm部署K8s集群V1.19.0二、部署Istio2.1. 安装二进制包下载地址:https://github.com/istio/istio原创 2021-09-11 09:15:53 · 502 阅读 · 0 评论 -
rancher增加/删除node节点
修改服务器主机名hostnamectl set-hostname 主机名关闭防火墙systemctl stop firewalldsystemctl disable firewalld安装dockerShell脚本安装Docker(二进制版)增加node节点登录到rancher前台全局→选择一个集群主机点击右上角的编辑集群拉到最下面,复制命令到新的node节点执行,过段时间即可...原创 2021-09-03 17:43:40 · 3962 阅读 · 0 评论 -
k8s指定私有镜像仓库
一、docker login 镜像仓库地址(如192.168.1.200:5000)登陆成功会生成~/.docker/config.json这个文件,里面会记录登陆镜像仓库的认证信息二、将config.json转换成base64编码 cat ~/.docker/config.json|base64 -w 0三、编写registrykey-myhub.yml配置文件apiVersion: v1kind: Secretmetadata: name: registrykey-myhub na原创 2021-05-24 19:03:24 · 2585 阅读 · 0 评论 -
解决k8s Error registering network: failed to acquire lease: node “master“ pod cidr not assigne
部署flannel网络插件时发现flannel一直处于CrashLoopBackOff状态,查看日志提示没有分配cidr解决vim /etc/kubernetes/manifests/kube-controller-manager.yaml增加参数:--allocate-node-cidrs=true--cluster-cidr=10.244.0.0/16systemctl restart kubelet...原创 2021-04-09 21:18:37 · 9192 阅读 · 11 评论 -
Python之K8S API接口大全
文章目录环境准备`安装python相关模块`Kubernetes API使用`API是什么?``K8s认证方式`HTTPS证书认证(kubeconfig)HTTP Token认证(ServiceAccount)获取Token字符串python调用`其他常用资源接口类实例化:``示例`操作Deployment操作Service`HTTP API`使用token使用证书环境准备安装python相关模块pip3 install kubernetesKubernetes API使用API是什么?A转载 2021-03-06 11:53:42 · 4804 阅读 · 3 评论 -
通过curl命令访问K8s API
通过curl命令访问K8s API原创 2021-03-06 11:25:21 · 2648 阅读 · 0 评论 -
Python通过K8s API实现对K8S集群的访问认证
文章目录一、环境准备`1.1.安装python相关模块`二、Kubernetes API使用`2.1.API是什么?``2.2.K8s认证方式`1、HTTPS证书认证(kubeconfig)2、HTTP Token认证(ServiceAccount)获取Token字符串拷贝ca证书到python脚本所在的目录python调用3、用户名+密码的方式认证基本不用参考视频:https://ke.qq.com/course/320021一、环境准备1.1.安装python相关模块pip3 install转载 2021-03-06 11:09:31 · 4916 阅读 · 0 评论 -
卸载kubeadm安装的K8s集群
重置Kubeadmkubeadm reset -f删除docker无用的镜像容器docker system prune -f清空iptables规则iptables -t nat -F iptables -t nat -X iptables -t nat -P PREROUTING ACCEPT iptables -t nat -P POSTROUTING ACCEPT iptables -t nat -P OUTPUT ACCEPT iptables -t mangle -F ipt原创 2021-02-27 21:13:37 · 1890 阅读 · 0 评论 -
kubectl exec -it非交互式登陆pod中的mysql容器并导入sql脚本
拷贝xxx.sql到容器里面kubectl cp /tmp/xxx.sql PodName:/tmp/ -n NAMESPACE #如果Pod里面有多个container,默认为container-0执行SQLkubectl exec -ti PodName -c container-0 -n NAMESPACE -- mysql -uroot -S /tmp/mysql.sock -pPASSQORD < /tmp/xxx.sql...原创 2021-02-26 20:23:08 · 3119 阅读 · 0 评论 -
K8S部署Pod到指定节点
在启动Pod的yaml文件中与containers同级别的位置添加如下两行即可一、使用系统自带标签kubectl get node --show-labels #查看所有node节点的标签nodeSelector: kubernetes.io/hostname: node的IP地址或主机名二、自己为节点打标签,然后调度到该节点kubectl label node k8s-node1 app=devnodeSelector: app: dev...原创 2021-02-26 20:20:10 · 6627 阅读 · 1 评论 -
kubectl命令大全
文章目录参考书籍:《Kubernetes权威指南第4版从Docker到Kubernetes实践全接触》一、常用别名二、基本命令`2.1.创建或更新资源对象``2.2.查看资源对象``2.3.描述资源对象``2.4.删除资源对象``2.5.执行容器的命令``2.6.查看容器的日志``2.7.kubectl自动补齐`三、Pod操作`3.1. 生成一个外部访问的端口``3.2. 强制删除Pod``3.3. 添加taint,避免Pod 调度到特定Node 上``2.4. 将Pod的开放端口映射到本地``3.5. 在原创 2021-02-26 20:08:19 · 10866 阅读 · 0 评论 -
K8S在一个Pod中创建多个容器
参考书籍:《Kubernetes权威指南第4版从Docker到Kubernetes实践全接触》YAML文件内容(把tomcat和mysql放到同一个Pod中)apiVersion: v1kind: Podmetadata: name: my-app labels: name: my-appspec: containers: - name: tomcat image: tomcat:1.0 ports: - containerPort: 8080原创 2021-02-26 20:06:41 · 7686 阅读 · 0 评论 -
kubeadm升级K8s集群1.19.0到V1.20.0
文章目录一、注意事项二、升级管理节点:`2.1.查找最新版本号``2.2.升级kubeadm``2.3.驱逐node上的pod,且不可调度``2.4.检查集群是否可以升级,并获取可以升级的版本``2.5.执行升级``2.6.取消不可调度``2.7.升级kubelet和kubectl``2.8.重启kubelet`三、升级工作节点`3.1.升级kubeadm``3.2.驱逐node上的pod,且不可调度``3.3.升级kubelet配置``3.4.升级kubelet和kubectl``3.5.重启kubele转载 2020-12-13 10:27:48 · 1638 阅读 · 0 评论 -
Etcd数据库备份与恢复
参考视频:https://ke.qq.com/course/1709963一、kubeadm部署方式1.1.备份etcdyum install etcd -yETCDCTL_API=3 etcdctl \snapshot save snap.db \--endpoints=https://127.0.0.1:2379 \--cacert=/etc/kubernetes/pki/etcd/ca.crt \--cert=/etc/kubernetes/pki/etcd/server.crt \转载 2020-12-12 21:57:50 · 459 阅读 · 0 评论 -
K8S之网络策略
k8s网络策略原创 2020-12-12 15:23:46 · 1319 阅读 · 1 评论 -
K8S安全-RBAC
文章目录一、Kubernetes 安全框架`1.1.鉴权(Authentication)``1.2.授权(Authorization)``1.3.准入控制(Admission Control)`二、基于角色的权限访问控制:RBAC`2.1.角色``2.2.角色绑定``2.3.主体(subject)`三、为devops用户授权访问default命名空间权限`3.1.用K8S CA签发客户端证书`3.1.1.[Shell脚本安装cfssl](https://blog.csdn.net/anqixiang/art原创 2020-11-22 18:12:09 · 1392 阅读 · 6 评论 -
K8S之nodeName
一、概念指定节点名称,将Pod调度到指定的Node上,不经过调度器,会绕过Taint二、使用spec: nodeName: k8s-node1 containers: - name: nginx image: nginx原创 2020-11-15 16:07:30 · 4643 阅读 · 0 评论 -
k8s HPA示例
一、简介HPA(Horizontal Pod Autoscaler)是kubernetes的一种资源对象,能够根据某些指标对在statefulSet、replicaController、replicaSet等集合中的pod数量进行动态伸缩,使运行在上面的服务对指标的变化有一定的自适应能力。二、HPA示例yaml文件frontend-hpa.yamlapiVersion: autoscaling/v1kind: HorizontalPodAutoscalermetadata: name:原创 2020-11-01 22:16:08 · 1072 阅读 · 0 评论 -
kubeadm部署K8s集群V1.19.0
环境信息K8s-master 192.168.1.11 CentOS7.5 2C4G40GK8s-node 192.168.1.11 CentOS7.5 2C4G40G安装前准备(所有节点执行)2.2. 关闭防火墙systemctl disable firewalldsystemctl stop firewalld2.3. 禁用SELinuxsetenforce 0sed -i '/^SELINUX=/c SELINUX=disabled' /etc/selinux/config2原创 2020-10-25 18:41:50 · 3232 阅读 · 5 评论