KubeSphere系列教程-单节点安装教程(一)
一、概述
KubeSphere 是在 Kubernetes 之上构建的以应用为中心的企业级分布式容器平台,提供简单易用的操作界面以及向导式操作方式,在降低用户使用容器调度平台学习成本的同时,极大减轻开发、测试、运维的日常工作的复杂度,旨在解决 Kubernetes 本身存在的存储、网络、安全和易用性等痛点。除此之外,平台已经整合并优化了多个适用于容器场景的功能模块,以完整的解决方案帮助企业轻松应对敏捷开发与自动化运维、DevOps、微服务治理、灰度发布、多租户管理、工作负载和集群管理、监控告警、日志查询与收集、服务与网络、应用商店、镜像构建与镜像仓库管理和存储管理等多种业务场景。后续版本还将提供和支持多集群管理、大数据、人工智能等更为复杂的业务场景。
KubeSphere 从项目初始阶段就采用开源的方式来进行项目的良性发展,相关的项目源代码和文档都在 GitHub 可见。KubeSphere 支持部署和运行在包括公有云、私有云、VM、BM 和 Kubernetes 等任何基础设施之上,并且支持在线安装与离线安装,目前已在 阿里云、腾讯云、华为云、青云、AWS、Kubernetes 上进行过部署测试。
二、功能架构
三、应用场景
KubeSphere®️ 适用于企业在数字化转型时所面临的敏捷开发与自动化运维、微服务应用架构与流量治理、自动弹性伸缩和业务高可用、DevOps 持续集成与交付等应用场景。
一步升级容器架构,助力业务数字化转型
企业用户部署于物理机、传统虚拟化环境的业务系统,各业务模块会深度耦合,资源不能灵活的水平扩展。 KubeSphere 帮助企业将 IT 环境容器化并提供完整的运维管理功能,同时依托青云QingCloud 为企业提供强大的网络、存储支持,并可高效对接企业原监控、运维系统,一站式高效完成企业 IT 容器化改造。
多维管控 Kubernetes,降低运维复杂度
无论将业务架构在 Kubernetes 平台上的用户,还是使用多套来自不同厂商提供的 Kubernetes 平台的用户,复杂的运维管理使企业压力倍增。KubeSphere 可提供统一平台纳管异构 Kubernetes 集群,支持应用自动化部署,减轻日常运维压力。同时,完善的监控告警与日志管理系统有效节省运维人工成本,使企业能够将更多精力投放到业务创新上。
敏捷开发与自动化运维,推动企业 DevOps 落地
DevOps 将开发团队与运营团队通过一套流程或方法建立更具协作性、更高效的的关系,使得开发、测试、发布应用能够更加敏捷、高效、可靠。KubeSphere CI / CD 功能可为企业DevOps 提供敏捷开发与自动化运维。同时, KubeSphere 的微服务治理功能,帮助企业以一种细粒度的方式开发、测试和发布服务,有效推动企业 DevOps 落地。
灵活的微服务解决方案,一步升级云原生架构
微服务架构可轻量级构建冗余,可扩展性强,非常适合构建云原生应用程序。KubeSphere 基于主流微服务解决方案 Istio,提供无代码侵入的微服务治理平台。后续将集成 SpringCloud,便于企业构建 Java 应用,助力企业一步实现微服务架构,实现应用云原生转型。
基于物理环境构建全栈容器架构,释放硬件最大效能
支持在全物理环境部署全栈容器架构,利用物理交换机,为 KubeSphere 提供负载均衡器服务,同时,通过 KubeSphere 与 QingCloud VPC 以及QingStor NeonSAN 的组合,可打通负载均衡、容器平台、网络、存储全栈功能,实现真正意义上的物理环境一体化多租户容器架构解决方案,并实现自主可控、统一管理。避免虚拟化带来的性能损耗,释放硬件最大效能。
四、快速安装
KubeSphere 是在 Kubernetes 之上构建的 企业级分布式容器平台,为用户提供简单易用的操作界面以及向导式操作方式,还能够帮助一键快速安装与运营 Kubernetes 集群。
KubeSphere 支持部署和运行在包括 公有云、私有云、虚机、物理机 和 Kubernetes 等任何基础设施之上,KubeSphere 可以部署在公有云托管的 Kubernetes 之上 (如 GKE、EKS、ACK),也支持部署在私有化的 Kubernetes 之上 (如 kubeadm、k3s、RKE 部署的集群)。目前已在 阿里云、腾讯云、华为云、青云 QingCloud、AWS、Google Cloud、Kubernetes、GKE、RKE 上进行过部署测试。并且,KubeSphere 支持 在线安装与离线安装。
KubeSphere 所有版本 100% 开源免费,已大规模服务于社区用户,广泛地应用在以容器为中心的开发测试及生产环境,大量服务平稳地运行在 KubeSphere 之上。
4.1 安装在 Linux
all-in-one:单节点安装,支持一键安装。
multi-node:多节点安装,支持一键安装。
4.2 all-in-one安装方法
对于首次接触 KubeSphere 的用户,想寻找一个最快安装和体验 KubeSphere 的方式,all-in-one 模式可一键安装 KubeSphere 和 Kubernetes 至一台目标机器。
- KubeSphere 2.1 默认仅开启最小化安装,Installer 已支持自定义安装各个可插拔的功能组件,用户可根据业务需求和机器配置选择安装所需的组件,请确保开启可插拔组件之前机器资源满足最低要求,参考 安装说明 开启可选组件的安装。
- 若您的机器资源配置充足(CPU 不小于 8 核,内存不小于 16 G),非常建议您在安装前 将 KubeSphere 所有功能组件都开启 后再执行安装,体验 KubeSphere 容器平台端到端完整的容器管理与运维能力。
- 安装时间跟网络情况和带宽、机器配置、安装节点个数等因素有关,可通过调高带宽的方式,或在安装前 配置镜像加速器 来加快安装速度。
提示:本文档提供的一键安装的 Installer 对于符合要求的干净 Linux 操作系统会非常方便,将一键安装所需的软件。但是也可能会因为环境依赖或网络问题造成安装不顺利。因此,我们在论坛提供了 step-by-step 的安装教程,方便理解每一步的安装原理,也能够更容易定位安装问题
4.2.1 前提条件
检查安装机器的网络防火墙是否已关闭,若未关闭防火墙则需要开放相关的指定端口,参考 需开放的端口。
4.2.2 准备主机
您可以参考以下节点规格准备一台符合要求的主机节点开始 all-in-one模式的安装,为防止软件版本冲突,建议您选择一台干净的机器。
说明:
若使用 ubuntu 16.04 建议使用其最新的版本 16.04.5;
若使用 ubuntu 18.04,则需要使用 root 用户;
若 Debian 系统未安装 sudo 命令,则需要在安装前使用 root 用户执行 apt update && apt install sudo命令安装 sudo 命令后再进行安装。
操作系统 | 最小配置 |
---|---|
CentOS 7.5 (64 bit) | CPU:2 核, 内存:4 G, 系统盘:100 G |
Ubuntu 16.04/18.04 LTS (64 bit) | CPU:2 核, 内存:4 G, 系统盘:100 G |
Red Hat Enterprise Linux Server 7.4 (64 bit) | CPU:2 核, 内存:4 G, 系统盘:100 G |
Debian Stretch 9.5 (64 bit) | CPU:2 核, 内存:4 G, 系统盘:100 G |
4.2.3 准备安装包
下载 KubeSphere 2.1.1安装包至待安装机器,进入安装目录。
#curl -L https://kubesphere.io/download/stable/v2.1.1 > installer.tar.gz && tar -zxf installer.tar.gz && cd kubesphere-all-v2.1.1/scripts
4.2.4 安装 KubeSphere
-
KubeSphere 安装过程中将会自动化地进行环境和文件监测、平台依赖软件的安装、Kubernetes(默认 v1.16.7)和 etcd 的自动化安装,以及存储的自动化配置,安装成功后可通过 KubeSphere 控制台右上角点击关于查看安装的版本。
说明:
- 通常情况您不需要修改任何配置,直接安装即可。
- 网络插件默认是 calico,若您需要自定义安装参数,如网络、存储、负载均衡器插件、可选组件等相关配置需在 conf/common.yaml文件中指定或修改,参考 集群组件配置说明。
- 存储默认用 OpenEBS 基于 Local Volume 提供持久化存储服务,OpenEBS 支持 动态申请 PV,方便初次安装但没有准备存储服务端的场景下进行部署测试,即本地存储设备作为存储类型。
- 支持存储类型与存储配置相关的详细信息请参考 存储配置说明。
- 由于 Kubernetes 集群的 Cluster IP 子网网段默认是 10.233.0.0/18,Pod 的子网网段默认是 10.233.64.0/18,因此安装 KubeSphere 的节点 IP 地址范围不应与以上两个网段有重复,若遇到地址范围冲突可在配置文件 conf/common.yaml修改 kube_service_addresses或 kube_pods_subnet的参数。
-
建议使用 root用户安装,执行 install.sh脚本。再次提醒大陆用户需要配置镜像加速.
#./install.sh
-
输入数字 1选择第一种即 all-in-one 模式开始安装:
################################################ KubeSphere Installer Menu ################################################ * 1) All-in-one * 2) Multi-node * 3) Quit ################################################ https://kubesphere.io/ 2020-02-23 ################################################ Please input an option: 1
4.2.5 测试是否安装成功
(1) 待安装脚本执行完后,请耐心等待,当看到如下 "Successful"的日志,则说明 KubeSphere 安装成功。
(2) 若需要在外网访问,在云平台可能需要在端口转发规则中将 内网端口 30880 转发到 源端口 30880,然后在防火墙开放这个 源端口,确保外网流量可以通过该端口。
(3) 安装成功后,浏览器访问对应的 URL,如 http://{$NodeIP}:30880,即可进入 KubeSphere 登录界面,可使用默认的用户名和密码登录 KubeSphere 控制台体验,登录后请立即修改默认密码。参阅 快速入门 帮助您快速上手 KubeSphere。
注意:登陆 Console 后请在 "集群状态" 查看服务组件的监控状态,待所有组件启动完成后即可开始使用,通常所有服务组件都将在 10 分钟内启动完成。
匿名
不好使