經過本章節的學習,你能夠充分了解到一個https的kubernetes集羣中所需的證書及其做用,以及kubernetes語境內的api資源類型,最後我還補充了幾個基礎的GET命令,此時你能夠登陸到上一章節咱們使用kubeadm建立的集羣,進行一些查詢操做了。前端
k8s於生產環境運行時,我強烈建議你們運行在https的安全環境下,其證書可分爲如下三大類:node
root CA:nginx
etcd CA:git
front-proxy CA:github
你須要注意的是:
1) k8s集羣證書默認有效期是90天,你有2個辦法去調整(修改go源文件或者證書籤名請求生成時聲明,如何修改我後面章節會說)
2) 證書的過時時間,你能夠到/etc/kubernetes/pki目錄下,使用如下命令進行查看:docker
openssl x509 -in front-proxy-client.crt -noout -text |grep Not Not Before: Nov 28 09:07:02 2018 GMT Not After : Nov 25 09:07:03 2028 GMT openssl x509 -in apiserver.crt -noout -text |grep Not Not Before: Nov 28 09:07:04 2018 GMT Not After : Nov 25 09:07:04 2028 GMT
RESTfulAPI的核心組件是「資源(resource)」,不一樣類別的事物會被抽象會不一樣「類型(type)」的資源。
k8s中的資源也相似於對象式編程語言中的「類"(class),但它僅支持有限的方法,並且一般是標準的HTTP方法,例如:GET、PUT、POST和DELETE;此時,你應該能夠聯想到經常使用的基礎命令kubelet:編程
kubectl get pod kubectl delete node ...
你能夠經過api-versions命令查詢當前所支持的API版本:api
[root@k8s-etcd-mater01 cds-filesystem]# kubectl api-versions admissionregistration.k8s.io/v1beta1 apiextensions.k8s.io/v1beta1 apiregistration.k8s.io/v1 apiregistration.k8s.io/v1beta1 apps/v1 apps/v1beta1 apps/v1beta2 authentication.k8s.io/v1 authentication.k8s.io/v1beta1 authorization.k8s.io/v1 authorization.k8s.io/v1beta1 autoscaling/v1 autoscaling/v2beta1 autoscaling/v2beta2 batch/v1 batch/v1beta1 certificates.k8s.io/v1beta1 coordination.k8s.io/v1beta1 events.k8s.io/v1beta1 extensions/v1beta1 networking.k8s.io/v1 policy/v1beta1 rbac.authorization.k8s.io/v1 rbac.authorization.k8s.io/v1beta1 scheduling.k8s.io/v1beta1 storage.k8s.io/v1 storage.k8s.io/v1beta1 v1
如圖所示,Kubernetes系統把管理的絕大多數事物都抽象成了資源,它們分別表明着不一樣的事物類型,例如:Node、Service、Pod、Controller等等安全
獲取集羣資源列表: kubectl api-resources 獲取命名空間: kubectl get ns 建立deployment: kubectl create deployment ngx-new --image=nginx 查看service信息: kubectl describe svc ngx-new ...
本文原址位於個人Github,我會陸續將全部專題更新過來,其中包括docker、k8s、ceph、istio和prometheus,旨在分享雲原生中大而全的技術知識點和實操過程,若是對你有用,請follow、star個人github,這也是我更新、分享下去的動力,謝謝~bash