v2.0
v1.0
  1. Release Notes
    1. Release Notes - 2.0.2最新
    1. Release Notes - 2.0.1
    1. Release Notes - 2.0.0
  1. 产品介绍
    1. 产品简介
    1. 产品功能
    1. 产品优势
    1. 架构说明
    1. 应用场景
    1. 名词解释
  1. 安装指南
    1. 安装说明
    1. 需开放的端口
    1. All-in-One 模式
    1. Multi-Node 模式
    1. 在 Kubernetes 在线部署 KubeSphere
    1. 在 Kubernetes 离线部署 KubeSphere
    1. Master 和 etcd 节点高可用
    1. 存储安装配置说明
    1. 集群组件配置说明
    1. 安装负载均衡器插件
    1. 安装内置 Harbor
    1. 安装内置 GitLab
    1. 升级
    1. 访问 SonarQube 和 Jenkins 服务端
    1. 集群节点扩容
    1. 卸载
  1. 快速入门
    1. 入门必读
    1. 示例一 - 多租户管理快速入门
    1. 示例二 - 应用路由与服务示例
    1. 示例三 - 部署 MySQL
    1. 示例四 - 部署 Wordpress
    1. 示例五 - 创建简单任务
    1. 示例六 - 一键部署应用
    1. 示例七 - 设置弹性伸缩 (HPA)
    1. 示例八 - Source-to-Image
    1. 示例九 - Bookinfo 微服务的灰度发布
    1. 示例十 - 基于Spring Boot项目构建流水线
    1. 示例十一 - 图形化构建流水线
    1. 示例十二 - CI/CD 流水线(离线版)
    1. 示例十三 - 使用 Ingress-Nginx 进行灰度发布
  1. 管理员指南
    1. 多租户管理
      1. 多租户管理概述
      2. 角色权限概览
    1. 平台管理
      1. 企业空间管理
      2. 账号管理
      3. 平台角色
    1. 基础设施
      1. 服务组件
      2. 主机管理
      3. 存储类型
    1. 监控中心
      1. 监控概述
      2. 如何利用监控定位问题
      3. 集群状态监控
      4. 应用资源监控
      5. 监控策略 - 节点级别
      6. 监控消息 - 节点级别
    1. 平台设置
      1. 应用仓库
      2. 基于本地仓库搭建应用仓库部署Redis
      3. 上传应用到 KubeSphere 官方仓库
      4. 基于 GitHub 搭建自有应用仓库
      5. 邮件服务器
      6. 日志收集
      7. 添加 Fluentd 作为日志接收者
      8. 添加 Kafka 作为日志接收者
    1. 工具箱
      1. Web Kubectl
      2. 日志收集
    1. 通用配置
      1. 系统配置修改
      2. 上传镜像至 Harbor
      3. Jenkins 系统设置
    1. FAQ
      1. DevOps 运维FAQ
  1. 用户指南
    1. 应用
      1. 应用模板
      2. 自制应用
      3. 流量治理
      4. 熔断
    1. 工作负载
      1. 工作负载概述
      2. 部署
      3. 有状态副本集
      4. 守护进程集
      5. 任务
      6. 定时任务
      7. 设置健康检查器
      8. 工作负载管理
      9. 自定义 S2i 模板
    1. 存储
      1. 存储概述
      2. 存储卷
      3. Local Volume 使用方法
    1. 网络与服务
      1. 服务管理
      2. 灰度发布
      3. 应用路由
    1. 监控告警
      1. 告警策略 - 工作负载级别
      2. 告警消息 - 工作负载级别
    1. 配置中心
      1. 密钥
      2. 配置
      3. 镜像仓库
    1. 项目设置
      1. 基本信息
      2. 成员角色
      3. 项目成员
      4. 外网访问
    1. DevOps 工程
      1. DevOps 工程概述
      2. 管理 DevOps 工程
      3. 流水线
      4. 凭证管理
      5. 添加代码仓库
      6. 访问 SonarQube 并创建 Token
      7. 设置自动触发扫描
      8. Jenkins Agent 说明
      9. 流水线常见问题
  1. API 文档
    1. API 文档
    1. 如何调用 API
    1. API 常用术语对照
    1. 监控指标说明
  1. 常见问题
    1. 安装常见问题
    1. 存储常见问题
    1. 控制台使用常见问题
    1. DevOps 常见问题
  1. 附录
    1. 部署 Ceph 存储服务端
    1. 部署 GlusterFS 存储服务端
    1. 云平台配置端口转发和防火墙
KubeSphere®️ 2020 All Rights Reserved.

安装说明

KubeSphere 是在目前主流容器调度平台 Kubernetes 之上构建的 企业级分布式多租户容器平台,为用户提供简单易用的操作界面以及向导式操作方式,KubeSphere 提供了在生产环境集群部署的全栈化容器部署与管理平台。

KubeSphere 支持部署和运行在包括公有云、私有云、VM、BM 和 Kubernetes 等任何基础设施之上,并且支持在线安装与离线安装,目前已在 阿里云、腾讯云、华为云、青云、AWS、Kubernetes 上进行过部署测试。 KubeSphere 所有版本 100% 开源免费,已大规模服务于社区用户,广泛地应用在以容器为中心的开发测试及生产环境,大量服务平稳地运行在 KubeSphere 之上。

安装 KubeSphere

KubeSphere 安装支持以下 4 种安装模式:

安装在 Linux

  • all-in-one:单节点安装(支持在线和离线安装)
  • multi-node:多节点安装(支持在线和离线安装)

安装在 Kubernetes

支持 GPU

KubeSphere 安装支持 GPU 节点,也支持 CPU 与 GPU 的混合部署模式,需在安装配置文件 conf/vars.yml 中进行设置,配置示例和说明参考 集群组件配置释义

可选安装项

另外,KubeSphere Installer 集成了 HarborGitLab,但默认情况下不会安装 Harbor 和 GitLab,用户可以根据团队项目的需求来配置安装,仅需安装前在配置文件 conf/vars.yml 中简单配置即可,参考 安装内置 Harbor安装内置 GitLab

说明:

  • 由于安装过程中需要更新操作系统和从镜像仓库拉取镜像,因此必须能够访问外网。如果不能访问外网,则需要下载离线安装包。
  • KubeSphere 集群的架构中,由于各自服务的不同,分为管理节点和工作节点两个角色,即 Master 和 Node。
  • Master 节点由三个紧密协作的组件组合而成,即负责 API 服务的 kube-apiserver、负责调度的 kube-scheduler、负责容器编排的 kube-controller-manager。
  • 集群的持久化数据,由 kube-apiserver 处理后保存至 etcd 中。
  • 当进行 all-in-one 模式进行单节点安装时,这个节点既是管理节点,也是工作节点。
  • 当进行 multi-node 模式安装多节点集群时,可在配置文件中设置集群各节点的角色。
  • 如果是新安装的系统,在 Software Selection 界面需要把 OpenSSH Server 选上。

All-in-One 模式

All-in-One 模式即单节点安装,支持一键安装,仅建议您用来测试或熟悉安装流程和了解 KubeSphere 高级版的功能特性,详见 All-in-One 模式。在正式使用环境建议使用 Multi-Node 模式。

Multi-Node 模式

Multi-Node 即多节点集群安装,高级版支持 master 节点和 etcd 的高可用,支持在正式环境安装和使用,详见 Multi-Node 模式

离线安装

KubeSphere 支持离线安装,若机器无法访问外网,请下载离线安装包进行安装。

离线的安装步骤与在线安装一致,因此可直接参考 all-in-onemulti-node 的安装指南下载安装。目前离线安装支持的操作系统如下,系统盘需保证 100 G 以上,主机配置规格的其它参数可参考在线安装的主机配置。

  • CentOS 7.4/7.5
  • Ubuntu 16.04.4/16.04.5

存储配置说明

Multi-Node 模式安装 KubeSphere 可选择配置部署 NFS Server 来提供持久化存储服务,方便初次安装但没有准备存储服务端的场景下进行部署测试。若在正式环境使用需配置 KubeSphere 支持的持久化存储服务,并准备相应的存储服务端。本文档说明安装过程中如何在 Installer 中配置 QingCloud 云平台块存储企业级分布式存储 NeonSANNFSGlusterFSCeph RBD 这类持久化存储的安装参数,详见 存储配置说明

集群组件配置释义

注意,在 CI/CD 流水线中发送邮件通知需要安装前预先在 Installer 中配置邮件服务器,配置请参考 集群组件配置释义 (下一版本将支持安装后在 UI 统一配置邮件服务器)。

如果需要查看或修改网络、组件版本、可选安装项 (如 GitLab、Harbor)、外部负载均衡器、Jenkins、SonarQube、邮件服务器等配置参数时,可参考以下说明进行修改,集群组件配置释义文档对 installer 中的安装配置文件 conf/vars.yml 进行说明,简单介绍每一个字段的意义,参考 集群组件配置释义

安装 QingCloud 负载均衡器插件 (可选)

服务或应用路由如果通过 LoadBalancer 的方式暴露到外网访问,则需要安装对应的云平台负载均衡器插件来支持。如果在 QingCloud 云平台安装 KubeSphere,建议在 conf/vars.yml 中配置 QingCloud 负载均衡器插件相关参数,installer 将自动安装 QingCloud 负载均衡器插件,详见 安装 QingCloud 负载均衡器插件

安装内置 Harbor (可选)

KubeSphere Installer 集成了 Harbor 的 Helm Chart (版本为 harbor-18.11.1),内置的 Harbor 作为可选安装项,需 安装前 在配置文件 conf/vars.yml 中进行配置。用户可以根据团队项目的需求来配置安装,详见 安装内置 Harbor

安装内置 GitLab (可选)

​KubeSphere Installer 集成了 Harbor 的 Helm Chart (版本为 harbor-18.11.1),内置的 Gitlab (版本为 v11.3.4) 作为可选安装项,需 安装前 在配置文件 conf/vars.yml 中进行配置。用户可以根据团队项目的需求来配置安装,详见 安装内置 GitLab

Master 和 etcd 节点高可用配置

Multi-Node 模式安装 KubeSphere 可以帮助用户顺利地部署环境,由于在实际的生产环境我们还需要考虑 master 节点的高可用问题,本文档以配置负载均衡器 (Load Banlancer) 为例,引导您在安装过程中如何配置高可用的 Master 和 etcd 节点,详见 Master 和 etcd 节点高可用配置

升级

若您的机器已安装的环境为高级版 1.0.x (或 2.0.0) 版本,我们强烈建议您升级至最新的高级版 2.0.1,最新的 Installer 支持将 KubeSphere 从 1.0.x (或 2.0.0) 环境一键升级至目前最新的 2.0.1,详见 升级指南

集群节点扩容

安装 KubeSphere 后,在正式环境使用时可能会遇到服务器容量不足的情况,这时就需要添加新的节点 (node),然后将应用系统进行水平扩展来完成对系统的扩容,配置详见 集群节点扩容

高危操作

KubeSphere 支持管理节点和 etcd 节点高可用,保证集群稳定性,同时基于 kubernetes 底层调度机制,可以保证容器服务的可持续性及稳定性,但并不推荐无理由关闭或者重启节点,因为这类后台操作均属于高危操作,可能会造成相关服务不可用,请谨慎操作。执行高危操作需将风险告知用户,并由用户以及现场运维人员同意之后,由运维人员进行后台操作。比如以下列表包含了高危操作和禁止操作,可能造成节点或集群不可用:

高危操作列表

序列 高危操作
1 重启集群节点或重装操作系统。
2 建议不要在集群节点安装其它软件,可能导致集群节点不可用。

禁止操作列表

序列 禁止操作
1 删除 /var/lib/etcd/,删除 /var/lib/docker,删除 /etc/kubernetes/,删除 /etc/kubesphere/
2 磁盘格式化、分区。

卸载

卸载将从机器中删除 KubeSphere,该操作不可逆,详见 卸载说明

组件版本信息

KubeSphere Advanced 2.0.2 中的相关组件将默认安装以下版本:

组件 版本
KubeSphere Advanced Edition 2.0.2
Kubernetes v1.13.5
Istio 1.1.1
etcd 3.2.18
OpenPitrix v0.3.5
Elasticsearch v6.7.0
Prometheus v2.3.1
Jenkins v2.138
SonarQube v7.4
GitLab 11.8.1
Harbor 1.7.5