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.

安装内置 Harbor

KubeSphere Installer 集成了 Harbor 版本为 1.7.5,内置的 Harbor 作为可选安装项,用户可以根据团队项目的需求来配置安装,方便用户对项目的镜像管理,仅需 安装前 在配置文件 conf/vars.yml 中简单配置即可。参考以下步骤安装和访问 Harbor。

注意:

  • 若安装前未选择安装 Harbor,可参考本文末在安装后单独安装 Harbor 组件。
  • Harbor 安装需要额外挂载 5 块硬盘,若 KubeSphere 部署在云平台则需要考虑硬盘数量是否满足配额要求,若硬盘数量或容量配额不够则需要提工单申请提高配额。

修改安装配置文件

1、安装 KubeSphere 前,在 Installer 中的 conf/vars.yml 文件中,参考如下配置修改。

# harbor deployment
harbor_enable: true
harbor_domain: harbor.devops.kubesphere.local

2、修改后保存,然后执行安装脚本,即可通过 Helm Chart 的方式来安装 Harbor。

访问 Harbor

Docker 登录 Harbor

登录 Harbor 镜像仓库。

$ docker login -u admin -p Harbor12345 http://harbor.devops.kubesphere.local:30280

WARNING! Using --password via the CLI is insecure. Use --password-stdin.
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

使用 Harbor 镜像仓库

关于如何制作镜像、打包上传镜像以及 Dockerfile 的使用详情,请参考 Docker 官方文档

KubeSphere 安装成功后,本地已经有了 nginx:1.14-alpine 镜像,因此演示如何在本地给示例镜像 nginx 打 tag 后推送到 Harbor 镜像仓库的 library 项目中:

1、给本地 nginx 镜像打上 1.14-alpine 的 tag。

docker tag nginx:1.14-alpine harbor.devops.kubesphere.local:30280/library/nginx:1.14-alpine

2、推送至 Harbor 镜像仓库的 library 项目中。

docker push harbor.devops.kubesphere.local:30280/library/nginx:1.14-alpine

镜像推送成功即可通过浏览器登录 Harbor,验证推送的结果。

浏览器访问 Harbor

KubeSphere 安装成功后,即可在浏览器访问 Harbor 镜像仓库。Harbor 服务对外暴露的节点端口 (NodePort) 为 30280,内置的 Harbor 镜像仓库目前仅支持 http 协议,在浏览器中可以通过 {$IP}:{$NodePort}http://139.198.16.160:30280 访问 Harbor 登录页面。

注意:若需要在外网访问,可能需要绑定公网 EIP 并配置端口转发和防火墙规则,端口转发需要将内网端口 30280 转发到源端口 30280,然后在防火墙开放这个源端口,保证外网流量可以通过该端口,然后才可以通过 http://{$公网 IP}:{$NodePort} 访问。例如在 QingCloud 云平台进行上述操作,则可以参考 云平台配置端口转发和防火墙。 提示:在浏览器中还可通过域名访问 Harbor,在本地 /etc/hosts 添加一行记录 139.198.16.160 harbor.devops.kubesphere.local,即可通过 http://harbor.devops.kubesphere.local:30280 访问。

1、输入默认的管理员用户名和密码 admin / Harbor12345 登录 Harbor。

提示:其它用户登录的账号密码与 KubeSphere 的 LDAP 用户账户体系一致。

Harbor 登录

2、登录成功后,点击进入 library 项目。

3、可以看到 library 项目下已有了 nginx 镜像。

KubeSphere 中使用 Harbor

KubeSphere 添加 Harbor

提示:以下需要在企业空间下的项目中添加镜像仓库,若还未创建企业空间和项目,请参考 多租户管理快速入门

登录控制台,在已创建的企业空间的项目下,左侧菜单栏选择 配置中心 → 密钥,点击 创建

第一步:填写基本信息

填写密钥的基本信息,完成后点击 下一步

  • 名称:起一个简洁明了的名称,填写 harbor
  • 别名:支持中文,帮助您更好的区分资源,比如 内置 Harbor 镜像仓库
  • 描述信息:简单介绍该密钥的功能

基本信息

第二步:填写 Harbor 仓库信息

2.1. 参考如下提示填写 Harbor 仓库的登录信息。

  • 仓库地址:填写内置的 Harbor 镜像仓库域名和节点端口 harbor.devops.kubesphere.local:30280
  • 用户名:admin
  • 密码:Harbor12345
  • 邮箱:填写个人邮箱

2.2. 如果 Harbor 安装配置都正确,并且验证信息都填写无误,即可添加成功。Harbor 镜像仓库添加完成后,可以上传镜像和拉取镜像。

使用 Harbor 中的镜像

若需要在 KubeSphere 中使用 Harbor 镜像仓库中的镜像,需要先将相关的镜像构建后上传至 Harbor。

以创建 Deployment (部署) 为例展示如何使用镜像仓库来拉取仓库中的镜像。比如上述步骤已经将镜像 nginx:1.14-alpine 推送到了 library 项目,因此以下将演示如何创建工作负载并使用 Harbor 中的示例镜像 nginx:1.14-alpine

1、上述步骤中已将镜像仓库添加到了项目中,因此进入当前项目,选择「工作负载」→「部署」,点击「创建」。

2、 在弹窗中填写基本信息然后点击「下一步」,在容器组模板中需要先选择镜像仓库,镜像为 harbor.devops.kubesphere.local:30280/library/nginx:1.14-alpine,对应的格式为 镜像仓库地址/项目名称/镜像名称:tag,填写后点击「保存」,然后一直点击下一步直至创建,待创建成功后即可使用该镜像。

提示:关于如何创建工作负载的详细步骤说明,请参考快速入门系列文档。

提示:关于 Harbor 的使用详见 Harbor 官方文档