目录 01. 序言02. 云原生 Play with KubernetesKubernetes与云原生应用概览云原生应用之路——从Kubernetes到Cloud Native 03. 概念与原理 Kubernetes架构 Etcd解析开放接口 CRI - Container Runtime Interface(容器运行时接口)CNI - Container Network Interface(容器网络接口)CSI - Container Storage Interface(容器存储接口) 设计理念资源对象与基本概念解析 Pod Pod解析Init容器Pod安全策略Pod的生命周期Pod HookPod Preset NodeNamespaceServiceVolumePersistent Volume(持久化卷)DeploymentSecretStatefulSetDaemonSetServiceAccountReplicationController和ReplicaSetJobCronJobIngress Traefik Ingress Controller ConfigMap ConfigMap的热更新 Horizontal Pod Autoscaling 自定义指标HPA Label垃圾收集NetworkPolicyAnnotationAggregated API Server使用自定义资源扩展APIAPIServiceTaint和Toleration(污点和容忍)Pod中断与PDB(Pod中断预算) 04. 用户指南 用户指南资源对象配置 配置Pod的liveness和readiness探针配置Pod的Service AccountSecret配置管理namespace中的资源配额 命令使用 docker用户过度到kubectl命令行指南kubectl命令概览kubectl命令技巧大全使用etcdctl访问kubernetes数据 集群安全性管理 管理集群中的TLSkubelet的认证授权TLS bootstrap创建用户认证授权的kubeconfig文件RBAC——基于角色的访问控制IP伪装代理使用kubeconfig或token进行用户身份认证Kubernetes中的用户与身份认证授权 访问Kubernetes集群 访问集群使用kubeconfig文件配置跨集群认证通过端口转发访问集群中的应用程序使用service访问群集中的应用程序从外部访问Kubernetes中的PodCabin - Kubernetes手机客户端Kubernetic - Kubernetes桌面客户端Kubernator - 更底层的Kubernetes UI 在Kubernetes中开发部署应用 适用于kubernetes的应用开发部署流程迁移传统应用到Kubernetes中——以Hadoop YARN为例使用StatefulSet部署用状态应用 05. 最佳实践 最佳实践概览在CentOS上部署Kubernetes集群 创建TLS证书和秘钥创建kubeconfig文件创建高可用etcd集群安装kubectl命令行工具部署master节点安装flannel网络插件部署node节点安装kubedns插件安装dashboard插件安装heapster插件安装EFK插件 服务发现与负载均衡 安装Traefik ingress分布式负载测试网络和集群性能测试边缘节点配置安装Nginx ingress配置内置DNS(kube-dns) 运维管理 服务滚动升级应用日志收集配置最佳实践集群及应用监控数据持久化问题管理容器的计算资源 存储管理 GlusterFS 使用GlusterFS做持久化存储在OpenShift中使用GlusterFS做持久化存储 CephFS 使用Ceph做持久化存储 OpenEBS 使用OpenEBS做持久化存储 集群与应用监控 Heapster 使用Heapster获取集群和对象的metric数据 Prometheus 使用Prometheus监控kubernetes集群 服务编排管理 使用Helm管理kubernetes应用构建私有Chart仓库 持续集成与发布 使用Jenkins进行持续集成与发布使用Drone进行持续集成与发布 更新与升级 手动升级Kubernetes集群升级dashboard 06. 领域应用 领域应用概览微服务架构 微服务中的服务发现 Service Mesh 服务网格 Istio 安装并试用Istio service mesh配置请求的路由规则安装和拓展Istio service mesh集成虚拟机 Linkerd Linkerd 使用指南 Conduit Condiut概览安装Conduit 大数据 Spark standalone on Kubernetes运行支持Kubernetes原生调度的Spark程序 Serverless架构 理解ServerlessFaaS-函数即服务 OpenFaaS快速入门指南 边缘计算 07. 开发指南 开发指南概览SIG和工作组开发环境搭建单元测试和集成测试client-go示例Operator社区贡献Minikube 08. 附录 附录说明Kubernetes中的应用故障排查Kubernetes相关资讯和情报链接Docker最佳实践使用技巧问题记录Kubernetes版本更新日志 Kubernetes1.7更新日志Kubernetes1.8更新日志Kubernetes1.9更新日志 Kubernetes及云原生年度总结及展望 Kubernetes与云原生2017年年终总结及2018年展望