Linux下K8S傻⽠式安装,图形化管理及两者之间⽐较
(KubeSphere和Rancher)
之前我们⼀直都是使⽤命令⾏来管理K8S的,这种做法虽然对程序员来说看起来很炫酷,但有时候⽤起来还是挺⿇烦的。
今天我们来介绍2个K8S可视化管理⼯具KubeSphere和Rancher,使⽤它可以⼤⼤减少我们管理K8S的⼯作量,希望对⼤家有所帮助!
kubesphere功能说明
kubernetes资源管理
对底层 Kubernetes 中的多种类型的资源提供可视化的展⽰与监控数据,以向导式 UI 实现⼯作负载管理、镜像管理、服务与应⽤路由管理 (服务发现)、密钥配置管理等,并提供弹性伸缩 (HPA) 和容器健康检查⽀持,⽀持数万规模的容器资源调度,保证业务在⾼峰并发情况下的⾼可⽤性。
微服务治理
灵活的微服务框架:基于 Istio 微服务框架提供可视化的微服务治理功能,将 Kubernetes 的服务进⾏更细粒度的拆分
完善的治理功能:⽀持熔断、灰度发布、流量管控、限流、链路追踪、智能路由等完善的微服务治理功能,同时,⽀持代码⽆侵⼊的微服务治理
多租户管理
多租户:提供基于⾓⾊的细粒度多租户统⼀认证与三层级权限管理
统⼀认证:⽀持与企业基于 LDAP / AD 协议的集中认证系统对接,⽀持单点登录 (SSO),以实现租户⾝份的统⼀认证
权限管理:权限等级由⾼⾄低分为集、企业空间与项⽬三个管理层级,保障多层级不同⾓⾊间资源共享且互相隔离,充分保障资源安全性
DevOps
开箱即⽤的 DevOps:基于 Jenkins 的可视化 CI / CD 流⽔线编辑,⽆需对 Jenkins 进⾏配置,同时内置丰富的 CI/CD 流⽔线插件
CI/CD 图形化流⽔线提供邮件通知功能,新增多个执⾏条件为流⽔线、s2i、b2i 提供代码依赖缓存⽀持
端到端的流⽔线设置:⽀持从仓库 (Git/ SVN / BitBucket)、代码编译、镜像制作、镜像安全、推送仓库、版本发布、到定时构建的端到端流⽔线设置
安全管理:⽀持代码静态分析扫描以对 DevOps ⼯程中代码质量进⾏安全管理
⽇志:⽇志完整记录 CI / CD 流⽔线运⾏全过程
快速构建与发布
提供对代码(Source-to-Image)或者制品(Binary-to-Image)进⾏快速容器化的⼯具,⽆需编写 dockerfile,仅需要通过简单的设置即可将制品和代码构建成服务。
⽀持从已有的代码仓库中获取代码,或通过上传制品的⽅式,⾃动构建镜像和完成部署,并将镜像推送⾄⽬标仓库,每次构建镜像和服务的过程将以任务 (Job) 的⽅式去完成。
多维度监控
KubeSphere 全监控运维功能可通过可视化界⾯操作,同时,开放标准接⼝,易于对接企业运维系统,以统⼀运维⼊⼝实现集中化运维
⽴体化秒级监控:秒级频率、双重维度、⼗六项指标⽴体化监控
在集资源维度,提供 CPU 利⽤率、内存利⽤率、CPU 平均负载、磁盘使⽤量、inode 使⽤率、磁盘吞吐量、IOPS、⽹卡速率、容器组运⾏状态、ETCD 监控、API Server 监控等多项指标
在应⽤资源维度,提供针对应⽤的 CPU ⽤量、内存⽤量、容器组数量、⽹络流出速率、⽹络流⼊速率等五项监控指标。并⽀持按⽤量排序和⾃定义时间范围查询,快速定位异常
提供按节点、企业空间、项⽬等资源⽤量排⾏
提供服务组件监控,快速定位组件故障
⾃研多租户告警系统
⽀持基于多租户、多维度的监控指标告警,⽬前告警策略⽀持集管理员对节点级别和租户对⼯作负载级别等两个层级
灵活的告警策略:可⾃定义包含多个告警规则的告警策略,并且可以指定通知规则和重复告警的规则
丰富的监控告警指标:提供节点级别和⼯作负载级别的监控告警指标,包括容器组、CPU、内存、磁盘、⽹络等多个监控告警指标
灵活的告警规则:可⾃定义某监控指标的检测周期长度、持续周期次数、告警等级等
灵活的通知发送规则:可⾃定义发送通知时间段及通知列表,⽬前⽀持邮件通知
⾃定义重复告警规则:⽀持设置重复告警周期、最⼤重复次数并和告警级别挂钩
⽇志查询与收集
提供多租户⽇志管理,在 KubeSphere 的⽇志查询系统中,不同的租户只能看到属于⾃⼰的⽇志信息,⽀持中⽂⽇志检索,⽀持⽇志导出
多级别的⽇志查询 (项⽬/⼯作负载/容器组/容器以及关键字)、灵活⽅便的⽇志收集配置选项等
⽀持多种⽇志收集平台,如 Elasticsearch、Kafka、Fluentd
对于将⽇志以⽂件形式保存在 Pod 挂盘上的应⽤,⽀持开启落盘⽇志收集功能
应⽤商店
基于开源的 提供应⽤商店和应⽤仓库服务
⽀持应⽤上传、应⽤审核、应⽤上架与分类、应⽤部署,为⽤户提供应⽤全⽣命周期管理功能
⽤户基于应⽤模板可以快速便捷地部署⼀个完整应⽤的所有服务
基础设施管理
提供存储类型管理、主机管理和监控、资源配额管理,并且⽀持镜像仓库管理、权限管理、镜像安全扫描。内置 Harbor 镜像仓库,⽀持添加 Docker 或私有的 Harbor 镜像仓库。
多存储类型⽀持
⽀持 GlusterFS、CephRBD、NFS 等开源存储⽅案,⽀持有状态存储
NeonSAN CSI 插件对接 QingStor NeonSAN,以更低时延、更加弹性、更⾼性能的存储,满⾜核⼼业务需求linux离线安装nginx详细教程
QingCloud CSI 插件对接 QingCloud 云平台各种性能的块存储服务
多⽹络⽅案⽀持
⽀持 Calico、Flannel 等开源⽹络⽅案
开发了适⽤于物理机部署 Kubernetes 的
CentOS7下离线安装KubeSphere3.0集
步骤1:准备条件
准备三台CentOS7.9的Linux主机
主机 IP 主机名称 ⾓⾊
192.168.78.10master master, etcd
192.168.78.12node1worker
192.168.78.13node2worker
要求
1. 1、硬盘分区要求根分区⾄少100G
2. 2、建议关闭firewalld防⽕墙
KubeKey 使⽤ /var/lib/docker 作为默认路径来存储所有 Docker 相关⽂件(包括镜像)
因此建议添加附加存储卷,分别给 /var/lib/docker 和 /mnt/registry 挂载⾄少 100G
1. 3、 提前下载KubeSphere v3.0.0 all-in-one的离线包
SSH 免密
# ⽆交互初始化key
# ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
# cat ~/.ssh/id_rsa.pub 将所有节点的公共key收集后集中写⼊authorized_keys⽂件
# vi ~/.ssh/authorized_keys
# ssh -o stricthostkeychecking=no xxx # ⾸次登录免输⼊yes
#云端⼀般采⽤key登录,⽽且不会提供root密码,以下⽅式需要输⼊root密码,⼀般不适⽤,需要另外通过⼯具(⽐如saltstack)做authorized_keys⽂件的分发
# ssh-copy-id -i ~/.ssh/id_rsa.pub [x.xxx](mailto:x.xxx)
在离线环境中,可以使⽤私有包、RPM 包(适⽤于 CentOS)来安装这些依赖项
3)、三台主机配置主机名解析(此步骤可以忽略)
cat >> /etc/hosts << EOF
192.168.78.10 master
192.168.78.12 node12
192.168.78.13 node13
EOF
关闭防⽕墙
systemctl disable firewalld systemctl stop firewalld sed -i 's/enforcing/disabled/' /etc/selinux/config setenforce 0
安装了这些依赖项
yum install socat conntrack ebtables ipset -y
步骤3:主节点上传并解压KubeSphere离线安装包
tar -zxvf kubesphere-all-v3.0.
cd kubesphere-all-v3.0.0-offline-linux-amd64
步骤4、创建并修改集配置⽂件
创建集配置⽂件
./kk create config --with-kubernetes v1.18.6 --with-kubesphere v3.0.0
vi config-sample.yaml
privateRegistry: dockerhub.kubekey.local
其他的配置默认false最⼩化安装 因为后⾯需要可以⾃⾏开启
需要在配置⽂件中添加节点信息及私有仓库地址privateRegistry
为了⽅便起见,我这⾥使⽤kubekey创建私有仓库,则该参数privateRegistry设置为:dockerhub.kubekey.local 由于我已经本地编辑好了config-sample.yaml,直接覆盖
#请根据⾃⼰实际的环境修改config-sample.yaml
cp -rf /root/config-sample.yaml ./
执⾏如下命令会对配置⽂件中所有节点安装依赖,并使⽤kk创建⾃签名镜像仓库
./kk init os -f config-sample.yaml -s ./dependencies/ --add-images-repo
docker images
步骤5、镜像导⼊
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论