摘要: 阅读目录 楔子 初识递归 再谈递归 递归函数与三级菜单 递归函数与二分查找算法 楔子 在讲今天的内容之前,我们先来讲一个故事,讲的什么呢?从前有座山,山里有座庙,庙里有个老和尚讲故事,讲的什么呢?从前有座山,山里有座庙,庙里有个老和尚讲故事,讲的什么呢?从前有座山,山里有座庙,庙里有个老和尚讲故事, 阅读全文
posted @ 2019-06-25 16:27 TwoB 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 本节详细分析两个 k8s 自己的 DaemonSet:kube-flannel-ds 和 kube-proxy 。 kube-flannel-ds 下面我们通过分析 kube-flannel-ds 来学习 DaemonSet。 还记得之前是如何部署 flannel 网络的吗?我们执行了如下两个命令: 阅读全文
posted @ 2019-06-25 15:51 TwoB 阅读(1114) 评论(0) 推荐(0) 编辑
摘要: Deployment 部署的副本 Pod 会分布在各个 Node 上,每个 Node 都可能运行好几个副本。DaemonSet 的不同之处在于:每个 Node 上最多只能运行一个副本。 DaemonSet 的典型应用场景有: 在集群的每个节点上运行存储 Daemon,比如 glusterd 或 ce 阅读全文
posted @ 2019-06-25 15:36 TwoB 阅读(1060) 评论(0) 推荐(0) 编辑
摘要: 默认配置下,Scheduler 会将 Pod 调度到所有可用的 Node。不过有些情况我们希望将 Pod 部署到指定的 Node,比如将有大量磁盘 I/O 的 Pod 部署到配置了 SSD 的 Node;或者 Pod 需要 GPU,需要运行在配置了 GPU 的节点上。 Kubernetes 是通过 阅读全文
posted @ 2019-06-25 15:30 TwoB 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 上一节我们有 3 个 nginx 副本分别运行在 k8s-node1 和 k8s-node2 上。现在模拟 k8s-node2 故障,关闭该节点。 等待一段时间,Kubernetes 会检查到 k8s-node2 不可用,将 k8s-node2 上的 Pod 标记为 Unknown 状态,并在 k8 阅读全文
posted @ 2019-06-25 15:15 TwoB 阅读(401) 评论(0) 推荐(0) 编辑
摘要: 伸缩(Scale Up/Down)是指在线增加或减少 Pod 的副本数。Deployment nginx-deployment 初始是两个副本。 k8s-node1 和 k8s-node2 上各跑了一个副本。现在修改 nginx.yml,将副本改成 5 个。 再次执行 kubectl apply: 阅读全文
posted @ 2019-06-25 15:11 TwoB 阅读(492) 评论(0) 推荐(0) 编辑
摘要: 既然要用 YAML 配置文件部署应用,现在就很有必要了解一下 Deployment 的配置格式,其他 Controller(比如 DaemonSet)非常类似。 还是以 nginx-deployment 为例,配置文件如下图所示: ① apiVersion 是当前配置格式的版本。② kind 是要创 阅读全文
posted @ 2019-06-25 15:08 TwoB 阅读(3500) 评论(0) 推荐(0) 编辑
摘要: 命令 vs 配置文件 Kubernetes 支持两种方式创建资源: 1. 用 kubectl 命令直接创建,比如: 在命令行中通过参数指定资源的属性。 2. 通过配置文件和 kubectl apply 创建,要完成前面同样的工作,可执行命令: nginx.yml 的内容为: 资源的属性写在配置文件中 阅读全文
posted @ 2019-06-25 14:58 TwoB 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 从本章开始,我们将通过实践深入学习 Kubernetes 的各种特性。作为容器编排引擎,最重要也是最基本的功能当然是运行容器化应用,这就是本章的内容。 Deployment 前面我们已经了解到,Kubernetes 通过各种 Controller 来管理 Pod 的生命周期。为了满足不同业务场景,K 阅读全文
posted @ 2019-06-25 14:43 TwoB 阅读(1437) 评论(0) 推荐(0) 编辑
摘要: 为了帮助大家更好地理解 Kubernetes 架构,我们部署一个应用来演示各个组件之间是如何协作的。 执行命令 等待一段时间,应用部署完成。 Kubernetes 部署了 deployment httpd-app,有两个副本 Pod,分别运行在 k8s-node1 和 k8s-node2。 详细讨论 阅读全文
posted @ 2019-06-25 11:36 TwoB 阅读(349) 评论(0) 推荐(0) 编辑
摘要: 阅读目录 楔子 命名空间和作用域 函数嵌套及作用域链 函数名的本质 闭包 本章小结 楔子 假如有一个函数,实现返回两个数中的较大值: 之前是不是我告诉你们要把结果return回来你们就照做了?可是你们有没有想过,我们为什么要把结果返回?如果我们不返回m,直接在程序中打印,行不行? 来看结果: 报错了 阅读全文
posted @ 2019-06-25 11:03 TwoB 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 上一节我们讨论了 Kubernetes 架构 Master 上运行的服务,本节讨论 Node 节点。 Node 是 Pod 运行的地方,Kubernetes 支持 Docker、rkt 等容器 Runtime。 Node上运行的 Kubernetes 组件有 kubelet、kube-proxy 和 阅读全文
posted @ 2019-06-25 10:43 TwoB 阅读(215) 评论(0) 推荐(0) 编辑
摘要: Kubernetes Cluster 由 Master 和 Node 组成,节点上运行着若干 Kubernetes 服务。 Master 节点 Master 是 Kubernetes Cluster 的大脑,运行着如下 Daemon 服务:kube-apiserver、kube-scheduler、 阅读全文
posted @ 2019-06-25 10:41 TwoB 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 上节我们通过 kubeadm 在 k8s-master 上部署了 Kubernetes,本节安装 Pod 网络并添加 k8s-node1 和 k8s-node2,完成集群部署。 安装 Pod 网络 要让 Kubernetes Cluster 能够工作,必须安装 Pod 网络,否则 Pod 之间无法通 阅读全文
posted @ 2019-06-25 10:13 TwoB 阅读(340) 评论(0) 推荐(0) 编辑