kubenetes restful api

说明:
官方API:
http://kubernetes.io/kubernetes/third_party/swagger-ui/#/

注意:
k8s的api是严格按照restful风格的,即同样的
/api/v1/namespaces/{namespace}/pods
如果是POST则是创建pod,如果是DELETE则是删除pod

本文摘抄一些我们日常使用需要的api,以提供给agent调用


一.pod操作

1.创建一个pod

POST  /api/v1/namespaces/{namespace}/pods  //此处我们的namespaces是default

类型:application/json
参数:参考官方

2.删除一个pod

DELETE  /api/v1/namespaces/{namespace}/pods

3.查看pod列表

GET  /api/v1/namespaces/{namespace}/pods

4.查看指定名称的pod

GET  /api/v1/namespaces/{namespace}/pods/{name}

二.rc操作:Replicationcontroller

1.创建一个rc

POST  /api/v1/namespaces/{namespace}/replicationcontrollers 

2.删除一个rc

DELETE /api/v1/namespaces/{namespace}/replicationcontrollers/{name}

3.获取rc列表

GET /api/v1/namespaces/{namespace}/replicationcontrollers

4.获取指定名称的rc

GET /api/v1/namespaces/{namespace}/replicationcontrollers/{name}

5.替换指定的rc

PUT /api/v1/namespaces/{namespace}/replicationcontrollers/{name}

三.Service操作

1.创建一个新的service

POST /api/v1/namespaces/{namespace}/services

2.删除一个指定service

DELETE /api/v1/namespaces/{namespace}/services/{name}

3.获取一个指定service的信息

GET /api/v1/namespaces/{namespace}/services/{name}

4.显示所有service列表及信息

GET /api/v1/namespaces/{namespace}/services

四.Node操作(节点/minion)

1.创建一个新的node

POST /api/v1/nodes

2.获取所有k8s的node列表

GET /api/v1/nodes

3.删除指定node

DELETE /api/v1/nodes/{name}

4.获取指定node信息

GET /api/v1/nodes/{name}

不难发现,一旦统一风格后,restful api就显得非常清楚明了,路径一致,只需要改变请求方法即可.


五.实践:通过http请求删除一个pod

具体执行一个请求,比如在10.1.1.1上部署了整个k8s环境,并且配置了api server端口为8080。
此时机子上面跑了一个pod:test-pod。
我们测试一下通过http请求删除pod,而不是kubectl delete pod name.

请求path:

10.1.1.1:8080/api/v1/namespaces/default/pods

请求方法:

http delete

测试代码如下:

待续.


直接http get显示pods信息

http://10.1.1.1:8080/api/v1/namespaces/default/pods

这里写图片描述

确实列出了所有pod的信息.验证了restful api


其他资料:
Kubernetes权威指南之Kubernetes API详解
http://www.infoq.com/cn/articles/Kubernetes-API?amp&amp&amp

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值