kubernetes api介绍

作用: 将各种资源对象的数据都通过该api接口被提交到后端的持久化存储etcd中;

一个api的顶层元素由kind丶apiVersion丶metadata丶spec和status这5部分组成

1.kind

  1. 有三大类别: 对象(object)丶列表(list)丶简单类别(simple

2.apiVersion

  1. 表示API的版本号, 当前版本默认只支持v1

3.metadata : 资源对象的元数据定义,

  1. kubernetes中的每个资源对象都必须包含3Metadata
  2. namespace 对象所属的命名空间
  3. name: 对象的名称
  4. uid: 系统为每个对象都生成的唯一id
  5. 其它重要的元数据
  6. labels: 标签
  7. annotations: 用户可定义的注解
  8. resourceVersion: 用于识别资源内部版本号的字符串
  9. creationTimestamp: 系统记录创建对象时的时间戳
  10. deletionTimestamp: 系统记录删除对象时的时间戳
  11. selfLink: 通过api访问资源自身的URL

4.spec: 用户对需要管理的对象进行详细描述的主体部分都在spec, 他会被kubernetes持久化到etcd中保存, 系统通过spec的描述来创建或更新对象, 以达到用户期望的对象运行状态

5.status: 用于记录对象在系统中的当前状态信息

访问api

1.本地监听

  1. kubectl proxy
  2. curl http://127.0.0.1:8001/api



2.网络监听

  1. kubectl proxy --address='192.168.1.52' --accept-hosts='^*$' --port=8001
  2. 启动kubectl proxy,使用网卡IP,从其他机器访问, --accept-hosts='^*$' 表示接受所有源IP,否则会显示不被授权
  3. curl http://192.168.1.52:8001/api/

3.直接访问

  1. kubectl create sa test
  2. kubectl create clusterrolebinding sa-test-cluster-admin --clusterrole='cluster-admin' --serviceaccount=default:test
  3. TOKEN=$(kubectl get secrets -o jsonpath="{.items[?(@.metadata.annotations['kubernetes\.io/service-account\.name']=='test')].data.token}"|base64 -d)
  4. curl --header "Authorization: Bearer $TOKEN" --insecure -X GET https://192.168.1.52:6443/api/v1/nodes

4.通过postman访问



注意: 使用sa需要关闭ssl验证

参考文档: https://www.jianshu.com/p/0a5976ce1ce4

访问kubernetes api的更多相关文章

  1. 利用curl命令访问Kubernetes API server

    kubectl 通过访问 Kubernetes API 来执行命令.我们也可以通过对应的TLS key, 使用curl 或是 golang client做同样的事. API 请求必须使用 JSON 格 ...

  2. 在kubernetes 集群内访问k8s API服务

    所有的 kubernetes 集群中账户分为两类,Kubernetes 管理的 serviceaccount(服务账户) 和 useraccount(用户账户).基于角色的访问控制(“RBAC”)使用 ...

  3. Kubernetes学习笔记(七):访问Pod元数据与Kubernetes API

    Downward API 我们已经了解到,使用ConfigMap和Secret向应用传递配置数据,这对于运行前预设的数据是可行的.但是对于那些不能预先知道的,就需要使用Downward API. Do ...

  4. 在Openstack上创建并访问Kubernetes集群

    第一部分:创建集群 在Openstack部署Kubernetes集群运行Nginx容器的步骤,其中包括: 利用Murano部署Kubernetes集群 配置Openstack的安全性使Kubernet ...

  5. Gravitational Teleport 开源的通过ssh && kubernetes api 管理linux 服务器集群的网关

    Gravitational Teleport 是一个开源的通过ssh && kubernetes api 管理linux 服务器集群的网关 支持以下功能: 基于证书的身份认证 ssh ...

  6. kubernetes API Server 权限管理实践

    API Server权限控制方式介绍 API Server权限控制分为三种:Authentication(身份认证).Authorization(授权).AdmissionControl(准入控制). ...

  7. 资深专家深度剖析Kubernetes API Server第3章(共3章)

    在本系列的前两部分中我们介绍了API Server的总体流程,以及API对象如何存储到etcd中.在本文中我们将探讨如何扩展API资源. 在一开始的时候,扩展API资源的唯一方法是扩展相关API源代码 ...

  8. 资深专家深度剖析Kubernetes API Server第2章(共3章)

    欢迎来到深入学习Kubernetes API Server的系列文章的第二部分.在上一部分中我们对APIserver总体,相关术语及request请求流进行探讨说明.在本部分文章中,我们主要聚焦于探究 ...

  9. 资深专家深度剖析Kubernetes API Server第1章(共3章)

    欢迎来到深入学习Kubernetes API Server的系列文章,在本系列文章中我们将深入的探究Kubernetes API Server的相关实现.如果你对Kubernetes的内部实现机制比较 ...

随机推荐

  1. 给php安装openssl扩展

    转自 http://blog.csdn.net/sinat_23678421/article/details/42217971

  2. 第九组 通信3班 063 自反ACL

    一.拓扑图 R4为外网,R2和R3为内网. 二.地址表 Device Interface IP address R1 F 0/0 10.1.63.1 F 0/1 14.1.63.1 R2 F 0/0 ...

  3. cocos2dx-android-添加64位编译

    Application.mk: APP_ABI := armeabi arm64-v8a build.gradle: android{ ndk{ abiFilters "armeabi&qu ...

  4. 深度学习之目标检测:非极大值抑制源码解析(nms)

    目标检测:nms源码解析 原理:选定一个阈值,例如为0.3,然后将所有3个窗口(bounding box)按照得分由高到低排序.选中得分最高的窗口,遍历计算剩余的2窗口与该窗口的IOU,如果IOU大于 ...

  5. 【并行计算-CUDA开发】CUDA ---- Warp解析

    Warp 逻辑上,所有thread是并行的,但是,从硬件的角度来说,实际上并不是所有的thread能够在同一时刻执行,接下来我们将解释有关warp的一些本质. Warps and Thread Blo ...

  6. mac编译openJDK8

    买了<深入理解Java虚拟机> 周志明著这本书一直没有看,我们的程序都用JVM在跑,所以学习java必须掌握JVM,才能理解我们对象到底干嘛了.   1.为什么要编译JDK 想要一探JDK ...

  7. 如何限制nginx的响应速率

    参考官方地址:http://nginx.org/en/docs/http/ngx_http_core_module.html#variables 用$limit_rate内置的变量可以限制nginx的 ...

  8. luoguP2634聪聪可可(点分治)

    题目链接:https://www.luogu.org/problem/P2634 题意:给一颗树,求距离的模3为0的点对数量,注意(1,1)算一个点对,(1,2)和(2,1)算两个点对. 思路:和点分 ...

  9. Elasticsearch5.x 引擎健康情况

    查看引擎健康情况 [root@w]# curl -XGET "http://localhost:9200/_cat/health?v" epoch timestamp cluste ...

  10. Thinkphp5 自定义上传文件名

    这几天在做tp5的上传文件模块,项目需求是要把文件名在上传之后修改为 用户名+原文件名的组合形式,在网上找了一会儿发现好像没有类似的文章...只好自己去研究研究了. 之前查看过看云上面的官方手册,文件 ...