16 容器化和自动化运维
Docker
入门学习
- Docker Overview,Docker 的官方介绍
- Katacoda Docker Playground 或 Play With Docker,Web 在线的 Playground
- Learn Docker 教程指导安装 Docker 的环境
- Docker Curriculum 超详细的教程玩一下 Docker
- Docker Documentation 官方文档
了解一下 Docker 的底层技术细节
- Docker 基础技术:Linux Namespace(上)
- Docker 基础技术:Linux Namespace(下)
- Docker 基础技术:Cgroup
- Docker 基础技术:AUFS
- Docker 基础技术:DeviceMapper
与 Docker 网络有关的文章可以阅读及实践
-
A container networking overview
-
Docker networking 101 - User defined networks
-
Understanding CNI (Container Networking Interface)
-
Using CNI with Docker
-
Calico 、Flannel 和 Weave, Docker 的几种网络解决方案
-
netshoot,用来诊断 Docker 网络问题的工具集
容器网络解决方案的性能对比
- Battlefield: Calico, Flannel, Weave and Docker Overlay Network
- Comparison of Networking Solutions for Kubernetes
- Docker Overlay Networks: Performance analysis in high-latency enviroments
Docker 的性能分析
- IBM Research Report: An Updated Performance Comparison of Virtual Machines and Linux Containers
- An Introduction to Docker and Analysis of its Performance
存储相关
- Storage Concepts in Docker: Network and Cloud Storage
- Storage Concepts in Docker: Persistent Storage
- Storage Concepts in Docker: Shared Storage and the VOLUME directive
运维相关
- Docker Monitoring with the ELK Stack: A Step-by-Step Guide
Valuable Docker Links, 收集并罗列了一系列非常不错的 Docker 文章
最佳实践
- Best Practices for Dockerfile ,Docker 官方文档里的 Dockerfile 的最佳实践
- Docker Best Practices ,存在于各个地方的使用 Docker 的建议和实践
- Container Best Practices ,一个介绍容器化应用程序的架构、创建和管理的协作型文档项目
- Eight Docker Development Patterns ,八个 Docker 的开发模式:共享基础容器、共享同一个卷的多个开发容器、开发工具专用容器、测试环境容器、编译构建容器、防手误的安装容器、默认服务容器、胶黏容器
Kubernetes
Kubernetes 是 Google 开源的容器集群管理系统,是 Google 多年大规模容器管理技术 Borg 的开源版本
主要功能
- 基于容器的应用部署、维护和滚动升级;
- 负载均衡和服务发现;
- 跨机器和跨地区的集群调度;
- 自动伸缩;
- 无状态服务和有状态服务;
- 广泛的 Volume 支持;
- 插件机制保证扩展性。
入门学习
- Borg, Omega, and Kubernetes ,Google 从这三个容器管理系统中得到的经验教训
- 《Kubernetes Handbook》,这本书记录了作者从零开始学习和使用 Kubernetes 的心路历程,着重于经验分享和总结,同时也会有相关的概念解析。希望能够帮助你少踩坑,少走弯路,还会指引你关注 kubernetes 生态周边,如微服务构建、DevOps、大数据应用、Service Mesh、Cloud Native 等领域
- 《Kubernetes 指南》,整理平时在开发和使用 Kubernetes 时的参考指南和实践总结,一个系统化的参考指南以方便查阅
- 《Kubernetes in Action》,一本很完美的教科书
- Kubernetes.io,官方网站,有全面的文档 ,也包括一个很不错的 官方教程 。
交互式教程
- Katacoda
- Kubernetes Bootcamp
推荐文章
- Kubernetes tips & tricks
- Achieving CI/CD with Kubernetes
- How to Set Up Scalable Jenkins on Top of a Kubernetes Cluster
- 10 Most Common Reasons Kubernetes Deployments Fail Part I 和 Part II
- How to Monitor Kubernetes
- Logging in Kubernetes with Fluentd and Elasticsearch
- Kubernetes Monitoring: Best Practices, Methods, and Existing Solutions
网络相关
- Kubernetes 101 - Networking
- Kubernetes networking 101 - Pods
- Kubernetes networking 101 - Services
- Kubernetes networking 101 - (Basic) External access into the cluster
- Kubernetes Networking 101 - Ingress resources
- Getting started with Calico on Kubernetes
CI/CD 相关
- Automated Image Builds with Jenkins, Packer, and Kubernetes
- Jenkins setups for Kubernetes and Docker Workflow
- Lab: Build a Continuous Deployment Pipeline with Jenkins and Kubernetes
最佳实践
Kubernetes Best Practices by Sachin Arote ,AWS 工程师总结的最佳实践
Kubernetes Best Practices by Sandeep Dinesh ,Google 云平台工程师总结的最佳实践
Docker 和 Kubernetes 资源汇总
- Awesome Docker
- Awesome Kubernetes
- The New Stack eBook Series ,非常完整和详实的 Docker 和 Kubernetes 生态圈的所有东西
- Book 01: The Docker Container Ecosystem
- Book 02: Applications & Microservices with Docker & Containers
- Book 03: Automation & Orchestration with Docker & Containers
- Book 04: Network, Security & Storage with Docker & Containers
- Book 05: Monitoring & Management with Docker & Containers
- Book 06: Use Cases for Kubernetes
- Book 07: State of the Kubernetes Ecosystem
- Book 08: Kubernetes Deployment & Security Patterns
- Book 09: CI/CD with Kubernetes
- Book 10: Kubernetes solutions Directory
- Book 11: Guid to Cloud-Native Microservices