01-集群环境及组件介绍

本文档记录自己的学习历程!

介绍

Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。

通过Kubernetes你可以:

  • 快速部署应用
  • 快速扩展应用
  • 无缝对接新的应用功能
  • 节省资源,优化硬件资源的使用
  • 我们的目标是促进完善组件和工具的生态系统,以减轻应用程序在公有云或私有云中运行的负担。

Kubernetes 特点

  • 可移植: 支持公有云,私有云,混合云,多重云(multi-cloud)
  • 可扩展: 模块化, 插件化, 可挂载, 可组合
  • 自动化: 自动部署,自动重启,自动复制,自动伸缩/扩展

Kubernetes是Google 2014年创建管理的,是Google 10多年大规模容器管理技术Borg的开源版本。

集群环境及组件介绍

集群组件和版本

  • Kubernetes 1.6.2
  • Docker 1.12.6
  • Etcd 3.1.5
  • Flanneld 0.7.1 vxlan 网络
  • TLS 认证通信 (所有组件,如 etcd、kubernetes master 和 node)
  • RBAC 授权
  • kubelet TLS BootStrapping
  • kubedns、dashboard、heapster (influxdb、grafana)、EFK (elasticsearch、fluentd、kibana) 插件
  • 私有 docker registry,使用 ceph rgw 后端存储,TLS + HTTP Basic 认证

集群机器

  • 192.168.1.121(etcd/kube-apiserver/kube-controller/kube-scheduler/flanneld)
  • 192.168.1.122(etcd/kubelet/kebe-proxy/flanneld)
  • 192.168.1.123(etcd/kubelet/kebe-proxy/flanneld)
  • etcd集群、kubernetes master 集群使用192.168.1.121
  • kubernetes node 使用192.168.1.122/192.168.1.123

集群环境变量

后续的部署步骤将使用下面定义的变量值,根据自己的机器、网络情况设定:

# TLS Bootstrapping 使用的 Token,可以使用命令 
head -c 16 /dev/urandom | od -An -t x | tr -d ' ' 生成
BOOTSTRAP_TOKEN="41f7e4ba8b7be874fcff18bf5cf41a7c"

# 建议用 未用的网段 来定义服务网段和 Pod 网段

# 服务网段 (Service CIDR),部署前路由不可达,部署后集群内使用 IP:Port 可达
SERVICE_CIDR="10.254.0.0/16"

# POD 网段 (Cluster CIDR),部署前路由不可达,**部署后**路由可达 (flanneld 保证)
CLUSTER_CIDR="172.30.0.0/16"

# 服务端口范围 (NodePort Range)
NODE_PORT_RANGE="8400-9000"

# etcd 集群服务地址列表
ETCD_ENDPOINTS="https://192.168.1.121:2379,https://192.168.1.122:2379,https://192.168.1.121:2379"

# flanneld 网络配置前缀
FLANNEL_ETCD_PREFIX="/kubernetes/network"

# kubernetes 服务 IP (预分配,一般是 SERVICE_CIDR 中第一个IP)
CLUSTER_KUBERNETES_SVC_IP="10.254.0.1"

# 集群 DNS 服务 IP (从 SERVICE_CIDR 中预分配)
CLUSTER_DNS_SVC_IP="10.254.0.2"

# 集群 DNS 域名
CLUSTER_DNS_DOMAIN="cluster.local."

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏IT派

Python | 查看微信撤回的消息(完整代码)

看到了一个基于python的微信开源库:itchat,玩了一天,做了一个程序,把私聊撤回的信息可以收集起来并发送到个人微信的文件传输助手,包括:

1342
来自专栏翻译

Universe入门

Universe是一个用于衡量和训练AI的软件平台,适合世界上的所有游戏,网站和应用程序。本项目是一个universe开源库,它为 每个Universe环境提供...

4636
来自专栏张戈的专栏

linux/scp命令报“bash: scp: command not found lost connection”错误的解决办法

这两天接到的任务是给 JAVA 开发项目组部署【JAVA+MySQL 主从+Redis 主从】运行环境。部署过程中大问题倒没有,小问题却不少,因此也涨了不少经验...

3024
来自专栏FreeBuf

一个和任天堂游戏机有关的0-day漏洞,可能对大多Linux系统造成影响

上个月,我们发布过一篇相关红白机的Ubuntu漏洞,利用恶意构建的红白机音乐文件就能触发——这是著名安全专家Chris Evans的杰作;实际上,超任也存在这种...

1925
来自专栏Samego开发资源

仅78行代码实现微信撤回消息查看 | Python itchat

2354
来自专栏北京马哥教育

最棒的60个DevOps开源工具

你喜欢免费的东西吗?获得开发者社区支持的自动化,开源的工具是大家梦寐以求的。这里列举了 60+ 款最棒的开源工具,可以帮助你很好的实行 DevOps。 大图点...

3996
来自专栏信安之路

锁首技术总结

在公司实习也有一个月了,学到不少东西,不知不觉就要大四了,回首漫漫安全路,不禁感慨万千:我入安全的时间比较晚,大一大二跟着老师参加 Android 移动应用开发...

872
来自专栏linux、Python学习

60个DevOps开源工具,你在用哪些?

你喜欢免费的东西吗?获得开发者社区支持的自动化,开源的工具是大家梦寐以求的。这里列举了 60 多款最棒的开源工具,可以帮助你很好的实行 DevOps。

840
来自专栏华章科技

撤回的微信消息真的看不到?78行Python代码帮你看穿一切!

导读:Python曾经对我说:"时日不多,赶紧用Python"。于是看到了一个基于python的微信开源库:itchat,玩了一天,做了一个程序,把私聊撤回的信...

563
来自专栏逸鹏说道

虎嗅主站盲打成功(已进后台)

简要描述: 是时候展示XSS的威力了! 详细说明: 0x01 先跑个题.. code 区域 WooYun: 虎嗅主站设计缺陷导致弱密码用户风险 这个撞库漏...

2795

扫码关注云+社区