课程内容
- docker容器技术(4)
- k8s核心原理与关键技术(8)
- 微服务技术原理与治理(4)
- 容器监控与分析(4)
- 云原生边缘计算技术(4)
- IBM讲座-混合云架构(4)
- 云原生应用实践与案例分析(4)
滴滴的服务器架构7天7夜完成重写故事
- 为什么有云计算?解决需求和算力矛盾
三种云计算服务:laaS Paas Saas
云计算分类:私有云,混合云,行业云…
为什么会有混合云:
例子:12306早期订票系统:关系型数据库存储余票信息,每次扣除一张票会消除相对一段路程的余票,行列计算导致崩溃。
读写数据库分开是处理并发行的一种手法,但是导致经常最后几张票买不到的现象。
docker相较于虚拟机优势:
虚拟机会翻译一套指令,将gustOS的指令翻译到宿主操作系统;
并且相比docker,传统的虚拟机从应用的底层链路更长。
没有硬件虚拟化,公用主机的资源。
docker缺点:宿主的操作系统决定了docker的运行环境,一般不支持windows,
容器三大阵营:Kubernetes,Docker Swarm和Apache Mesos
Docker
namesapce的6种隔离:
- UTS:
- IPC:
- PID:进程号,PID为1的为初始化进程,为了处理进程挂掉后子进程资源回收的问题;容器里面会有个问题,他们之间会共享操作系统内核,docker倾向于一个容器只跑一个进程,多个进程就需要多个容器,然后使用pod进行多个容器之间管理。PID init管理,内核对其给予一个特权,使其不至于被误杀。
- Network:实习网络资源的隔离,多种方式网段,协议等等
- Mount:通过隔离文件系统挂载点实现文件隔离。
- User:主要隔离安全相关的标识符和属性,比如,用户ID,用户组ID。
cgroups作用:
- 资源限制:限制任务的资源总额
- 优先级分配:通过CPU时间片语磁盘IO大小,控制任务执行优先级
cgroups相关术语:
- task: 任务表示系统的一个进程或者线程
cgroups组织结构与基本原则
cgroups
cgroups的本质是给任务挂上钩子(hook),涉及到资源的使用时,会挂上钩子。
Docker架构
Dockerfile
- Dockerfile LABEL:可以添加一些限制
- Dockerfile ENV:
- Dockerfile RUN:
- Run apt-get update && apt-get install -y
- Dockerfile COPY and ADD
- Dockerfile EXPOSE
- EXPOSE [/]
docker最佳实践