K8S
Posted z-y-l
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了K8S相关的知识,希望对你有一定的参考价值。
Kubernets
链接:https://pan.baidu.com/s/19WP34Cdmh2DoMv5cJSqBEA
提取码:0tfp
云原生技术
开源系统,为了应用部署,扩缩容自动化
- 以服务为中心
- 自动化
k8s 以 docker 为基础
架构设计
镜像运行容器 ----> POD 里由一个或者多个容器,在一台机器,共享 IP (Pause 容器) --> RS ----> deployment 部署(自动创建副本集)
service (selector(app = login )) --> label 标识作用 给应用打标签 srvice 对外由 clusterIP(客户端通过此访问到 service)
master ----> worker ETCD(https://www.jianshu.com/p/f68028682192)作为存储的主键
- ApiServer 接受客户端的请求
- Scheduler 搜集每个 worker 详细信息
- ControllerManager 管理 K8S 对象
- worker --> Kubelet 维护POD 生存周期 --> docker
认证和授权
认证
- 集群的关键点 ApiServer,识别客户端身份
- 两个服务的连接是不安全的
- 加密算法 ---> https://blog.csdn.net/weixin_44038167/article/details/104511957
- serverA 拿取serverB 公钥加密密钥 --- > serverB 密钥查看密钥 ----> serverA 密钥加密信息 ----> serverB 密钥解密信息 SSL/ TLS
- CA 颁发证书
- 客户端证书认证 kubectl 访问 ApiServer(与组件进行联系)
- TLS 协议 双向认证
- kubectl 拥有 自定义 CA BearerToken
- ServiceAccount 内部验证机制 POD (namespace ,token, CA)
授权
- RBAC role base access control
- 权限系统 ----> 用户- 角色-权限
- 两种user,普通用户和 ServiceAccount
- 权限 资源访问和行为控制
- Role name/resource/verbs
- RoleBinding 角色绑定 -----> namespace 只拥有当前命名空间下的权限
- CluserRoleBinding 可以定义集群范围内资源
AdmisionControl
- always admit 总是允许
- always deny 总是拒绝
- ServiceAccount
- DenyEscolatingExec 限制登录到容器执行命令
集群搭建方案
Kubeadm/ Binary
环境搭建
以上是关于K8S的主要内容,如果未能解决你的问题,请参考以下文章