携程的容器化交付实践

cnutcon

2018/12/08 发布于 技术 分类

文字内容
1.    
2. • PaaS  • PaaS   •   • Mesos  K8s 
3. PaaS 
4. Overview % / 0 +
5.  Milestone             
6. 
7. PaaS 
8. 
9.  + + +
10. 
11. 
12.   FAT  UAT PRO + JaCoCo + BadSQL + AutoTag
13.    FROM scratch LABEL name="CentOS Base Image" \ vendor="CentOS" \ license="GPLv2" \ build-date="20171128" ADD centos-7-docker.tar.xz CMD ["/bin/bash"]  : 12   : 5000+ … RUN copy jacoco.jar && bash jacocoagent.sh
14.       
15.   •   • tomcat catanila gc access.log … • stdout stderr •  Web Console • mount  + filebeat •  • logrotate • xfs project quota Log Viewer
16.   • Hickwall ( ) • Hickwall server -> kubelet API • kubelet API • cadvisor: /stats/xxx,  • OOM • docker: cgroup notification
17.   
18. 
19. 
20. Harbor  • HA Solution • One region One cluster
21. Harbor  Cross-IDC Image Sync 1. Push image to harbor 2. Populate event to UI via Webhook 3. Retrieve slave info from Fedoro 4. Commit syncing job to Job services 5. Sync image to slaves Success Rate: 99.7% Total Image: 3500 / day SLA: < 20s
22.  : 5% : 2s -> 14s
23.  •  •  •  •   • 
24. Mesos  K8s
25.            
26.  cont. I • • • • I • •
27. K8s  • • • •C • • /D Stateless on StatefulSet
28.  Mesos  cluster  K8s   Mesos K8s  group  cluster
29. K8s-App   "$%- $   Set  Spec   AzSet StatefulSet  K8s  Mesos !  Set )$ Spec  $  AZ '&$+# * IDC ,(
30. #$ • %' IP  • & # •  '  • " ! 
31.  • AZMesosK8S •  stackstorm  pipeline o   < 10min o   Mesos
32. What’s Next         
33. 
34. 
35. 
36. 
37.