`
m635674608
  • 浏览: 5052568 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

kubernetes 实用 api list

 
阅读更多

收集整理一些可能较常用的api,结合kubernetes的自动化系统 以及 监控可能会用到。

注:涉及到POST方法中的json为发送的数据体。


get node

curl -i -k -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -X GET https://10.10.5.103:6443/api/v1beta3/nodes

get namespace

curl -i -k -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -X GET https://10.10.5.103:6443/api/v1beta3/namespaces

create namespace

curl -i -k -X POST https://10.10.5.103:6443/api/v1beta3/namespaces -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -d "$(cat namespace-production.json)"

{
    "apiVersion": "v1",
    "kind": "Namespace",
    "metadata": {
        "labels": {
            "name": "production"
        },
        "name": "production"
    }
}

create a pod

curl -i -k -X POST https://10.10.5.103:6443/api/v1beta3/namespaces/development/pods -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -d "$(cat pod-8xxxxxxcom.json)
{
  "kind": "Pod",
  "apiVersion": "v1beta3",
  "metadata": {
    "name": "8xxxxxx",
    "labels": {
      "name": "8xxxxxx"
    }
  },
"spec":{
        "volumes":[
        {
                "name":"log-vol",
                "hostPath":{
                        "path":"/home/work/data/8_xxxxxx_com"
                }
        },
        {
                "name":"localtime",
                "hostPath":{
                        "path":"/etc/localtime"
                }
        }
        ],
            "containers":[
               {
                  "name":"8-xxxxxx-com",
                  "image":"docker-registry.xxxxxx.com:5000/xxxxxx/8_xxxxxx_com:20150612",
                  "ports":[
                     {
                        "name":"ssh-port",
                        "containerPort":22,
                        "protocol":"TCP"
                     },
                     {
                        "name":"http-port",
                        "containerPort":8008,
                        "protocol":"TCP"
                     }
                  ],
                  "volumeMounts":[
                          {
                                  "mountPath":"/home/work/var/nfs",
                                  "readOnly":false,
                                  "name":"log-vol"
                          },
                          {
                                  "mountPath":"/etc/localtime",
                                  "readOnly":true,
                                  "name":"localtime"
                          }
                  ],
                  "imagePullPolicy": "Always"
               }
            ]
         }
}

get a pod:

curl -i -k -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -X GET https://10.10.5.103:6443/api/v1beta3/pods
curl http://10.10.5.103:7080/api/v1beta3/namespaces/development/pods?labelSelector=name%3D8.xxxxxx.com

delete a pod:

curl  -X DELETE http://10.10.5.103:18080/api/v1beta3/namespaces/development/pods/8xxxxxx

create a replication controller:

curl -i -k -X POST https://10.10.5.103:6443/api/v1beta3/namespaces/development/replicationcontrollers -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -d "$(cat rc-8_xxxxxx_com.json)"
{
   "kind":"ReplicationController",
   "apiVersion":"v1beta3",
   "id":"8.xxxxxx.com",
   "metadata":{
      "name":"8.xxxxxx.com",
      "labels":{
         "name":"8.xxxxxx.com"
      }
   },
   "spec":{
      "replicas":3,
      "selector":{
         "name":"8.xxxxxx.com"
      },
      "template":{
         "metadata":{
            "labels":{
               "name":"8.xxxxxx.com"
            }
         },
         "spec":{
             "volumes":[
        {
                "name":"log-vol",
                "hostPath":{
                        "path":"/home/work/data/8_xxxxxx_com"
                }
        },
        {
                "name":"localtime",
                "hostPath":{
                        "path":"/etc/localtime"
                }
        }
        ],
            "containers":[
               {
                  "name":"8-xxxxxx-com",
                  "image":"docker-registry.xxxxxx.com:5000/xxxxxx/8_xxxxxx_com:20150612",
                  "ports":[
                     {
                        "name":"ssh-port",
                        "containerPort":22,
                        "protocol":"TCP"
                     },
                     {
                        "name":"http-port",
                        "containerPort":8008,
                        "protocol":"TCP"
                     }
                  ],
                  "volumeMounts":[
                          {
                                  "mountPath":"/home/work/var/nfs",
                                  "readOnly":false,
                                  "name":"log-vol"
                          },
                          {
                                  "mountPath":"/etc/localtime",
                                  "readOnly":true,
                                  "name":"localtime"
                          }
                  ],
                  "imagePullPolicy": "Always"
               }
            ]
         }
      }
   }
}

get a replication controller:

curl -i -k -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -X GET https://10.10.5.103:6443/api/v1beta3/namespaces/development/replicationcontrollers
curl -i -k -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -X GET https://10.10.5.103:6443/api/v1beta3/namespaces/development/replicationcontrollers/8.xxxxxx.com

delete a replication controller

curl -i -k -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -X DELETE https://10.10.5.103:6443/api/v1beta3/namespaces/development/replicationcontrollers/8.xxxxxx.com

注意:删除replicationcontroller,对应的pod并不会级联删除,需要在手动调用pod delete删除对应的pod(略不爽~)

create a service

curl -i -k -X POST https://10.10.5.103:6443/api/v1beta3/namespaces/development/services -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -d "$(cat svc-8xxxxxx.jso)"
{
    "kind":"Service",
    "apiVersion":"v1beta3",
    "metadata":{
        "name":"prometheus",
        "labels":{
            "name":"prometheus"
        }
    },
    "spec":{
        "ports": [
        {
            "port":8018,
            "targetPort":8008,
            "nodePort": 30061,
            "protocol":"TCP"
        }],
        "type":"NodePort",
        "selector":{
            "name":"8.xxxxxx.com"
        }
    }
}

get a service

curl -i -k -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -X GET https://10.10.5.103:6443/api/v1beta3/namespaces/development/services
curl -i -k -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -X GET https://10.10.5.103:6443/api/v1beta3/namespaces/development/services/prometheus

delete a service

 
curl -i -k -H 'Authorization: Bearer lalalalalllaSDDDSASDASF=' -X DELETE https://10.10.5.103:6443/api/v1beta3/namespaces/development/services/prometheus

https://kubernetes.io/docs/api-reference/v1/operations/

分享到:
评论

相关推荐

    clj-kubernetes-api:Clojure中的Kubernetes API客户端库

    kubernetes-api Kubernetes的Clojure客户端API库。 使用从正式派生的宏来生成函数。 codox文档可从 安装 将依赖项添加到您的project.clj 。 用法 首先,使用kubectl proxy --port=8080运行kubernetes代理。 每个...

    kubernetes client python文档

    ### Kubernetes Python 客户端 API 文档概览 Kubernetes Python 客户端库是用于与 Kubernetes 集群交互的官方 Python 库。本文档提供了该库的全面指南,包括安装方法、基本用法以及如何贡献代码等内容。 #### 标题...

    Windows API List_windows_WindowsAPI编程_windowsapilist_

    Windows API List_windows_WindowsAPI编程_windowsapilist_这个主题主要涵盖了Windows API的详细列表和其用法说明,对于进行Windows平台开发的程序员来说,是一份极其重要的参考资料。 Windows API包含了数千个函数...

    ASP.NET Web API 对list增删改查的实例 REST

    标题提到的"ASP.NET Web API对list增删改查的实例",意味着我们将讨论如何使用Web API处理列表数据的常见操作。在.NET开发环境中,VS12(Visual Studio 2012)是常用的一款IDE,它支持创建和调试ASP.NET Web API项目...

    KubernetesAPIJavaClient

    在Kubernetes生态系统中,Kubernetes API Java Client是一个关键组件,它允许Java开发者通过编程方式与Kubernetes集群进行交互。这个库使得操作Kubernetes资源,如Pods、Services、Deployments等,变得更加简单和...

    C# MVC api-接收List实体类参数

    C# MVC ajax调用api接口,api接口以List的形式接收参数,以实现多条记录的操作,以VS2013打开,ASP.NET MVC 4,下载解压rar-demo直接打开运行即可。压缩文件里也包含了“IHttpActionResult不识别解决办法”的文档以...

    kubernetes 1.10.5 Ubuntu离线安装包

    $ sudo touch /etc/apt/sources.list.d/kubernetes.list $ echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list $ sudo apt-get update

    谷歌开源的容器集群管理系统Kubernetes.zip

    4.2. Kubelet图3-3 Kubernetes详细构件 根据上图3-3可知Kubelet是Kubernetes集群中每个Minion和Master API Server的连接点,Kubelet运行在每个Minion上,是Master API Server和Minion之间的桥梁,接收Master API ...

    kubernetes 的官方 Python 客户端库.zip

    Kubernetes Python clientkubernetes API的 Python 客户端。...kube_config()v1 = client.CoreV1Api()print("Listing pods with their IPs:")ret = v1.list_pod_for_all_namespaces(watch=False)for i in ret.items: p

    基于 AList api 开发的 Android 和 iOS 客户端.zip

    标题 "基于 AList API 开发的 Android 和 iOS 客户端.zip" 提示我们这是一个包含 Android 和 iOS 应用程序源代码的压缩包,这些应用程序是利用 AList API 构建的。AList API 可能是一个提供数据访问、列表管理或者...

    VC代码 ListCtrl (实用代码源)

    VC代码 ListCtrl (实用代码源)VC代码 ListCtrl (实用代码源)VC代码 ListCtrl (实用代码源)VC代码 ListCtrl (实用代码源)VC代码 ListCtrl (实用代码源)VC代码 ListCtrl (实用代码源)VC代码 ListCtrl (实用代码源)VC...

    go-使用go开发的Kubernetes客户端.zip

    总的来说,使用Go语言开发Kubernetes客户端能够充分利用Go的性能和并发特性,同时,官方提供的client-go库极大地简化了与Kubernetes API的交互。通过深入学习和实践,你可以构建出强大的工具,实现对Kubernetes集群...

    kubernetes-client.zip

    Kubernetes客户端库是与Kubernetes API进行交互的重要工具,允许开发者在各种编程语言中轻松地编写与Kubernetes集群通信的应用程序。本文将深入探讨名为"kubernetes-client"的库,以及如何利用其主要功能来增强对...

    [API]新浪股票api调用

    新浪股票API是一个非常实用的接口,允许开发者获取实时的股票市场数据,为金融应用、数据分析或个人投资决策提供便利。本文将深入探讨如何使用JavaScript进行新浪股票API的调用,并通过分析“sinaStockApi”这个...

    声明式 API 是如何实现的1

    声明式API是Kubernetes的核心设计理念,它允许用户无需关心如何操作集群,只需声明他们期望的系统状态,系统会自动进行调整以达到这个状态。这种设计极大地简化了集群管理,提高了系统的自动化程度。 命令式API是一...

    js_api_list.js

    基于微信H5公众号网页开发,微信内部提供的接口文档整理的所用到的接口大全。基于微信H5公众号网页开发,微信内部提供的接口文档整理的所用到的接口大全。基于微信H5公众号网页开发,微信内部提供的接口文档整理的所...

    apilist:Javascript API清单

    本篇文章将深入探讨JavaScript API的各个方面,并结合"apilist"这一主题,详细解析JavaScript API的基本概念、常见使用场景以及一些重要的API。 1. **JavaScript API基础** JavaScript API是一组预定义的函数、...

    Kubernetes-learn:Kubernetes学习记录

    "list"和"node"这两个关键词可能指的是Kubernetes集群中的节点管理和资源清单。在Kubernetes中,节点(Node)是集群的基本工作单元,它们是运行Pods(Kubernetes的应用运行实例)的实际机器,可以是物理服务器或虚拟机...

    Alist安装包+快速启动-停止脚本

    标题中的"Alist安装包+快速启动-停止脚本"表明这个压缩包包含了Alist的安装程序以及用于快速启动和停止Alist服务的脚本,这对于用户的日常使用和维护来说非常实用。 首先,我们需要了解Alist的基本工作原理。Alist...

Global site tag (gtag.js) - Google Analytics