草庐IT

容器化(Docker、K8S)部署Elasticsearch + Kibana

ElasticSearch简介#简介Elasticsearch是一个分布式、RESTful风格的搜索和数据分析引擎,可以实现单机和集群部署,轻松缩放规模。ELK:Elasticsearch+Kibana+Logstash#官方地址https://www.elastic.co/cn/https://www.elastic.co/guide/en/elastic-stack/7.6/overview.htmlhttps://hub.docker.com/_/elasticsearch#应用场景日志分析:对IT设备进行运维分析与故障定位、对业务指标分析运营效果。站内搜索:对网站内容进行关键字检索、对

K8S API访问控制之RBAC利用

前言K8S对于API的访问安全提供了访问控制,主要为4个阶段,本文为第二个阶段——鉴权的RBAC。RBAC是基于角色的访问控制,使用kubeadm安装集群1.6版本以上的都默认开启了RBAC。本文主要研究集群可能存在的利用点及相对应的利用手法。API访问控制K8S的API访问控制就是通过如 kubectl、构造REST请求,去访问K8S的API,请求到达API时经历的多个阶段就是K8S的API访问控制,而RBAC就是其中鉴权的部分,并且是现在的主要方式,kubeadm安装的集群从1.6版本以后都默认开启了RBAC和Node的鉴权方式。图API访问控制的流程[1] RBAC-基于角色的访问控制R

运维良药,K8S日常故障处理集锦

问题1:K8S集群服务访问失败?原因分析:证书不能被识别,其原因为:自定义证书,过期等。解决方法:更新证书即可。问题2:K8S集群服务访问失败?curl:(7)Failedconnectto10.103.22.158:3000;Connectionrefused原因分析:端口映射错误,服务正常工作,但不能提供服务。解决方法:删除svc,重新映射端口即可。kubectldeletesvcnginx-deployment问题3:K8S集群服务暴露失败?Errorfromserver(AlreadyExists):services"nginx-deployment"alreadyexists原因分析

K8S集群上安装KubeSphere的详细过程

文章目录一、安装KubeSphere前置环境1、nfs文件系统1.1、master节点上安装nfs-server服务器:1.2、配置nfs-client(选做)1.3、配置默认存储2、metrics-server3、安装pvc二、安装KubeSphere1、下载核心文件2、修改cluster-configuration3、执行安装4、查看安装进度前提已经搭建好了k8s集群一、安装KubeSphere前置环境1、nfs文件系统1.1、master节点上安装nfs-server服务器:首先在每个节点上安装nfs工具:#在每个机器。yuminstall-ynfs-utils其次,在master节点操

基于kubeadm快速部署k8s集群

1.所有节点部署docker环境yuminstall-ydockerbash-completion#安装dockerversion#查看版本2.修改docke的管理进程(修改cgroup的管理进程为systemd)[root@k8s10~]#cat/etc/docker/daemon.json{"registry-mirrors":["https://tuv7rqqq.mirror.aliyuncs.com"],"exec-opts":["native.cgroupdriver=systemd"]}[root@k8s10~]#[root@k8s10~]#systemctlrestartdock

如何优化k8s中HPA的弹性速率

本文分享自华为云社区《K8s核心资源指标HPA性能优化之路》,作者:可以交个朋友。一背景以弹性指标为cpu、memory为例。在Kubernetes1.7版本中引入了聚合层,允许第三方应用程序注册相关API接口到kube-apiserver上。其中 /apis/metrics.k8s.io/v1beta1 一般由metrics-server程序提供,以插件的形式安装在K8s集群中。相关流程如下:纵观整个链路如何优化HPA的弹性速率呢? 二关键时间点分析首先对于HPAcontrollerKubernetes将HPApod自动扩缩实现为一个间歇运行的控制回路,间隔由kube-controller-

如何优化k8s中HPA的弹性速率

本文分享自华为云社区《K8s核心资源指标HPA性能优化之路》,作者:可以交个朋友。一背景以弹性指标为cpu、memory为例。在Kubernetes1.7版本中引入了聚合层,允许第三方应用程序注册相关API接口到kube-apiserver上。其中 /apis/metrics.k8s.io/v1beta1 一般由metrics-server程序提供,以插件的形式安装在K8s集群中。相关流程如下:纵观整个链路如何优化HPA的弹性速率呢? 二关键时间点分析首先对于HPAcontrollerKubernetes将HPApod自动扩缩实现为一个间歇运行的控制回路,间隔由kube-controller-

K8S 日志方案

一、统一日志管理的整体方案通过应用和系统日志可以了解Kubernetes集群内所发生的事情,对于调试问题和监视集群活动来说日志非常有用。对于大部分的应用来说,都会具有某种日志机制。因此,大多数容器引擎同样被设计成支持某种日志机制。对于容器化应用程序来说,最简单和最易接受的日志记录方法是将日志内容写入到标准输出和标准错误流。但是,容器引擎或运行时提供的本地功能通常不足以支撑完整的日志记录解决方案。例如,如果一个容器崩溃、一个Pod被驱逐、或者一个Node死亡,应用相关者可能仍然需要访问应用程序的日志。因此,日志应该具有独立于Node、Pod或者容器的单独存储和生命周期,这个概念被称为集群级日志记

【K8s】Kubernetes CR、CRD 介绍(控制器)

文章目录CRD概述1.操作CRD1.1创建CRD1.2操作CRD2.其他笔记2.1Kubectl发现机制2.2校验CR2.3简称和属性3.架构设计3.1控制器概览参考CRD概述CR(CustomResource)其实就是在Kubernetes中定义一个自己的资源类型,是一个具体的“自定义API资源”实例,为了能够让Kubernetes认识这个CR,就需要让Kubernetes明白这个CR的宏观定义是什么,也就是需要创建所谓的CRD(CustomResourceDefinition)来表述。可能这么说并不是太直观,换个方式表达一下,我们想要创建一个Pod的时候,那么会编写一个YAML配置,然后前

K8S的集群调度

scheduler:负责调度资源,把pod调度到node节点预算策略优先策略1、List-watchK8S集群中,通过List-watch的机制,进行每个组件的协作,保持数据同步。可以实现每个组件之间的解耦(减少每个组件之间的关联性)通过kubectl配置文件,向apiserver发送命令,通过apiserver发送到各个组件kubectlrunnginx--image=nginx:1.22--->apiserver--->controllermanager--->scheduler--->kubelet创建成功之后,kubectlgetpod  kubectldescribepodnginx