正在生成
详细信息:
检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
"k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) // HwfkaSpec defines the desired
创建API和Controller 根据以上设计的CR,在项目工程中创建对应的CRD类型: $ kubebuilder create api --group osctest --version v1 --kind Hwfka Create Resource [y/n] y Create
yaml文件中增加引用监控能力的配置。 apiVersion: osc.io/v1beta1 kind: CustomServiceDefinition metadata: name: helmrelease-csd spec: CRDRef: apiVersion: apiextensions
capabilityRequirements: - apiVersion: osc.io/v1 kind: MonitorConfig defaultPath: vendor/monitor_config.yaml - apiVersion: osc.io/v1
oscctl工具使用 oscctl是一款用于生成华为云OSC服务包脚手架或者将开源Helm或Operator服务包转换为OSC服务包的命令行工具。 工具安装 下载链接:https://oscctl.obs.cn-east-3.myhuaweicloud.com/oscctl-22
└─ xxx_csd.yaml │ └─ vendor/ #【可选】公共能力目录 │ ├─ monitor_config.yaml #【可选】监控对接的默认配置,参见如何配置监控 │ ├─ log_config.yaml
ts: - apiVersion: osc.io/v1 # 引用平台监控capability kind: MonitorConfig defaultPath: vendor/monitor_config.yaml - apiVersion:
downloading k8s.io/component-base v0.22.1 go: downloading k8s.io/apiextensions-apiserver v0.22.1 Update dependencies: go mod tidy go: downloading
manifests/ │ ├─ xxx_crd.yaml │ ├─ xxx_csd.yaml │ └─ vendor/ │ ├─ monitor_config.yaml │ ├─ logs_config.yaml ├─ raw/ │ ├─ Chart.yaml
以etcd operator为例,etcdoperator.v0.9.4.clusterserviceversion.yaml的内容为: apiVersion: operators.coreos.com/v1alpha1 kind: ClusterServiceVersion metadata:
查看审计日志 云审计服务支持的OSC操作列表 查询审计事件
服务插件管理 OSC中有服务管理和运维能力两类插件,服务管理插件用来管理服务实例的生命周期,由服务提供商提供,当集群首次部署对应服务实例时,会自动安装对应服务的管理插件。服务运维能力插件由OSC提供,当部署的服务声明了诸如日志、监控等运维能力配置时,集群中如果没有对应的运维能力插件,OSC会自动安装。
服务实例日常操作 查看实例信息 查看监控信息 查看服务实例日志 升级服务实例 变更实例规格 修改配置参数(可选) 执行实例运维动作(可选)
生成代码和资源描述文件 修改api/v1/memcached_types.go或controller中的markers之后,需要重新生成代码和资源描述文件。 # 生成 api/v1/zz_generated.deepcopy.go make generate # 生成 config/crd/bases
服务管理 初次使用私有服务上传功能前,如何关联企业仓库实例? 集群中服务Operator CR被误删后,页面删除实例失败时应如何处理? 商用服务预上架失败,报"缺少必要的服务提供者的联系信息" 服务Operator资源被误删后,删除实例失败时如何清理? 集群安装新版本服务包后,crd不会自动更新
约束与说明 OSC的服务规范兼容Helm和Operator,提供商无需修改业务代码,只需要打包成满足OSC规范的服务包,就可以发布到OSC上。 想使用OSC提供的高级能力,比如监控、日志等运维能力,在Helm或者Operator服务包中添加配置文件,对接平台运维能力,然后再按照制作流程的指导制作服务包。
开源服务包规范 OSC服务规范同时支持当前业界使用较为广泛的两种开发服务规范:Helm服务规范和Operator-Framework服务规范。 OSC服务平台支持部署上述两种开源的服务包,但是如需同时使用OSC对外提供的运维和表单控件能力,则需要将部署包转换为符合OSC规范格式的
charts目录 templates目录 {Helm}/ ├─ Chart.yaml #【必选】包含了chart信息文件,包括api版本、名称、描述、图标、类型、注释 ├─ values.yaml #【必选】参数值文档,为templates下的文档配置参数值
开发Operator 开发原理 在本章节以Kafka为例,构建Kafka-Operator进行Kafka实例的管理,同时Kafka实例将以三节点集群的形式对外提供服务。对于Kafka实例/集群而言,需要依托于zookeeper进行构建,zookeeper用作Kafka集群的元数据
构建Operator CRD介绍 创建Operator项目 创建API和Controller 父主题: 开发Operator