当前位置: 首页 > news >正文

5 秒创建 k8s 集群 - 每天5分钟玩转 Docker 容器技术(115)

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

据说 Google 的数据中心里运行着超过 20 亿个容器,而且 Google 十年前就开始使用容器技术。

最初,Google 开发了一个叫 Borg 的系统(现在命令为 Omega)来调度如此庞大数量的容器和工作负载。在积累了这么多年的经验后,Google 决定重写这个容器管理系统,并将其贡献到开源社区,让全世界都能受益。

这个项目就是 Kubernetes。简单的讲,Kubernetes 是 Google Omega 的开源版本。

从 2014 年第一个版本发布以来,Kubernetes 迅速获得开源社区的追捧,包括 Red Hat、VMware、Canonical 在内的很多有影响力的公司加入到开发和推广的阵营。目前 Kubernetes 已经成为发展最快、市场占有率最高的容器编排引擎产品。

Kubernetes 一直在快速地开发和迭代。本章我们将以 v1.7 和 v1.8 为基础学习 Kubernetes。我们会讨论 Kubernetes 重要的概念和架构,学习 Kubernetes 如何编排容器,包括优化资源利用、高可用、滚动更新、网络插件、服务发现、监控、数据管理、日志管理等。

下面就让我们开始 Kubernetes 的探险之旅。

先跑起来

按照一贯的学习思路,我们会在最短时间内搭建起一个可用系统,这样就能够尽快建立起对学习对象的感性认识。先把玩起来,快速了解基本概念、功能和使用场景。

越是门槛高的知识,就越需要有这么一个最小可用系统。如果直接上来就学习理论知识和概念,很容易从入门到放弃。

当然,要搭建这么一个可运行的系统通常也不会太容易,不过很幸运,Kubernetes 官网已经为大家准备好了现成的最小可用系统。

kubernetes.io 开发了一个交互式教程,通过 Web 浏览器就能使用预先部署好的一个 kubernetes 集群,快速体验 kubernetes 的功能和应用场景,下面我就带着大家去玩一下。

打开 https://kubernetes.io/docs/tutorials/kubernetes-basics/

页面左边就能看到教程菜单:

570.png

教程会指引大家完成创建 kubernetes 集群、部署应用、访问应用、扩展应用、更新应用等最常见的使用场景,迅速建立感性认识。

创建 Kubernetes 集群

点击教程菜单 1. Create a Cluster -> Interactive Tutorial - Creating a Cluster

571.png

显示操作界面。

572.png

左边部分是操作说明,右边是 Terminal,命令终端窗口。

按照操作说明,我们在 Terminal 中执行 minikube start,然后执行 kubectl get nodes,这样就创建好了一个单节点的 kubernetes 集群。

573.png

集群的唯一节点为 host01,需要注意的是当前执行命令的地方并不是 host01。我们是在通过 Kubernetes 的命令行工具 kubectl 远程管理集群。

执行 kubectl cluster-info 查看集群信息:

574.png

heapsterkubernetes-dashboard 都是集群中运行的服务。

注:为节省篇幅,在后面的演示中,我将简化操作步骤,详细的说明和完整步骤请参考官网在线文档。

集群创建好了,下一节我将带领大家快速体验 Kubernetes 的核心功能。

书籍:

1.《每天5分钟玩转Docker容器技术》
https://item.jd.com/16936307278.html

2.《每天5分钟玩转OpenStack》
https://item.jd.com/12086376.html

转载于:https://my.oschina.net/u/2397560/blog/1602598

相关文章:

  • 9.2. Buffering and Caching
  • golang 新人入门配置学习
  • 63. 搜索旋转排序数组 II
  • JAVA NIO知识点总结(6)——DatagramChannel
  • addEventListener()的第三个参数可以传对象了
  • 11.11. SNMP
  • [2018-01-08] Python强化周的第一天
  • Zabbix备份数据文件
  • Shell 输入/输出重定向
  • 通用汽车新增130辆测试无人车,配激光雷达
  • 了解Web及网络基础(二)
  • 拉格朗日插值
  • HomeBrew常规使用教程
  • 递归函数的写法笔记
  • mysql手写sql 建库建表示例
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • AHK 中 = 和 == 等比较运算符的用法
  • angular2 简述
  • Git的一些常用操作
  • Linux gpio口使用方法
  • pdf文件如何在线转换为jpg图片
  • SegmentFault 技术周刊 Vol.27 - Git 学习宝典:程序员走江湖必备
  • vue-cli在webpack的配置文件探究
  • Yeoman_Bower_Grunt
  • 官方解决所有 npm 全局安装权限问题
  • 试着探索高并发下的系统架构面貌
  • 移动端解决方案学习记录
  • nb
  • d²y/dx²; 偏导数问题 请问f1 f2是什么意思
  • 扩展资源服务器解决oauth2 性能瓶颈
  • # 深度解析 Socket 与 WebSocket:原理、区别与应用
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • #周末课堂# 【Linux + JVM + Mysql高级性能优化班】(火热报名中~~~)
  • $.type 怎么精确判断对象类型的 --(源码学习2)
  • (39)STM32——FLASH闪存
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (三)模仿学习-Action数据的模仿
  • (转)memcache、redis缓存
  • (转)可以带来幸福的一本书
  • ***利用Ms05002溢出找“肉鸡
  • :O)修改linux硬件时间
  • @JsonFormat与@DateTimeFormat注解的使用
  • [2024] 十大免费电脑数据恢复软件——轻松恢复电脑上已删除文件
  • [Android]一个简单使用Handler做Timer的例子
  • [AS3]URLLoader+URLRequest+JPGEncoder实现BitmapData图片数据保存
  • [C#] 如何调用Python脚本程序
  • [C++] 统计程序耗时
  • [CERC2017]Cumulative Code
  • [EFI]英特尔 冥王峡谷 NUC8i7HVK 电脑 Hackintosh 黑苹果efi引导文件
  • [element-ui] el-dialog 中的内容没有预先加载,因此无法获得内部元素的ref 的解决方案
  • [github全教程]github版本控制最全教学------- 大厂找工作面试必备!
  • [HNOI2018]排列
  • [html] 动态炫彩渐变背景
  • [ISITDTU 2019]EasyPHP