Kubernetes (K8S) 学习笔记

Kubernetes 以下简称 k8s,是类似hadoop中yarn的存在,对大规模集群进行创建、删除、升级、扩容的一层组件。

微软Azure官方的教程:链接: https://pan.baidu.com/s/1AM6eq80Y72TuVF1yFXS5CQ 提取码: j363

 

基本元素:

1. pod包含一个或多个container, 一个完整的app可以有多个pod

2. deployment包含pod部署的描述,用于pod内容的升级或扩容

3. service将pod映射为对外提供服务的service

4. secret 加密的信息. secret是键值对,值必须是base64编码

5. YAML定义k8s中元素的json格式的文件。

6. node是集群除了master以外的节点,类似hadoop里的slave节点

 

调度机制 k8s scheduler:

这个组件来决定一个pod会被具体运行在哪台底层的VM上。决定的条件分成硬性条件和软性条件。优先满足硬性条件。

 

网络:

参考:

https://blog.csdn.net/qq_21187515/article/details/101363521 

https://blog.csdn.net/qq_21187515/article/details/101363521

https://blog.csdn.net/M2l0ZgSsVc7r69eFdTj/article/details/79988685

clusterIP:service在cluster内部的IP

port:service暴露在clusterIP上的port

targetPort:代码在容器层面监听的port

nodePort:VM层面对外的端口(每个Service都会在Node节点上开通一个端口)

loadbalance模式:标准的对外监听的模式,比较复杂,另起一篇单独讲述。

 

容器:

k8s的容器中的操作系统一般使用apline linux。容器的image可以发布到docker或者云的容器比如Azure ACR。

 

常用命令:

kubectl cluster-info

kubectl get nodes
kubectl get pods
kubectl get deployment
kubectl get svc

 

 

posted @ 2020-02-05 23:21  爱知菜  阅读(31)  评论(0编辑  收藏  举报