jjzjj

【云原生 | Kubernetes 实战】19、K8s Ingress-Controller 高可用方案

目录一、Ingress和IngressController概述1.1 回顾下service四层代理1.2 Ingress 介绍1.3  IngressController介绍1.4  Ingress和IngressController总结1.5  使用IngressController代理k8s内部pod的流程二、创建两个ingress-controller高可用的pod 三、通过keepalived+nginx实现ingress-nginx-controller高可用3.1安装 nginx主备3.2 修改nginx配置文件3.3 keepalive配置3.4启动服务3.5 测试keepliv

K8s中的pod的终止过程

当用户提交删除请求之后,系统就会进行强制删除操作的宽限期倒计时,并将TERM信息发送给pod对象的每个容器中的主进程。宽限期倒计时结束后,这些进程将收到强制终止的KILL信号,pod对象随即也将由apiserver删除,如果在等待进程终止的过程中,kubelet或容器管理器发生了重启,那么终止操作会重新获得一个满额的删除宽限期并重新执行删除操作。一个典型的pod对象终止流程具体如下:1.用户发送删除pod对象的命令2.api服务器中的pod对象会随着时间的推移而更新,在宽限期内(默认30s),pod被视为dead3.将pod标记为terminating状态4.与第三步同时运行,kubelet在

【博客593】k8s为pod进行cpu绑核以进一步提高性能

k8s为pod进行cpu绑核以进一步提高性能场景:在k8s中,对于游戏训练等任务场景下,游戏worker模拟真实玩家时,性能对cpu依赖程度很高,此时如果对pod进行cpu绑核能够一定程度上再提高性能配置步骤1、驱逐节点:kubectldrain2、停止kubelet:systemctlstopkubelet3、修改kubelet参数:–cpu-manager-policy=“static”4、删除旧的CPU管理器状态文件:rmvar/lib/kubelet/cpu_manager_state5、启动kubeletsystemctlstartkubelet对需要更改其CPU管理器策略的每个节点

k8s学习-CKS真题-Runtime设置gVisor

目录题目环境搭建解题参考题目该cluster使用containerd作为CRI运行时。containerd的默认运行时处理程序是runc。containerd已准备好支持额外的运行时处理程序runsc(gVisor)。Task使用名为runsc的现有运行时处理程序,创建一个名为untrusted的RuntimeClass。更新namespaceserver中的所有Pod以在gVisor上运行。您可以在/cks/gVisor/rc.yaml中找到一个模版清单。环境搭建安装gVisor使用以下命令下载gvisor安装包:wgethttps://storage.googleapis.com/gvis

Kubernetes:开源 K8s 管理工具 Rancher 认知

写在前面博文内容涉及Rancher的介绍,集群内安装查看Rancher的基本功能理解不足小伙伴帮忙指正我所渴求的,無非是將心中脫穎語出的本性付諸生活,為何竟如此艱難呢------赫尔曼·黑塞《德米安》Rancher介绍Rancher是一个Kubernetes管理工具,让你能在任何地方和任何提供商上部署和运行集群。Rancher可以创建来自Kubernetes托管服务提供商的集群,创建节点并安装Kubernetes,或者导入在任何地方运行的现有Kubernetes集群。Rancher基于Kubernetes添加了新的功能,包括统一所有集群的身份验证和RBAC,让系统管理员从一个位置控制全部集群的

k8s部署EFK收集组件及容器日志+kibana展示

四、EFK日志系统日志级别日志打印通常有四种级别,从高到底分别是:ERROR、WARN、INFO、DEBUG。如果开启了某一级别的日志后,就不会打印比它级别低的日志DEBUG:可以打印出最详细的日志信息,主要用于开发过程中打印一些运行信息。INFO可以打印一些你感兴趣的或者重要的信息,这个可以用于生产环境中输出程序运行的一些重要信息,但是不能滥用,避免打印过多的日志。WARNING表明发生了一些暂时不影响运行的错误,会出现潜在错误的情形,有些信息不是错误信息,但是也要给程序员的一些提示ERROR可以打印错误和异常信息,如果不想输出太多的日志,可以使用这个级别,这一级就是比较重要的错误了,软件的

k8s如何滚动升级应用

本文基于《KubernetesinAction》第9章整理。在进入正文前,不得不感慨一下标签选择器的设计对解耦k8s各模块发挥的作用。k8s的service,replicaSet,滚动升级,调度的亲缘性和污点容忍度都离不开标签选择器。标签选择器让k8s对资源的操作更加灵活。手动进行滚动升级我们先用如下的配置创建一个ReplicationControllerapiVersion:v1kind:ReplicationControllermetadata:name:kubia-v1spec:replicas:3selector:matchLabels:app:kubiatemplate:metada

error: Metrics API not available 查看k8s中pod的cpu,memory的使用率情况

root@docker03:~#kubectltoppoderror:MetricsAPInotavailable需要在k8s集群安装metrics-server1.下载metrics-serverwgethttps://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml-Ometrics-server-components.yaml2.更改为阿里云镜像地址sed-i's/k8s.gcr.io\/metrics-server/registry.cn-hangzhou.aliyunc

记一则K8S Node NotReady故障

报障:    今日上午,值班同学发现airflow无法使用。查看时其部署的Node节点NotReady了。分析:    马上查看K8S集群节点的状态,发现这个节点已经是NotReady状态了。第一反应就是ping下节点看是否宕机了?ping正常,于是登录到该节点查看kubelet状态。发现kubelet报runtime不可用,查看containerd的状态,一直在不断的重启,而且启动不成功。为了尽快恢复业务,决定先将containerd的数据目录清空后重新拉起。于是删除containerd数据目录下的文件夹:#ls-lrth/xpu-k8s-data/containerd/total0drwx

【Kubernetes 系列】一文带你吃透 K8S 应用pod结点

作者:半身风雪上一节:创建K8s集群项目简介:上一节我们一起学习了,如何去部署一个K8S的应用程序,这一节,我们主要讲解一下,K8S应用的框架结构。K8S应用pod结点目标一、KubernetesPods1.1、Kubernetes中的pod是做什么的二、工作结点三、故障排除3.1、常见kubectl命令3.2、可视化界面四、pod资源详情总结目标本节我将和大家一起学习Kubernetes应用中的pod结点了解KubernetesPod。了解Kubernetes工作节点。对已部署的应用故障排除。一、KubernetesPods在上一节中,我们一起学会了如何使用kubectl创建一个应用。这里我