检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
OSC扩展说明 oscctl工具使用 父主题: 附录
创建存储 通过在集群中创建PVC的方式创建存储,典型的创建方式如下: EVS云硬盘 apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc-evs-auto-example namespace: default
挂载存储 在Kubernetes中,通过PersistentVolume(PV)方式挂载存储,典型的步骤如下: 创建PV,为集群提供存储服务。 apiVersion: v1 kind: PersistentVolume metadata: name: mypv1 annotations:
schema: openAPIV3Schema: description: Hwfka is the Schema for the hwfkas API properties: apiVersion:
OpenAPI校验 在定义CRD时,需同时定义基于OpenAPI的校验规则,其中包含创建CR时的字段及取值范围,以便校验用户创建的CR中字段值的合法性。使用Kubebuilder,可通过在API中定义Marker,自动生成spec.validation.openAPIV3Schema。
# 基于 openAPIV3Schema 的校验规则 validation: openAPIV3Schema: description: Memcached is the Schema for the Memcacheds API properties:
OSC console依据crd.yaml文件可以自动生成Operator的创建表单。crd.yaml文件中的properties(openAPIV3Schema.properties.spec.properties)对象会自动映射到对应的UI组件。 目前提供的基础类型控件分别有st
schema: openAPIV3Schema: description: HelmRelease is the Schema for the helmreleases API properties: apiVersion:
yaml文件中增加引用日志能力的配置。 apiVersion: osc.io/v1beta1 kind: CustomServiceDefinition metadata: name: helmrelease-csd spec: CRDRef: apiVersion: apiextensions
"k8s.io/api/apps/v1" corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/types"
CSD本身属于CustomServiceDefinition类型的资源,其符合k8s资源的通用定义方法。其apiVersion和kind是固定的,metadata.name可自行配置: apiVersion: osc.io/v1beta1 kind: CustomServiceDefinition
yaml中修改了服务包名、版本等内容,需要同步修改raw内的helm包中Chart.yaml内容。 HelmRelease CRD示例(crd.yaml) apiVersion: apiextensions.k8s.io/v1 # 默认创建v1版本的CRD kind: CustomResourceDefinition
downloading k8s.io/component-base v0.22.1 go: downloading k8s.io/apiextensions-apiserver v0.22.1 Update dependencies: go mod tidy go: downloading
控件类型 表单控件类型 1. 使用默认crd.yaml文件自动生成表单 由CRD中定义的openAPIV3Schema字段规定CR中可配置的参数以及这些参数的类型、范围,应用在创建CR的时候通过YAML文件指定这些参数。 2. 使用自定义csd.yaml文件生成表单 自动生成的创
k)服务支持自定义配置服务场景、支持架构等配置,其描述说明定义在clusterserviceversion.yaml中,具体样例如下: apiVersion: operators.coreos.com/v1alpha1 kind: ClusterServiceVersion metadata:
yaml文件中,其中Chart.yaml文件中有如下几个必填字段内容: version: 1.0.0 name: example-helm apiVersion: v1 description: A Helm chart for example. maintainers: - name:
增加的步骤。 用户需要在用户部署的deployment.yaml、statefulset.yaml等包含镜像下载的文件中增加如下配置。 apiVersion: apps/v1 kind: Deployment metadata: name: example spec: replicas:
capabilityRequirements: - apiVersion: osc.io/v1 kind: MonitorConfig defaultPath: vendor/monitor_config.yaml - apiVersion: osc.io/v1
以etcd operator为例,etcdoperator.v0.9.4.clusterserviceversion.yaml的内容为: apiVersion: operators.coreos.com/v1alpha1 kind: ClusterServiceVersion metadata:
"strconv" appsv1 "k8s.io/api/apps/v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime/schema"