上篇文章主要讲述如何在centos7上利用kubeadm搭建一个最新的kubernetes集群,也记录了一些踩过的坑。在kubernetes的master节点上,我们可以利用kubectl与集群进行交互,比如对pod,service或者deployment进行增删改查等等。但是很多时候,我们可能需要从集群外的服务器上对集群进行一些操作,这种需求该如何实现呢?通过调用kubernetes本身提供的HTTP Restful API可以实现我们的这个需求。下面我们将具体阐述,如何从集群外部,通过调用kubernetes的HTTP Restful API进行进群的控制。
API Server
首先,我们了解一下kubernetes上的API Server。kubernetes集群分为master和普通node,master上跑了kube-apiserver,kube-controller-manager和kube-scheduler三大核心进程,而kube-apiserver更是整个集群的核心。它提供了kubernetes各类资源对象(如Pod、RC、Service等)的增删改查及Watch等HTTP Rest接口,成为集群内各个功能模块之间数据交互和通信的中心枢纽,是整个系统的数据总线和数据中心。从下面的kubernetes结构图,我们可以看到API Server的核心作用(参考自:Kubernetes权威指南第二版)
API Server使用
默认情况下,Kubernetes API Server提供HTTP的两个端口:
1. 本地主机端口</