model

package
v0.0.35-rc Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 15, 2021 License: Apache-2.0, BSD-2-Clause, BSD-3-Clause Imports: 4 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddJobs

type AddJobs struct {
	// 作业类型码。 1:MapReduce 2:Spark 3:Hive Script 4:HiveSQL(当前不支持) 5:DistCp,导入、导出数据,(当前不支持)。 6:Spark Script 7:Spark SQL,提交SQL语句,(当前不支持)。 说明: 只有包含Spark和Hive组件的集群才能新增Spark和Hive类型的作业。
	JobType int32 `json:"job_type"`
	// 作业名称。 只能由字母、数字、中划线和下划线组成,并且长度为1~64个字符。 说明: 不同作业的名称允许相同,但不建议设置相同。
	JobName string `json:"job_name"`
	// 执行程序Jar包或sql文件地址,需要满足如下要求: 最多为1023字符,不能包含;|&>,<'$特殊字符,且不可为空或全空格。 文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。 OBS:以“s3a://”开头。不支持KMS加密的文件或程序。 HDFS:以“/”开头。 Spark Script需要以“.sql”结尾,MapReduce和Spark Jar需要以“.jar”结尾,sql和jar不区分大小写。
	JarPath *string `json:"jar_path,omitempty"`
	// 程序执行的关键参数,该参数由用户程序内的函数指定,MRS只负责参数的传入。 最多为2047字符,不能包含;|&>'<$特殊字符,可为空。
	Arguments *string `json:"arguments,omitempty"`
	// 数据输入地址。 文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。 OBS:以“s3a://”开头。不支持KMS加密的文件或程序。 HDFS:以“/”开头。 最多为1023字符,不能包含;|&>'<$特殊字符,可为空。
	Input *string `json:"input,omitempty"`
	// 数据输出地址。 文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。 OBS:以“s3a://”开头。 HDFS:以“/”开头。 如果该路径不存在,系统会自动创建。 最多为1023字符,不能包含;|&>'<$特殊字符,可为空。
	Output *string `json:"output,omitempty"`
	// 作业日志存储地址,该日志信息记录作业运行状态。 文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。 OBS:以“s3a://”开头。 HDFS:以“/”开头。 最多为1023字符,不能包含;|&>'<$特殊字符,可为空。
	JobLog *string `json:"job_log,omitempty"`
	// sql程序路径,仅Spark Script和Hive Script作业需要使用此参数。需要满足如下要求: 最多为1023字符,不能包含;|&><'$特殊字符,且不可为空或全空格。 文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。 OBS:以“s3a://”开头。不支持KMS加密的文件或程序。 HDFS:以“/”开头。 需要以“.sql”结尾,sql不区分大小写。
	HiveScriptPath *string `json:"hive_script_path,omitempty"`
	// HQL脚本语句。
	Hql *string `json:"hql,omitempty"`
	// 作业执行完成后,是否删除集群。  true:是 false:否
	ShutdownCluster *bool `json:"shutdown_cluster,omitempty"`
	// true:创建集群同时提交作业 false:单独提交作业 此处应设置为true。
	SubmitJobOnceClusterRun bool `json:"submit_job_once_cluster_run"`
	// 数据导入导出。 import export
	FileAction *string `json:"file_action,omitempty"`
}

func (AddJobs) String

func (o AddJobs) String() string

type AutoScalingPolicy

type AutoScalingPolicy struct {
	// 当前自动伸缩规则是否开启。
	AutoScalingEnable bool `json:"auto_scaling_enable"`
	// 指定该节点组的最小保留节点数。  取值范围:[0~500]
	MinCapacity int32 `json:"min_capacity"`
	// 指定该节点组的最大节点数。  取值范围:[0~500]
	MaxCapacity int32 `json:"max_capacity"`
	// 资源计划列表,详细说明请参见[表8](https://support.huaweicloud.com/api-mrs/mrs_02_0028.html#mrs_02_0028__table10281451162111)。若该参数为空表示不启用资源计划。  当启用弹性伸缩时,资源计划与自动伸缩规则需至少配置其中一种。  MRS 1.6.0及以后版本支持该参数。
	ResourcesPlans *[]ResourcesPlan `json:"resources_plans,omitempty"`
	// 自动伸缩的规则列表,详细说明请参见[表10](https://support.huaweicloud.com/api-mrs/mrs_02_0028.html#mrs_02_0028__t4c9e3e169631470d81d260543affb7e1https://support.huaweicloud.com/api-mrs/mrs_02_0028.html#mrs_02_0028__t4c9e3e169631470d81d260543affb7e1)。  当启用弹性伸缩时,资源计划与自动伸缩规则需至少配置其中一种。
	Rules *[]Rules `json:"rules,omitempty"`
	// 弹性伸缩自定义自动化脚本列表。详细说明请参见[表9](https://support.huaweicloud.com/api-mrs/mrs_02_0028.html#mrs_02_0028__table1921110172216)。若该参数为空表示不启用钩子脚本。  MRS 1.7.1及以后版本支持该参数。
	ExecScripts *[]ScaleScript `json:"exec_scripts,omitempty"`
}

func (AutoScalingPolicy) String

func (o AutoScalingPolicy) String() string

type BootstrapScript

type BootstrapScript struct {
	// 引导操作脚本的名称,同一个集群的引导操作脚本名称不允许相同。  只能由数字、英文字符、空格、中划线和下划线组成,且不能以空格开头。  可输入的字符串长度为1~64个字符。
	Name string `json:"name"`
	// 引导操作脚本的路径。设置为OBS桶的路径或虚拟机本地的路径。 OBS桶的路径:直接手动输入脚本路径。例如输入MRS提供的公共样例脚本路径。示例:s3a://bootstrap/presto/presto-install.sh,其中安装dualroles时,presto-install.sh脚本参数为dualroles , 安装worker时,presto-install.sh脚本参数为worker。根据Presto使用习惯,建议您在Active Master节点上安装dualroles,在Core节点上安装worker。 虚拟机本地的路径:用户需要输入正确的脚本路径。脚本所在的路径必须以‘/’开头,以.sh结尾。
	Uri string `json:"uri"`
	// 引导操作脚本参数。
	Parameters *string `json:"parameters,omitempty"`
	// 引导操作脚本所执行的节点类型,包含Master、Core和Task三种类型。
	Nodes []string `json:"nodes"`
	// 引导操作脚本是否只运行在主Master节点上。 缺省值为false,表示引导操作脚本可运行在所有Master节点上。
	ActiveMaster *bool `json:"active_master,omitempty"`
	// 引导操作脚本执行失败后,是否继续执行后续脚本和创建集群。 continue:继续执行后续脚本。 errorout:终止操作。 缺省值为errorout,表示终止操作。 说明: 建议您在调试阶段设置为“继续”,无论此引导操作是否执行成功,则集群都能继续安装和启动。
	FailAction BootstrapScriptFailAction `json:"fail_action"`
	// 引导操作脚本执行的时间。目前支持“组件启动前”和“组件启动后”两种类型。 缺省值为false,表示引导操作脚本在组件启动后执行。
	BeforeComponentStart *bool `json:"before_component_start,omitempty"`
}

func (BootstrapScript) String

func (o BootstrapScript) String() string

type BootstrapScriptFailAction

type BootstrapScriptFailAction struct {
	// contains filtered or unexported fields
}

func (BootstrapScriptFailAction) MarshalJSON

func (c BootstrapScriptFailAction) MarshalJSON() ([]byte, error)

func (*BootstrapScriptFailAction) UnmarshalJSON

func (c *BootstrapScriptFailAction) UnmarshalJSON(b []byte) error

type BootstrapScriptFailActionEnum

type BootstrapScriptFailActionEnum struct {
	CONTINUE BootstrapScriptFailAction
	ERROROUT BootstrapScriptFailAction
}

func GetBootstrapScriptFailActionEnum

func GetBootstrapScriptFailActionEnum() BootstrapScriptFailActionEnum

type ComponentList

type ComponentList struct {
	//   组件名称  MRS 2.1.0及之后版本支持Presto、Hadoop、Spark、HBase、Hive、Tez、Hue、Loader、Flink、Impala、Kudu、Flume、Kafka和Storm组件。 MRS 2.0.5版本支持Presto、Hadoop、Spark、HBase、Hive、Tez、Hue、Loader、Flume、Kafka和Storm组件。 MRS 1.8.10版本支持Presto、Hadoop、Spark、HBase、Opentsdb、Hive、Hue、Loader、Flink、Flume、Kafka、KafkaManager和Storm组件。
	ComponentName string `json:"component_name"`
}

func (ComponentList) String

func (o ComponentList) String() string

type CreateClusterReq

type CreateClusterReq struct {
	// 集群版本。 MRS目前支持MRS 1.8.10、MRS 2.0.5、MRS 2.1.0版本。默认值为当前最新版本。
	ClusterVersion *string `json:"cluster_version,omitempty"`
	// 集群名称,不允许相同。 只能由字母、数字、中划线和下划线组成,并且长度为1~64个字符。
	ClusterName string `json:"cluster_name"`
	// Master节点数量。启用集群高可用功能时配置为2,不启用集群高可用功能时配置为1。
	MasterNodeNum CreateClusterReqMasterNodeNum `json:"master_node_num"`
	// Core节点数量。  取值范围:[1~500]  Core节点默认的最大值为500,如果用户需要的Core节点数大于500,请申请扩大配额,具体请参考[关于配额](https://support.huaweicloud.com/usermanual-iaas/zh-cn_topic_0040259342.html)
	CoreNodeNum int32 `json:"core_node_num"`
	// 集群的计费模式。  11:表示包年/包月。 12:表示按需计费。接口调用仅支持创建按需计费集群
	BillingType CreateClusterReqBillingType `json:"billing_type"`
	// 集群区域信息,请参见[终端节点及区域](https://developer.huaweicloud.com/endpoint?MRS)。
	DataCenter string `json:"data_center"`
	// 子网所在VPC名称。 通过VPC管理控制台获取名称: 登录管理控制台。 单击“虚拟私有云”,从左侧列表选择虚拟私有云。 在“虚拟私有云”页面的列表中即可获取VPC名称。
	Vpc string `json:"vpc"`
	// Master节点的实例规格,例如:c3.4xlarge.2.linux.bigdata。MRS当前支持主机规格的配型由CPU+内存+Disk共同决定。实例规格详细说明请参见[MRS所使用的弹性云服务器规格](https://support.huaweicloud.com/api-mrs/mrs_01_9006.html)和[MRS所使用的裸金属服务器规格](https://support.huaweicloud.com/api-mrs/mrs_01_9001.html)。
	MasterNodeSize string `json:"master_node_size"`
	// Core节点的实例规格,例如:c3.4xlarge.2.linux.bigdata。实例规格详细说明请参见[MRS所使用的弹性云服务器规格](https://support.huaweicloud.com/api-mrs/mrs_01_9006.html)和[MRS所使用的裸金属服务器规格](https://support.huaweicloud.com/api-mrs/mrs_01_9001.html)。
	CoreNodeSize string `json:"core_node_size"`
	// 服务组件安装列表信息。参数说明请参见[表5](https://support.huaweicloud.com/api-mrs/mrs_02_0028.html#mrs_02_0028__te1288dba79844d3fa5973939a3739d34)。
	ComponentList []ComponentList `json:"component_list"`
	// 可用分区ID。  华北-北京一可用区1(cn-north-1a):ae04cf9d61544df3806a3feeb401b204 华北-北京一可用区2(cn-north-1b):d573142f24894ef3bd3664de068b44b0 华东-上海二可用区1(cn-east-2a):72d50cedc49846b9b42c21495f38d81c 华东-上海二可用区2(cn-east-2b):38b0f7a602344246bcb0da47b5d548e7 华东-上海二可用区3(cn-east-2c):5547fd6bf8f84bb5a7f9db062ad3d015 华南-广州可用区1(cn-south-1a):34f5ff4865cf4ed6b270f15382ebdec5 华南-广州可用区2(cn-south-2b):043c7e39ecb347a08dc8fcb6c35a274e 华南-广州可用区3(cn-south-1c):af1687643e8c4ec1b34b688e4e3b8901 华北-北京四可用区1(cn-north-4a):effdcbc7d4d64a02aa1fa26b42f56533 华北-北京四可用区2(cn-north-4b):a0865121f83b41cbafce65930a22a6e8 华北-北京四可用区3(cn-north-4c):2dcb154ac2724a6d92e9bcc859657c1e
	AvailableZoneId string `json:"available_zone_id"`
	// 子网所在VPC ID。 通过VPC管理控制台获取ID: 登录管理控制台。 单击“虚拟私有云”,从左侧列表选择虚拟私有云。 在“虚拟私有云”页面的列表中即可获取VPC ID。
	VpcId string `json:"vpc_id"`
	// 网络ID。 通过VPC管理控制台获取网络ID: 登录管理控制台。 单击“虚拟私有云”,从左侧列表选择虚拟私有云。 在“虚拟私有云”页面的列表中即可获取VPC网络ID。
	SubnetId string `json:"subnet_id"`
	// 子网名称。 通过VPC管理控制台获取子网名称: 登录管理控制台。 单击“虚拟私有云”,从左侧列表选择虚拟私有云。 在“虚拟私有云”页面的列表中即可获取VPC子网名称。
	SubnetName string `json:"subnet_name"`
	// 集群安全组的ID。 当该ID为空时MRS后台会自己创建安全组,自动创建的安全组名称以mrs_{cluster_name}开头。 当该ID不为空时,表示使用固定安全组来创建集群,传入的ID必须是当前租户中包含的安全组ID,且该安全组中包含一条全部协议,全部端口,源地址为指定的管理面节点IP的入方向规则。
	SecurityGroupsId *string `json:"security_groups_id,omitempty"`
	// 创建集群时可同时提交作业,当前版本暂时只支持新增一个作业,作业参数请参见[表6](https://support.huaweicloud.com/api-mrs/mrs_02_0028.html#mrs_02_0028__t8ded0b3ae11742cea98a467ce26fd093)。
	AddJobs *[]AddJobs `json:"add_jobs,omitempty"`
	// Master和Core节点数据磁盘存储空间。为增大数据存储容量,创建集群时可同时添加磁盘。可以根据如下应用场景合理选择磁盘存储空间大小: 数据存储和计算分离,数据存储在OBS系统中,集群费用相对较低,计算性能不高,并且集群随时可以删除,建议数据计算不频繁场景下使用。 数据存储和计算不分离,数据存储在HDFS中,集群费用相对较高,计算性能高,集群需要长期存在,建议数据计算频繁场景下使用。 取值范围:100GB~32000GB,传值只需填数字,不需要带单位GB 不建议使用该参数,详情请参考volume_type参数的说明。
	VolumeSize *int32 `json:"volume_size,omitempty"`
	// Master和Core节点的磁盘存储类别,目前支持SATA、SAS和SSD。磁盘参数可以使用volume_type和volume_size表示,也可以使用多磁盘相关的参数表示。volume_type和volume_size这两个参数如果与多磁盘参数同时出现,系统优先读取volume_type和volume_size参数。建议使用多磁盘参数。 SATA:普通IO SAS:高IO SSD:超高IO
	VolumeType *CreateClusterReqVolumeType `json:"volume_type,omitempty"`
	// 该参数为多磁盘参数,表示Master节点数据磁盘存储类别,目前支持SATA、SAS和SSD。
	MasterDataVolumeType *CreateClusterReqMasterDataVolumeType `json:"master_data_volume_type,omitempty"`
	// 该参数为多磁盘参数,表示Master节点数据磁盘存储空间。为增大数据存储容量,创建集群时可同时添加磁盘。 取值范围:100GB~32000GB,传值只需填数字,不需要带单位GB
	MasterDataVolumeSize *int32 `json:"master_data_volume_size,omitempty"`
	// 该参数为多磁盘参数,表示Master节点数据磁盘个数。 取值只能是1
	MasterDataVolumeCount *CreateClusterReqMasterDataVolumeCount `json:"master_data_volume_count,omitempty"`
	// 该参数为多磁盘参数,表示Core节点数据磁盘存储类别,目前支持SATA、SAS和SSD。
	CoreDataVolumeType *CreateClusterReqCoreDataVolumeType `json:"core_data_volume_type,omitempty"`
	// 该参数为多磁盘参数,表示Core节点数据磁盘存储空间。为增大数据存储容量,创建集群时可同时添加磁盘。 取值范围:100GB~32000GB,传值只需填数字,不需要带单位GB
	CoreDataVolumeSize *int32 `json:"core_data_volume_size,omitempty"`
	// 该参数为多磁盘参数,表示Core节点数据磁盘个数。 取值范围:1~10
	CoreDataVolumeCount *int32 `json:"core_data_volume_count,omitempty"`
	// Task节点列表信息。参数说明请参见[表4](https://support.huaweicloud.com/api-mrs/mrs_02_0028.html#mrs_02_0028__tc6bfa2a3d7a348d786a901f3a9327b50)。
	TaskNodeGroups *[]TaskNodeGroups `json:"task_node_groups,omitempty"`
	// 配置引导操作脚本信息。参数说明请参见[表13](https://support.huaweicloud.com/api-mrs/mrs_02_0028.html#mrs_02_0028__table1258382865010)。 MRS 1.7.1及以后版本支持该参数。
	BootstrapScripts *[]BootstrapScript `json:"bootstrap_scripts,omitempty"`
	// 密钥对名称。用户可以使用密钥对方式登录集群节点。
	NodePublicCertName *string `json:"node_public_cert_name,omitempty"`
	// 配置MRS Manager管理员用户的密码。 密码长度应在8~32个字符之间 必须包含如下5种中至少3种字符的组合 至少一个小写字母 至少一个大写字母 至少一个数字 至少一个特殊字符:`~!@#$%^&*()-_=+\\|[{}];:'\",<.>/? 空格 不能与用户名或者倒序用户名相同 说明: 针对MRS 1.8.0以前的版本,仅当“safe_mode”配置为“1”时需要配置此参数。 针对MRS 1.8.0及以后版本,该参数为必选参数,不受参数“safe_mode”配置的影响。
	ClusterAdminSecret *string `json:"cluster_admin_secret,omitempty"`
	// 配置访问集群节点的root密码。 密码设置约束如下: 字符串类型,可输入的字符串长度为8-26。 至少包含三种字符组合,如大写字母,小写字母,数字,特殊字符(!@$%^-_=+[{}]:,./?),但不能包含空格。 不能与用户名或者倒序用户名相同。
	ClusterMasterSecret *string `json:"cluster_master_secret,omitempty"`
	// MRS集群运行模式。 0:普通集群,表示Kerberos认证关闭,用户可使用集群提供的所有功能。 1:安全集群,表示Kerberos认证开启,普通用户无权限使用MRS集群的“文件管理”和“作业管理”功能,并且无法查看Hadoop、Spark的作业记录以及集群资源使用情况。如果需要使用集群更多功能,需要找MRS Manager的管理员分配权限。 说明: 针对MRS 1.8.0以前的版本,仅当“safe_mode”配置为“1”时,请求消息体中包含cluster_admin_secret字段。 针对MRS 1.8.0及以后版本,请求消息体中包含cluster_admin_secret字段,不受参数“safe_mode”配置的影响。
	SafeMode CreateClusterReqSafeMode `json:"safe_mode"`
	// 集群类型。 0:分析集群 1:流式集群 默认值为0:分析集群。 说明:暂不支持通过接口方式创建混合集群。
	ClusterType *CreateClusterReqClusterType `json:"cluster_type,omitempty"`
	// 集群创建失败时,是否收集失败日志。  0:不收集 1:收集 默认设置为1,将创建OBS桶仅用于MRS集群创建失败时的日志收集。
	LogCollection *CreateClusterReqLogCollection `json:"log_collection,omitempty"`
	// 集群的标签信息。 同一个集群最多能使用10个tag,tag的名称(key)不能重复 标签的键/值不能包含“=”,“*”,“<”,“>”,“\\”,“,”,“|”,“/”
	Tags *[]Tag `json:"tags,omitempty"`
	// 集群登录方式。 0:密码方式 1:密钥对方式 默认设置为1。 当“login_mode”配置为“0”时,请求消息体中包含cluster_master_secret字段。 当“login_mode”配置为“1”时,请求消息体中包含node_public_cert_name字段。 说明: 该参数仅适用于MRS 1.6.2及以后版本的集群,MRS 1.6.2前的版本不支持。
	LoginMode *CreateClusterReqLoginMode `json:"login_mode,omitempty"`
}

func (CreateClusterReq) String

func (o CreateClusterReq) String() string

type CreateClusterReqBillingType

type CreateClusterReqBillingType struct {
	// contains filtered or unexported fields
}

func (CreateClusterReqBillingType) MarshalJSON

func (c CreateClusterReqBillingType) MarshalJSON() ([]byte, error)

func (*CreateClusterReqBillingType) UnmarshalJSON

func (c *CreateClusterReqBillingType) UnmarshalJSON(b []byte) error

type CreateClusterReqBillingTypeEnum

type CreateClusterReqBillingTypeEnum struct {
	E_12 CreateClusterReqBillingType
}

func GetCreateClusterReqBillingTypeEnum

func GetCreateClusterReqBillingTypeEnum() CreateClusterReqBillingTypeEnum

type CreateClusterReqClusterType

type CreateClusterReqClusterType struct {
	// contains filtered or unexported fields
}

func (CreateClusterReqClusterType) MarshalJSON

func (c CreateClusterReqClusterType) MarshalJSON() ([]byte, error)

func (*CreateClusterReqClusterType) UnmarshalJSON

func (c *CreateClusterReqClusterType) UnmarshalJSON(b []byte) error

type CreateClusterReqClusterTypeEnum

type CreateClusterReqClusterTypeEnum struct {
	E_0 CreateClusterReqClusterType
	E_1 CreateClusterReqClusterType
}

func GetCreateClusterReqClusterTypeEnum

func GetCreateClusterReqClusterTypeEnum() CreateClusterReqClusterTypeEnum

type CreateClusterReqCoreDataVolumeType

type CreateClusterReqCoreDataVolumeType struct {
	// contains filtered or unexported fields
}

func (CreateClusterReqCoreDataVolumeType) MarshalJSON

func (c CreateClusterReqCoreDataVolumeType) MarshalJSON() ([]byte, error)

func (*CreateClusterReqCoreDataVolumeType) UnmarshalJSON

func (c *CreateClusterReqCoreDataVolumeType) UnmarshalJSON(b []byte) error

type CreateClusterReqLogCollection

type CreateClusterReqLogCollection struct {
	// contains filtered or unexported fields
}

func (CreateClusterReqLogCollection) MarshalJSON

func (c CreateClusterReqLogCollection) MarshalJSON() ([]byte, error)

func (*CreateClusterReqLogCollection) UnmarshalJSON

func (c *CreateClusterReqLogCollection) UnmarshalJSON(b []byte) error

type CreateClusterReqLogCollectionEnum

type CreateClusterReqLogCollectionEnum struct {
	E_0 CreateClusterReqLogCollection
	E_1 CreateClusterReqLogCollection
}

func GetCreateClusterReqLogCollectionEnum

func GetCreateClusterReqLogCollectionEnum() CreateClusterReqLogCollectionEnum

type CreateClusterReqLoginMode

type CreateClusterReqLoginMode struct {
	// contains filtered or unexported fields
}

func (CreateClusterReqLoginMode) MarshalJSON

func (c CreateClusterReqLoginMode) MarshalJSON() ([]byte, error)

func (*CreateClusterReqLoginMode) UnmarshalJSON

func (c *CreateClusterReqLoginMode) UnmarshalJSON(b []byte) error

type CreateClusterReqLoginModeEnum

type CreateClusterReqLoginModeEnum struct {
	E_0 CreateClusterReqLoginMode
	E_1 CreateClusterReqLoginMode
}

func GetCreateClusterReqLoginModeEnum

func GetCreateClusterReqLoginModeEnum() CreateClusterReqLoginModeEnum

type CreateClusterReqMasterDataVolumeCount

type CreateClusterReqMasterDataVolumeCount struct {
	// contains filtered or unexported fields
}

func (CreateClusterReqMasterDataVolumeCount) MarshalJSON

func (c CreateClusterReqMasterDataVolumeCount) MarshalJSON() ([]byte, error)

func (*CreateClusterReqMasterDataVolumeCount) UnmarshalJSON

func (c *CreateClusterReqMasterDataVolumeCount) UnmarshalJSON(b []byte) error

type CreateClusterReqMasterDataVolumeCountEnum

type CreateClusterReqMasterDataVolumeCountEnum struct {
	E_1 CreateClusterReqMasterDataVolumeCount
}

func GetCreateClusterReqMasterDataVolumeCountEnum

func GetCreateClusterReqMasterDataVolumeCountEnum() CreateClusterReqMasterDataVolumeCountEnum

type CreateClusterReqMasterDataVolumeType

type CreateClusterReqMasterDataVolumeType struct {
	// contains filtered or unexported fields
}

func (CreateClusterReqMasterDataVolumeType) MarshalJSON

func (c CreateClusterReqMasterDataVolumeType) MarshalJSON() ([]byte, error)

func (*CreateClusterReqMasterDataVolumeType) UnmarshalJSON

func (c *CreateClusterReqMasterDataVolumeType) UnmarshalJSON(b []byte) error

type CreateClusterReqMasterNodeNum

type CreateClusterReqMasterNodeNum struct {
	// contains filtered or unexported fields
}

func (CreateClusterReqMasterNodeNum) MarshalJSON

func (c CreateClusterReqMasterNodeNum) MarshalJSON() ([]byte, error)

func (*CreateClusterReqMasterNodeNum) UnmarshalJSON

func (c *CreateClusterReqMasterNodeNum) UnmarshalJSON(b []byte) error

type CreateClusterReqMasterNodeNumEnum

type CreateClusterReqMasterNodeNumEnum struct {
	E_1 CreateClusterReqMasterNodeNum
	E_2 CreateClusterReqMasterNodeNum
}

func GetCreateClusterReqMasterNodeNumEnum

func GetCreateClusterReqMasterNodeNumEnum() CreateClusterReqMasterNodeNumEnum

type CreateClusterReqSafeMode

type CreateClusterReqSafeMode struct {
	// contains filtered or unexported fields
}

func (CreateClusterReqSafeMode) MarshalJSON

func (c CreateClusterReqSafeMode) MarshalJSON() ([]byte, error)

func (*CreateClusterReqSafeMode) UnmarshalJSON

func (c *CreateClusterReqSafeMode) UnmarshalJSON(b []byte) error

type CreateClusterReqSafeModeEnum

type CreateClusterReqSafeModeEnum struct {
	E_0 CreateClusterReqSafeMode
	E_1 CreateClusterReqSafeMode
}

func GetCreateClusterReqSafeModeEnum

func GetCreateClusterReqSafeModeEnum() CreateClusterReqSafeModeEnum

type CreateClusterReqVolumeType

type CreateClusterReqVolumeType struct {
	// contains filtered or unexported fields
}

func (CreateClusterReqVolumeType) MarshalJSON

func (c CreateClusterReqVolumeType) MarshalJSON() ([]byte, error)

func (*CreateClusterReqVolumeType) UnmarshalJSON

func (c *CreateClusterReqVolumeType) UnmarshalJSON(b []byte) error

type CreateClusterReqVolumeTypeEnum

type CreateClusterReqVolumeTypeEnum struct {
	SATA CreateClusterReqVolumeType
	SAS  CreateClusterReqVolumeType
	SSD  CreateClusterReqVolumeType
}

func GetCreateClusterReqVolumeTypeEnum

func GetCreateClusterReqVolumeTypeEnum() CreateClusterReqVolumeTypeEnum

type CreateClusterRequest

type CreateClusterRequest struct {
	Body *CreateClusterReq `json:"body,omitempty"`
}

Request Object

func (CreateClusterRequest) String

func (o CreateClusterRequest) String() string

type CreateClusterResponse

type CreateClusterResponse struct {
	//   操作结果。  true:操作成功 false:操作失败
	Result *bool `json:"result,omitempty"`
	// 系统提示信息,可为空。
	Msg *string `json:"msg,omitempty"`
	// 集群创建成功后系统返回的集群ID值。
	ClusterId      *string `json:"cluster_id,omitempty"`
	HttpStatusCode int     `json:"-"`
}

Response Object

func (CreateClusterResponse) String

func (o CreateClusterResponse) String() string

type DeleteClusterRequest

type DeleteClusterRequest struct {
	ClusterId string `json:"cluster_id"`
}

Request Object

func (DeleteClusterRequest) String

func (o DeleteClusterRequest) String() string

type DeleteClusterResponse

type DeleteClusterResponse struct {
	Body           *string `json:"body,omitempty"`
	HttpStatusCode int     `json:"-"`
}

Response Object

func (DeleteClusterResponse) String

func (o DeleteClusterResponse) String() string

type ResourcesPlan

type ResourcesPlan struct {
	// 资源计划的周期类型,当前只允许以下类型:  daily
	PeriodType string `json:"period_type"`
	// 资源计划的起始时间,格式为“hour:minute”,表示时间在0:00-23:59之间。
	StartTime string `json:"start_time"`
	// 资源计划的结束时间,格式与“start_time”相同,不早于start_time表示的时间,且与start_time间隔不小于30min。
	EndTime string `json:"end_time"`
	// 资源计划内该节点组的最小保留节点数。  取值范围:[0~500]
	MinCapacity int32 `json:"min_capacity"`
	// 资源计划内该节点组的最大保留节点数。  取值范围:[0~500]
	MaxCapacity int32 `json:"max_capacity"`
}

func (ResourcesPlan) String

func (o ResourcesPlan) String() string

type Rules

type Rules struct {
	// 弹性伸缩规则的名称。  只能由字母、数字、中划线和下划线组成,并且长度为1~64个字符。  在一个节点组范围内,不允许重名。
	Name string `json:"name"`
	// 弹性伸缩规则的说明。  最大长度为1024字符。
	Description *string `json:"description,omitempty"`
	// 弹性伸缩规则的调整类型,只允许以下类型:  scale_out:扩容 scale_in:缩容
	AdjustmentType RulesAdjustmentType `json:"adjustment_type"`
	// 触发弹性伸缩规则后,该集群处于冷却状态(不再执行弹性伸缩操作)的时长,单位为分钟。  取值范围[0~10080],10080为一周的分钟数。
	CoolDownMinutes int32 `json:"cool_down_minutes"`
	// 单次调整集群节点的个数。  取值范围[1~100]
	ScalingAdjustment int32    `json:"scaling_adjustment"`
	Trigger           *Trigger `json:"trigger"`
}

func (Rules) String

func (o Rules) String() string

type RulesAdjustmentType

type RulesAdjustmentType struct {
	// contains filtered or unexported fields
}

func (RulesAdjustmentType) MarshalJSON

func (c RulesAdjustmentType) MarshalJSON() ([]byte, error)

func (*RulesAdjustmentType) UnmarshalJSON

func (c *RulesAdjustmentType) UnmarshalJSON(b []byte) error

type RulesAdjustmentTypeEnum

type RulesAdjustmentTypeEnum struct {
	SCALE_OUT RulesAdjustmentType
	SCALE_IN  RulesAdjustmentType
}

func GetRulesAdjustmentTypeEnum

func GetRulesAdjustmentTypeEnum() RulesAdjustmentTypeEnum

type ScaleScript

type ScaleScript struct {
	// 弹性伸缩自定义自动化脚本的名称,同一个集群的自定义自动化脚本名称不允许相同。  只能由数字、英文字符、空格、中划线和下划线组成,且不能以空格开头。  可输入的字符串长度为1~64个字符。
	Name string `json:"name"`
	// 自定义自动化脚本的路径。设置为OBS桶的路径或虚拟机本地的路径。  OBS桶的路径:直接手动输入脚本路径。示例:s3a://XXX/scale.sh 虚拟机本地的路径:用户需要输入正确的脚本路径。脚本所在的路径必须以‘/’开头,以.sh结尾。
	Uri string `json:"uri"`
	// 自定义自动化脚本参数。  多个参数间用空格隔开。 可以传入以下系统预定义参数: ${mrs_scale_node_num}:扩缩容节点数 ${mrs_scale_type}:扩缩容类型,扩容为scale_out,缩容为scale_in ${mrs_scale_node_hostnames}:扩缩容的节点主机名称 ${mrs_scale_node_ips}:扩缩容的节点IP ${mrs_scale_rule_name}:触发扩缩容的规则名 其他用户自定义参数使用方式与普通shell脚本相同,多个参数中间用空格隔开。
	Parameters *string `json:"parameters,omitempty"`
	// 自定义自动化脚本所执行的节点类型,包含Master、Core和Task三种类型。
	Nodes []string `json:"nodes"`
	// 自定义自动化脚本是否只运行在主Master节点上。  缺省值为false,表示自定义自动化脚本可运行在所有Master节点上。
	ActiveMaster *bool `json:"active_master,omitempty"`
	// 自自定义自动化脚本执行失败后,是否继续执行后续脚本和创建集群。  continue:继续执行后续脚本。 errorout:终止操作。 说明: 建议您在调试阶段设置为“continue”,无论此自定义自动化脚本是否执行成功,则集群都能继续安装和启动。 由于缩容成功无法回滚,因此缩容后执行的脚本“fail_action”必须设置为“continue”。
	FailAction ScaleScriptFailAction `json:"fail_action"`
	// 脚本执行时机。  支持以下四个阶段:  before_scale_out:扩容前 before_scale_in:缩容前 after_scale_out:扩容后 after_scale_in:缩容后
	ActionStage ScaleScriptActionStage `json:"action_stage"`
}

func (ScaleScript) String

func (o ScaleScript) String() string

type ScaleScriptActionStage

type ScaleScriptActionStage struct {
	// contains filtered or unexported fields
}

func (ScaleScriptActionStage) MarshalJSON

func (c ScaleScriptActionStage) MarshalJSON() ([]byte, error)

func (*ScaleScriptActionStage) UnmarshalJSON

func (c *ScaleScriptActionStage) UnmarshalJSON(b []byte) error

type ScaleScriptActionStageEnum

type ScaleScriptActionStageEnum struct {
	BEFORE_SCALE_OUT ScaleScriptActionStage
	BEFORE_SCALE_IN  ScaleScriptActionStage
	AFTER_SCALE_OUT  ScaleScriptActionStage
	AFTER_SCALE_IN   ScaleScriptActionStage
}

func GetScaleScriptActionStageEnum

func GetScaleScriptActionStageEnum() ScaleScriptActionStageEnum

type ScaleScriptFailAction

type ScaleScriptFailAction struct {
	// contains filtered or unexported fields
}

func (ScaleScriptFailAction) MarshalJSON

func (c ScaleScriptFailAction) MarshalJSON() ([]byte, error)

func (*ScaleScriptFailAction) UnmarshalJSON

func (c *ScaleScriptFailAction) UnmarshalJSON(b []byte) error

type ScaleScriptFailActionEnum

type ScaleScriptFailActionEnum struct {
	CONTINUE ScaleScriptFailAction
	ERROROUT ScaleScriptFailAction
}

func GetScaleScriptFailActionEnum

func GetScaleScriptFailActionEnum() ScaleScriptFailActionEnum

type Tag

type Tag struct {
	// 键。标签的key值不能包含“=”,“*”,“<”,“>”,“\\”,“,”,“|”,“/”,且首尾字符不能为空格。
	Key string `json:"key"`
	// 值。标签的value值不能包含“=”,“*”,“<”,“>”,“\\”,“,”,“|”,“/”,且首尾字符不能为空格。
	Value string `json:"value"`
}

func (Tag) String

func (o Tag) String() string

type TaskNodeGroups

type TaskNodeGroups struct {
	// Task节点节点数量,取值范围0~500,Core与Task节点总数最大为500个。
	NodeNum int32 `json:"node_num"`
	// Task节点的实例规格,例如:c3.4xlarge.2.linux.bigdata。实例规格详细说明请参见[MRS所使用的弹性云服务器规格](https://support.huaweicloud.com/api-mrs/mrs_01_9006.html)和[MRS所使用的裸金属服务器规格](https://support.huaweicloud.com/api-mrs/mrs_01_9001.html)。
	NodeSize string `json:"node_size"`
	// Task节点数据磁盘存储类别,目前支持SATA、SAS和SSD。  SATA:普通IO SAS:高IO SSD:超高IO
	DataVolumeType TaskNodeGroupsDataVolumeType `json:"data_volume_type"`
	// Task节点数据磁盘存储数目  取值范围:0~10
	DataVolumeCount int32 `json:"data_volume_count"`
	// Task节点数据磁盘存储大小  取值范围:100GB~32000GB,传值只需填数字,不需要带单位GB
	DataVolumeSize    int32              `json:"data_volume_size"`
	AutoScalingPolicy *AutoScalingPolicy `json:"auto_scaling_policy,omitempty"`
}

func (TaskNodeGroups) String

func (o TaskNodeGroups) String() string

type TaskNodeGroupsDataVolumeType

type TaskNodeGroupsDataVolumeType struct {
	// contains filtered or unexported fields
}

func (TaskNodeGroupsDataVolumeType) MarshalJSON

func (c TaskNodeGroupsDataVolumeType) MarshalJSON() ([]byte, error)

func (*TaskNodeGroupsDataVolumeType) UnmarshalJSON

func (c *TaskNodeGroupsDataVolumeType) UnmarshalJSON(b []byte) error

type Trigger

type Trigger struct {
	// 指标名称。  该触发条件会依据该名称对应指标的值来进行判断。  最大长度为64个字符。  支持的指标名称请参考[表12](https://support.huaweicloud.com/api-mrs/mrs_02_0028.html#mrs_02_0028__t27de3279a99a48968dacb015c498d9cb)。
	MetricName string `json:"metric_name"`
	// 指标阈值。  触发该条件的指标阈值,只允许输入整数或者带两位小数的数,metric_name对应的指标数值类型和有效取值范围,请参考[表12](https://support.huaweicloud.com/api-mrs/mrs_02_0028.html#mrs_02_0028__t27de3279a99a48968dacb015c498d9cb)。
	MetricValue string `json:"metric_value"`
	// 指标判断逻辑运算符,包括:  LT:小于 GT:大于 LTOE:小于等于 GTOE:大于等于
	ComparisonOperator *string `json:"comparison_operator,omitempty"`
	// 判断连续满足指标阈值的周期数(一个周期为5分钟)。  取值范围[1~288]
	EvaluationPeriods int32 `json:"evaluation_periods"`
}

func (Trigger) String

func (o Trigger) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL