Open wittyResry opened 1 year ago
1、容器技术 docker * 为什么会有docker?早起的虚拟化技术VM hypervisor,资源占用个大,用起来不方便 * 轻量:docker做虚拟化做隔离。 Host OS -> Docker -> Container, 部署和开发快 * 镜像:docker容器的模板、镜像仓库、容器、Docker client(docker cli)与docker交互的客户端、docker host:宿主机。 * Docker Engine(docker deamon): C-S server的服务端 * 本地仓库,push, pull,拉起容器 * docker run -> docker deamon -> container d -> shim runc * Docker镜像: 可执行的包 + Dockerfile * Dockerfile是说明书,告诉系统怎么执行这个包。 * 系统类:alpine:linux最核心的 * 语言类:java openjdk python node * 应用类的 RUN:命令+入口+用什么跑起来。 ADD:构建 COPY:拷贝 LABEL: ENV: WORKIR: EXPOSE CMD docker不具备容器生命周期管理的功能?直接搞,要执行多个docker run等命令,打通网络 2、容器调度 kubernetes 基于docker管理,解决容器管理问题,生命周期管理。Control plain api-server(rest接口)通过api-server进行交互 c-m管理资源 apply -f命令,必须启动对的controller c-c-m:SLB打通,一定要和云打通。ACK是支持的,ON ACK的能力。master能否复用?的问题 worker上:kubelet(负责拉起容器)和kube-proxy(网络)。 namespace隔离是什么维度? Pod:运行时 Service:网络 基于声明资源的方式进行部署化 Node IP:宿主机IP Pod IP:要通过kubeproxy来进行互通 Cluster IP:iptable serviceI,service ip。 kubectl -> kubelet -> apiserver -> etcd 3、辅助K8S做应用部署 helm