首页 > TAG信息列表 > APIServer

Kubernetes学习笔记(二十二):Authentication 身份认证

kubectl create serviceaccount sa1 kubectl get serviceaccount 验证方式kube-apiserver: Static Password File Static Token File Certificates Identity Services,第三方身份验证协议,如LDAP、Kerberos等 Static Password File : user-details.csv : password,username,userid(,

kubernetes认证授权机制

kubernetes认证授权机制   Kubernetes过一系列机制来实现集群的安全机制,包括API Server的认证、授权、准入控制机制等。集群的安全性必须考虑以下的几个目标: 保证容器与其所在宿主机的隔离; 限制容器给基础设施及其他容器带来消极影响的能力; 最小权限原则,合理限制所

K8S v1.20 及以上版本 StorageClass 创建 PVC 不成功解决

故障描述: PVC 显示创建不成功:kubectl get pvc -n efk 显示 Pending,这是由于版本太高导致的。k8sv1.20 以上版本默认禁止使用 selfLink。(selfLink:通过 API 访问资源自身的 URL,例如一个 Pod 的 link 可能是 /api/v1/namespaces/ns36aa8455/pods/sc-cluster-test-1-6bc58d44d6-r8hld

k8s创建server报错-x509: certificate has expired or is not yet valid

前提:k8s证书都是正常的没有过期,前段时间做过处理。 原因:替换了k8s证书后没有对kube-apiserver主键重启,还使用的是缓存信息,重启一下问题解决 systemctl restart kube-apiserver.service   问题:kubectl create -f apply-server.yamlError from server: error when creating "ld-m

k8s x509: certificate is valid for 10.x.x.x, 172.x.x.x, not 117.x.x.x

链接k8s错误 1、reset集群 kubeadm reset 2、重新初始化集群, 加上--apiserver-cert-extra-sans=117.X.X.X kubeadm init --apiserver-advertise-address=172.x.x.x --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.20.12 --service-cidr=1

创建一个 k8s pod,背后发生了什么

本例使用 kubectl 创建、运行了一个 nginx pod: kubectl run nginx --image=nginx --restart=Never 通过 tcpdump 抓包、分析,得到的交互流程如下图所示: sequenceDiagram autonumber participant C as kubectl participant AS as kube-apiserver participant S as

【转载】外网通过kubeconfig访问内网下k8s集群

公有云上组建k8s集群时,通常是使用绑定在节点网卡上的IP地址来部署集群,此时,一般使用的是192.168.x.x这样的私网IP。 使用时,我们可能希望在本地使用k8s集群的kubeconfig文件来访问集群。但记录在kubeconfig文件中的server的IP地址是192.168.x.x这样的私网IP, 本地不能直接访问,将kubec

k8s client-go源码分析 informer源码分析(1)-概要分析

k8s informer概述 我们都知道可以使用k8s的Clientset来获取所有的原生资源对象,那么怎么能持续的获取集群的所有资源对象,或监听集群的资源对象数据的变化呢?这里不需要轮询去不断执行List操作,而是调用Watch接口,即可监听资源对象的变化,当资源对象发生变化,客户端即可通过Watch接口收到

使用client-go提供的客户端连接apiserver

“ client-go支持5种客户端对象与apiserver交互的方式,它们都是通过kubeconfig配置信息连接到指定的apiserver。”     首先都要读取kubeconfig文件并实例化config对象:   config, err := clientcmd.BuildConfigFromFlags("", "/root/.kube/config")  //第一个参数是apiserve

【 k8s 概念(九)】Kubernetes Nodes

文章目录 Node是什么?Node StatusAddressesConditionCapacityInfo ManagementNode ControllerKubernetes Master-Node通信Cluster -> MasterMaster -> Clusterapiserver - > kubeletapiserver -> nodes、pods、servicesSSH Tunnels Node是什么? Node是Kubernetes中的工

一键部署利器:kubeadm

Kubernetes 作为一个 Golang 项目,已经免去了很多类似于 Python 项目要安装语言级别依赖的麻烦。但是,除了将各个组件编译成二进制文件外,用户还要负责为这些二进制文件编写对应的配置文件、配置自启动脚本,以及为 kube-apiserver 配置授权文件等等诸多运维工作。 目前,各大云厂商最

k8s集群从一千节点增加到五千台节点遇到的瓶颈

Kubernetes 自从1.6起便号称可以承载 5000 个以上的节点,但是从数十到 5000 的路上,难免会遇到问题。在 kubernetes 5000 之路上的经验,包括遇到的问题、尝试解决问题以及找到真正的问题。1、问题一:1 ~ 500 个节点之后问题:kubectl 有时会出现 timeout ( p.s. kubectl -v=6 可以显示所

kubernetes组件之api 安装

  下载安装包 wget https://dl.k8s.io/v1.23.0-rc.0/kubernetes-server-linux-amd64.tar.gz   解压并拷贝二进制程序到环境变量目录 tar xf kubernetes-server-linux-amd64.tar.gz cd kubernetes/server/bin cp kube-apiserver kube-controller-manager kube-scheduler kub

Kubernetes APIService资源

1、概述 在kubernetes上扩展资源类型的方式有三种,第一种是CRD,CRD是kubernetes内建的资源类型,该类型资源主要用来创建用户自定义资源类型的资源;即通过CRD资源,可以将用户自定义资源类型转换为kubernetes上资源类型;第二种是自定义apiserver;这种方式要比第一种方式要复杂一点,需要用户

[kubespherev3.2.1]kube-apiserver.yaml文件解释

[root@k8s1 manifests]# cat kube-apiserver.yaml apiVersion: v1 #api版本 kind: Pod #控制器对象类型 metadata: annotations: #插件: kubeadm.kubernetes.io/kube-apiserver.advertise-address.endpoint: 172.17.64.20:16443 creationTimest

kubernetes 的工作过程 list-watch

      kubernetes 的工作过程list-watch整个k8s 的工作过程是一个list-watch 机制。有3 个list watch 分别是controller manager ; scheduler ; kubelet k8s有两种节点,master 节点 和worker-node 节点master 节点包括apiserver ; scheduler ; controller-manager ; node节点包

k8s集群详细安装步骤,java架构师成长直通车pan

2.1.2kube-apiserver服务 2.1.2.1下载并复制 下载 wget https://dl.k8s.io/v1.19.0/kubernetes-server-linux-amd64.tar.gz 解压 tar -zxvf kubernetes-server-linux-amd64.tar.gz 解压后将kube-apiserver、kube-controller-manager、kube-scheduler以及管理要使用的kubectl

k8s之list-watch机制、节点调度以及亲和性

k8s之list-watch机制、节点调度以及亲和性 目录k8s之list-watch机制、节点调度以及亲和性一、list-watch机制1. list-watch介绍2. list-watch工作流程二、节点调度1. 调度策略2. 预算策略3. 优选策略4. 指定调度节点4.1 方法一:nodeName4.2 方法二:nodeSelector三、亲和性1. 官方文

kubectl 创建 Pod 背后到底发生了什么?

想象一下,如果我想将 nginx 部署到 Kubernetes 集群,我可能会在终端中输入类似这样的命令: $ kubectl run --image=nginx --replicas=3 然后回车。几秒钟后,你就会看到三个 nginx pod 分布在所有的工作节点上。这一切就像变魔术一样,但你并不知道这一切的背后究竟发生了什么事情

关于在k8s-v1.20以上版本使用nfs作为storageclass出现selfLink was empty, can‘t make reference

在使用nfs创建storageclass 实现存储的动态加载 分别创建 rbac、nfs-deployment、nfs-storageclass之后都正常运行 但在创建pvc时一直处于pending状态 kubectl describe pvc test-claim 查看pvc信息提示如下 Normal ExternalProvisioning 13s (x2 over 25s) persistentvolum

17.Apiserver和RBAC

17.Apiserver和RBAC 1.如何保证Kubernetes系统安全 如何保证Kubernetes系统安全,我们可以从以下三大部分进行学习、研究和设计: 1.Apiserver 首当其冲的就是apiserver,他是系统安全三板斧中的第一道关卡,其作用为: 谁能进入我们的kubernetes集群,这个谁可以是客户端用户、应用程

apiserver源码分析——启动流程

前言 apiserver是k8s控制面的一个组件,在众多组件中唯一一个对接etcd,对外暴露http服务的形式为k8s中各种资源提供增删改查等服务。它是RESTful风格,每个资源的URI都会形如 /apis/{apiGroup}/{version}/namsspaces/{ns-name}/{resource-kind}/{resource-name} 或 /apis/{apiGroup}/{

win节点pod无法连接到apiserver的svc

win节点pod无法连接到apiserver的svc 1. 错误现象 pod无法连接api-server flannel 日志有问题无法连接  2. 问题原因及解决方法 问题原因 win节点中有两个网卡,kubelet在往etcd写nodeIP的时候选择的不是flannel的那张网卡,选择的那张网卡不是k8s的业务网卡,kube-proxy做地

HAproxy负载Kubernetes Apiserver

不多说,上配置 global log 127.0.0.1 local2 chroot /var/lib/haproxy pidfile /var/run/haproxy.pid maxconn 6000 user haproxy group haproxy daemon stats socket /var/lib/haproxy/stats #---------------

https://mp.weixin.qq.com/s/ZBsZHQtAz_vKS8fwvHKB3g图文分析Kubernetes认证、授权和准入控制

序言:Kubernetes 为我们提供了多种而且复杂的认证和授权机制,绝大多数情况下,都可以完全满足多种场景下颗粒度很细的访问权限控制。这篇文章将会给大家介绍Kubernetes中的认证和授权机制,并通过相关的例子来概述 kubeconfig配置文件的生成以及原理,然后也参杂了常见的证书问题,比如过期