草庐IT

kube-apiserver

全部标签

通过keepalived+nginx实现 k8s apiserver节点高可用

 一、环境准备K8s主机配置:配置:4Gib内存/4vCPU/60G硬盘网络:机器相互可以通信k8s实验环境网络规划:podSubnet(pod网段)10.244.0.0/16serviceSubnet(service网段):10.96.0.0/12物理机网段:192.168.1.0/242个控制节点2个工作节点K8S集群角色IP地址主机名安装的组件控制节点192.168.1.63xuegod63apiserver、controllermanager、schedule、kubelet、etcd、kubeproxy、容器运行时、calico、keepalived、nginx、kubeadm、ku

一文详解kube-apiserver认证鉴权能力

本文分享自华为云社区《kube-apiserver认证鉴权能力》,作者:可以交个朋友。HTTPS为什么要进行身份验证首先不管是kubectl还是API调用都是通过HTTPS访问kube-apiserver,有图有真相所以要想了解kube-apiserver认证鉴权,得先从HTTPS说起;接下来我们直接通过API接口访问apiserver为什么不能访问?准确来说是为什么不能建立HTTPS连接原因就是客户端无法验证服务端证书,导致HTTPS连接建立失败。可不可以不验证服务端证书?可以但在公网环境不建议这么做,如果不验证服务端,你可能访问的并不是你想访问的服务端证书如何保证服务端不被伪造如何保证客户

Kubernetes实战(十三)-使用kube-bench检测Kubernetes集群安全

1概述在当今云原生应用的开发中,Kubernetes已经成为标准,然而,随着其使用的普及,也带来了安全问题的挑战。本文将介绍如何使用kube-bench工具来评估和增强Kubernetes集群的安全性。2 CIS(CenterforInternetSecurity)简介CIS(CenterforInternetSecurity)是一家致力于网络安全的非营利组织。它提供一系列针对各种操作系统和应用程序的基线安全标准,这些标准被广泛认可,是防止网络攻击的有效手段。CIS基准是由美国计算机互联网安全中心(CenterforInternetSecurity,简称CIS)制定的一系列全球公认的最佳实践标

聊聊kube-scheduler如何完成调度和调整调度权重

本文分享自华为云社区《kube-scheduler如何完成调度和调整调度权重》,作者:可以交个朋友。一、概述Kube-scheduler作为k8s集群的默认调度器,它监听(watch机制)kube-apiserver,查询还未调度的pod,根据调度策略将pod调度至集群内最适合的Node二、调度流程首先我们通过API或者kubectl工具创建pod,kube-apiserver收到请求信息存储到etcd中,调度器通过watch机制监听apiserver查看到还未被调度的pod列表,循环遍历的为每个pod尝试分配node,这个分配过程如下:kube-scheduler内Informer组件lis

聊聊 Kube-Apiserver 内存优化进阶

原理内存优化是一个经典问题,在看具体 K8S 做了哪些工作之前,可以先抽象一些这个过程,思考一下如果是我们的话,会如何来优化。这个过程可以简单抽象为外部并发请求从服务端获取数据,如何在不影响吞吐的前提下降低服务端内存消耗?一般有几种方式:缓存序列化的结果优化序列化过程内存分配数据压缩在这个场景可能不适用,压缩确实可以降低网络传输带宽,从而提升请求响应速度,但对服务端内存的优化没有太大的作用。kube-apiserver已经支持基于gzip的数据压缩,只需要设置 Accept-Encoding 为gzip即可,详情可以参考官网[1]介绍。当然缓存序列化的结果适用于客户端请求较多的场景,尤其是服务

Kubernetes_APIServer_APIServer简介

文章目录一、前言二、APIServer概要三、APIServer中的接口3.1kubectl与APIServer之间是REST调用3.2查看yaml文件中的apiVersion3.3APIServer中的Restful风格接口3.4APIServer中的API路径3.5kube-apiserver的insecure-port端口3.6操作k8s的开源工具3.7APIServer资源查看四、APIServer中的接口属性4.1APIServer中的API版本(Alpha/Beta/GA)4.2APIServer请求格式(JSON编码/YAML编码/协议缓冲区编码)4.3APIServer常见响应

【K8S认证】2023年CKS考题-Kube-Bench基准修复(解析+答案)

题目:k8sKube-Bench不安全项修复Context:针对kubeadm创建的cluster运行CIS基准测试工具时,发现了多个必须立即解决的问题。Task:通过配置修复所有问题并重新启动受影响的组件以确保新的设置生效。修复针对API服务器发现的所有以下违规行为:1.2.7Ensurethatthe--authorization-modeargumentisnotsettoAlwaysAllow FAIL1.2.8Ensurethatthe--authorization-modeargumentincludesNode FAIL1.2.9Ensurethatthe--authorizat

Kubernetes 漫游:Kube-Scheduler

概述什么是kube-scheduler?Kubernetes 集群的核心组件之一,它负责为新创建的Pods分配节点。它根据多种因素进行决策,包括:1. 资源需求和限制:考虑每个Pod请求的资源量(如CPU和内存)以及节点上可用的资源。2. 亲和性和反亲和性规则:根据Pod的亲和性设置选择最适合的节点。3. 健康检查:确保选择的节点健康且能够运行Pod。4. 负载均衡:尽量平衡集群中各个节点的负载。使用limits和reuqests在部署对象中的spec中常常会见到关于 limits 和 requests 的声明,例如:apiVersion:apps/v1kind:Deploymentmetad

Kubernetes 漫游:kube-scheduler

概述什么是kube-scheduler?Kubernetes集群的核心组件之一,它负责为新创建的Pods分配节点。它根据多种因素进行决策,包括:资源需求和限制:考虑每个Pod请求的资源量(如CPU和内存)以及节点上可用的资源。亲和性和反亲和性规则:根据Pod的亲和性设置选择最适合的节点。健康检查:确保选择的节点健康且能够运行Pod。负载均衡:尽量平衡集群中各个节点的负载。使用limits和reuqests在部署对象中的spec中常常会见到关于limits和requests的声明,例如:apiVersion:apps/v1kind:Deploymentmetadata:name:nginx-de

k8s v1.27.4 部署metrics-serverv:0.6.4,kube-prometheus,镜像下载问题处理

只有一个问题,原来的httpGet存活、就绪检测一直不通过,于是改为tcpSocket后pod正常。wgethttps://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml修改后的yaml文件,镜像修改为阿里云apiVersion:v1kind:ServiceAccountmetadata:labels:k8s-app:metrics-servername:metrics-servernamespace:kube-system---apiVersion:rbac.authoriz