检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
)。 权限设计 下面以一个公司为例进行介绍。 通常一个公司中有多个部门或项目,每个部门又有多个成员,所以在配置权限前需要先进行详细设计,并在设置权限之前提前为每个成员创建用户名,便于后续对用户进行用户组归属和权限设置。 下图为某公司某部门的组织架构图和相关人员的权限设计,本文将按照该设计对每个角色的权限设置进行演示:
Headless Service使用场景 当某个工作负载的多个Pod之间没有任何区别时,可以使用普通Service,利用集群kube-proxy实现Service的负载均衡,例如常见的无状态应用Nginx。 但是某些应用场景下,工作负载的各个实例间存在不同的角色区别,比如Redis集群
使用Jenkins和Gitlab实现多集群隔离的DevOps流程 方案概述 资源规划 实施步骤 父主题: DevOps
搭建Jenkins和Gitlab环境 配置集群环境 配置Gitlab项目 持续集成及持续部署 父主题: 使用Jenkins和Gitlab实现多集群隔离的DevOps流程
从代码提交到部署上线,实现全流程自动化,极大提高交付效率。 使用容器化构建应用程序,做到即开即用,可实现低成本复用。 多Kubernetes集群隔离,保证测试、生产环境独立运行、互不影响。 父主题: 使用Jenkins和Gitlab实现多集群隔离的DevOps流程
peer-XA:连通vpc-X和vpc-A的网络。 peer-XB:连通vpc-X和vpc-B的网络。 父主题: 使用Jenkins和Gitlab实现多集群隔离的DevOps流程
使用ASM实现灰度发布和蓝绿发布 应用服务网格(Application Service Mesh,简称ASM)是基于开源Istio推出的服务网格平台,它深度、无缝对接了企业级Kubernetes集群服务云容器引擎(CCE),在易用性、可靠性、可视化等方面进行了一系列增强,可为客户提供开箱即用的上手体验。
配置集群环境 前提条件 创建2个新的VPC,且网段互不重叠。本示例中名为vpc-A,所使用网段为172.16.0.0/16,另一个名为vpc-B,所使用网段为172.17.0.0/16。 创建测试集群 登录CCE控制台,在“集群管理”页面右上角单击“购买集群”。 填写集群配置,其
使用HPA+CA实现工作负载和节点联动弹性伸缩 应用场景 企业应用的流量大小不是每时每刻都一样,有高峰,有低谷,如果每时每刻都要保持能够扛住高峰流量的机器数目,那么成本会很高。通常解决这个问题的办法就是根据流量大小或资源占用率自动调节机器的数量,也就是弹性伸缩。 当使用Pod/容
配置Gitlab项目 获取源码到本地。本实践中将使用一个Java示例。 在Gitlab上创建ccedemo项目组。 在ccedemo项目组中添加java-demo项目。 上传项目代码至本地Gitlab仓库。 cd ~/java-demo-main //目录地址按实际情况 git
搭建Jenkins和Gitlab环境 前提条件 创建一个新的VPC,本示例中名为vpc-X,所使用网段为192.168.0.0/16。 创建一台位于vpc-X(192.168.0.0/16网段)的ECS服务器,推荐规格为4vCPUs 16GiB,系统为Huawei Cloud EulerOS
原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂流程编排与可视化。其作为Jenkins2.X 最核心的特性,帮助Jenkins实现从CI到CD与DevOps的转变。因此,Pipeline脚本编写是整个方案实现的关键。 Pipeline脚本大致涉及到以下概念:
rviceStage)的区别是什么? 对于使用者而言,云容器引擎关注的重点是Pod的部署,应用管理与运维平台关注的是服务的使用。 对于技术实现来看,应用管理与运维平台是对云容器引擎的再一次封装。 基础概念 云容器引擎(CCE) 云容器引擎(Cloud Container Engi
调度策略:通过配置亲和与反亲和规则,可实现灵活的工作负载调度,支持负载亲和与节点亲和。 负载亲和:提供常用的负载亲和策略,快速实现负载亲和部署。 不配置:不设置负载亲和策略。 优先多可用区部署:通过设置Pod间反亲和(podAntiAffinity)实现,优先将工作负载的Pod调度到不同可用区的节点上。
编写Dockerfile文件 镜像是容器的基础,容器基于镜像定义的内容来运行。镜像是多层存储,每一层是前一层基础上进行的修改。 定制镜像时,一般使用Dockerfile来完成。Dockerfile是一个文本文件,其内包含了一条条的指令,每一条指令构建镜像的其中一层,因此每一条指令的内容,就是描述该层应该如何构建。
升级实例过程中实现业务不中断 应用场景 在Kubernetes集群中,应用通常采用Deployment + LoadBalancer类型Service的方式对外提供访问。应用更新或升级时,Deployment会创建新的Pod并逐步替换旧的Pod,这个过程中可能会导致服务中断。 解决方案
通过配置kubeconfig文件实现集群权限精细化管理 问题场景 CCE默认的给用户的kubeconfig文件为cluster-admin角色的用户,相当于root权限,对于一些用户来说权限太大,不方便精细化管理。 目标 对集群资源进行精细化管理,让特定用户只能拥有部分权限(如:增、查、改)。
fix it urgently,如图: 原因定位 VPC网络模式的集群采用了linux开源社区的ipvlan模块实现容器网络通信,这一日志打印与ipvlan的设计实现有关,ipvlan L2E模式它优先进行二层转发,再进行三层转发。 场景还原: 假定有业务Pod A,它持续对外提
100m,内存500Mi。 若cce-hpa-controller插件版本低于1.2.11,不支持使用云原生监控插件插件提供Metrics API来实现工作负载弹性伸缩。 创建CustomedHPA策略后,不支持将已关联的工作负载修改为其他工作负载。 创建CustomedHPA策略 在CCE控制台,单击集群名称进入集群。
使用Kubeflow和Volcano实现典型AI训练任务 Kubernetes已经成为云原生应用编排、管理的事实标准, 越来越多的应用选择向Kubernetes迁移。人工智能和机器学习领域天然的包含大量的计算密集型任务,开发者非常愿意基于Kubernetes构建AI平台,充分利用