# frozen_string_literal: true
# Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
module TencentCloud
module Emr
module V20190103
# AddUsersForUserManager请求参数结构体
class AddUsersForUserManagerRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群字符串ID
# @type InstanceId: String
# @param UserManagerUserList: 用户信息列表
# @type UserManagerUserList: Array
attr_accessor :InstanceId, :UserManagerUserList
def initialize(instanceid=nil, usermanageruserlist=nil)
@InstanceId = instanceid
@UserManagerUserList = usermanageruserlist
end
def deserialize(params)
@InstanceId = params['InstanceId']
unless params['UserManagerUserList'].nil?
@UserManagerUserList = []
params['UserManagerUserList'].each do |i|
userinfoforusermanager_tmp = UserInfoForUserManager.new
userinfoforusermanager_tmp.deserialize(i)
@UserManagerUserList << userinfoforusermanager_tmp
end
end
end
end
# AddUsersForUserManager返回参数结构体
class AddUsersForUserManagerResponse < TencentCloud::Common::AbstractModel
# @param SuccessUserList: 添加成功的用户列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SuccessUserList: Array
# @param FailedUserList: 添加失败的用户列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FailedUserList: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :SuccessUserList, :FailedUserList, :RequestId
def initialize(successuserlist=nil, faileduserlist=nil, requestid=nil)
@SuccessUserList = successuserlist
@FailedUserList = faileduserlist
@RequestId = requestid
end
def deserialize(params)
@SuccessUserList = params['SuccessUserList']
@FailedUserList = params['FailedUserList']
@RequestId = params['RequestId']
end
end
# 资源描述
class AllNodeResourceSpec < TencentCloud::Common::AbstractModel
# @param MasterResourceSpec: 描述Master节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MasterResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.NodeResourceSpec`
# @param CoreResourceSpec: 描述Core节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CoreResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.NodeResourceSpec`
# @param TaskResourceSpec: 描述Taskr节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TaskResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.NodeResourceSpec`
# @param CommonResourceSpec: 描述Common节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CommonResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.NodeResourceSpec`
# @param MasterCount: Master节点数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MasterCount: Integer
# @param CoreCount: Corer节点数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CoreCount: Integer
# @param TaskCount: Task节点数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TaskCount: Integer
# @param CommonCount: Common节点数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CommonCount: Integer
attr_accessor :MasterResourceSpec, :CoreResourceSpec, :TaskResourceSpec, :CommonResourceSpec, :MasterCount, :CoreCount, :TaskCount, :CommonCount
def initialize(masterresourcespec=nil, coreresourcespec=nil, taskresourcespec=nil, commonresourcespec=nil, mastercount=nil, corecount=nil, taskcount=nil, commoncount=nil)
@MasterResourceSpec = masterresourcespec
@CoreResourceSpec = coreresourcespec
@TaskResourceSpec = taskresourcespec
@CommonResourceSpec = commonresourcespec
@MasterCount = mastercount
@CoreCount = corecount
@TaskCount = taskcount
@CommonCount = commoncount
end
def deserialize(params)
unless params['MasterResourceSpec'].nil?
@MasterResourceSpec = NodeResourceSpec.new
@MasterResourceSpec.deserialize(params['MasterResourceSpec'])
end
unless params['CoreResourceSpec'].nil?
@CoreResourceSpec = NodeResourceSpec.new
@CoreResourceSpec.deserialize(params['CoreResourceSpec'])
end
unless params['TaskResourceSpec'].nil?
@TaskResourceSpec = NodeResourceSpec.new
@TaskResourceSpec.deserialize(params['TaskResourceSpec'])
end
unless params['CommonResourceSpec'].nil?
@CommonResourceSpec = NodeResourceSpec.new
@CommonResourceSpec.deserialize(params['CommonResourceSpec'])
end
@MasterCount = params['MasterCount']
@CoreCount = params['CoreCount']
@TaskCount = params['TaskCount']
@CommonCount = params['CommonCount']
end
end
# yarn application 统计信息
class ApplicationStatics < TencentCloud::Common::AbstractModel
# @param Queue: 队列名
# @type Queue: String
# @param User: 用户名
# @type User: String
# @param ApplicationType: 作业类型
# @type ApplicationType: String
# @param SumMemorySeconds: SumMemorySeconds含义
# @type SumMemorySeconds: Integer
# @param SumVCoreSeconds: SumVCoreSeconds含义
# @type SumVCoreSeconds: Integer
# @param SumHDFSBytesWritten: SumHDFSBytesWritten(带单位)
# @type SumHDFSBytesWritten: String
# @param SumHDFSBytesRead: SumHDFSBytesRead(待单位)
# @type SumHDFSBytesRead: String
# @param CountApps: 作业数
# @type CountApps: Integer
attr_accessor :Queue, :User, :ApplicationType, :SumMemorySeconds, :SumVCoreSeconds, :SumHDFSBytesWritten, :SumHDFSBytesRead, :CountApps
def initialize(queue=nil, user=nil, applicationtype=nil, summemoryseconds=nil, sumvcoreseconds=nil, sumhdfsbyteswritten=nil, sumhdfsbytesread=nil, countapps=nil)
@Queue = queue
@User = user
@ApplicationType = applicationtype
@SumMemorySeconds = summemoryseconds
@SumVCoreSeconds = sumvcoreseconds
@SumHDFSBytesWritten = sumhdfsbyteswritten
@SumHDFSBytesRead = sumhdfsbytesread
@CountApps = countapps
end
def deserialize(params)
@Queue = params['Queue']
@User = params['User']
@ApplicationType = params['ApplicationType']
@SumMemorySeconds = params['SumMemorySeconds']
@SumVCoreSeconds = params['SumVCoreSeconds']
@SumHDFSBytesWritten = params['SumHDFSBytesWritten']
@SumHDFSBytesRead = params['SumHDFSBytesRead']
@CountApps = params['CountApps']
end
end
# 弹性扩缩容记录
class AutoScaleRecord < TencentCloud::Common::AbstractModel
# @param StrategyName: 扩缩容规则名。
# @type StrategyName: String
# @param ScaleAction: "SCALE_OUT"和"SCALE_IN",分别表示扩容和缩容。
# @type ScaleAction: String
# @param ActionStatus: 取值为"SUCCESS","FAILED","PART_SUCCESS","IN_PROCESS",分别表示成功、失败、部分成功和流程中。
# @type ActionStatus: String
# @param ActionTime: 流程触发时间。
# @type ActionTime: String
# @param ScaleInfo: 扩缩容相关描述信息。
# @type ScaleInfo: String
# @param ExpectScaleNum: 只在ScaleAction为SCALE_OUT时有效。
# @type ExpectScaleNum: Integer
# @param EndTime: 流程结束时间。
# @type EndTime: String
# @param StrategyType: 策略类型,按负载或者按时间,1表示负载伸缩,2表示时间伸缩
# @type StrategyType: Integer
# @param SpecInfo: 扩容时所使用规格信息。
# @type SpecInfo: String
# @param CompensateFlag: 补偿扩容,0表示不开启,1表示开启
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CompensateFlag: Integer
# @param CompensateCount: 补偿次数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CompensateCount: Integer
# @param RetryCount: 重试次数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RetryCount: Integer
# @param RetryInfo: 重试信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RetryInfo: String
attr_accessor :StrategyName, :ScaleAction, :ActionStatus, :ActionTime, :ScaleInfo, :ExpectScaleNum, :EndTime, :StrategyType, :SpecInfo, :CompensateFlag, :CompensateCount, :RetryCount, :RetryInfo
def initialize(strategyname=nil, scaleaction=nil, actionstatus=nil, actiontime=nil, scaleinfo=nil, expectscalenum=nil, endtime=nil, strategytype=nil, specinfo=nil, compensateflag=nil, compensatecount=nil, retrycount=nil, retryinfo=nil)
@StrategyName = strategyname
@ScaleAction = scaleaction
@ActionStatus = actionstatus
@ActionTime = actiontime
@ScaleInfo = scaleinfo
@ExpectScaleNum = expectscalenum
@EndTime = endtime
@StrategyType = strategytype
@SpecInfo = specinfo
@CompensateFlag = compensateflag
@CompensateCount = compensatecount
@RetryCount = retrycount
@RetryInfo = retryinfo
end
def deserialize(params)
@StrategyName = params['StrategyName']
@ScaleAction = params['ScaleAction']
@ActionStatus = params['ActionStatus']
@ActionTime = params['ActionTime']
@ScaleInfo = params['ScaleInfo']
@ExpectScaleNum = params['ExpectScaleNum']
@EndTime = params['EndTime']
@StrategyType = params['StrategyType']
@SpecInfo = params['SpecInfo']
@CompensateFlag = params['CompensateFlag']
@CompensateCount = params['CompensateCount']
@RetryCount = params['RetryCount']
@RetryInfo = params['RetryInfo']
end
end
# 引导脚本
class BootstrapAction < TencentCloud::Common::AbstractModel
# @param Path: 脚本位置,支持cos上的文件,且只支持https协议。
# @type Path: String
# @param WhenRun: 执行时间。
# resourceAfter 表示在机器资源申请成功后执行。
# clusterBefore 表示在集群初始化前执行。
# clusterAfter 表示在集群初始化后执行。
# @type WhenRun: String
# @param Args: 脚本参数
# @type Args: Array
attr_accessor :Path, :WhenRun, :Args
def initialize(path=nil, whenrun=nil, args=nil)
@Path = path
@WhenRun = whenrun
@Args = args
end
def deserialize(params)
@Path = params['Path']
@WhenRun = params['WhenRun']
@Args = params['Args']
end
end
# COS 相关配置
class COSSettings < TencentCloud::Common::AbstractModel
# @param CosSecretId: COS SecretId
# @type CosSecretId: String
# @param CosSecretKey: COS SecrectKey
# @type CosSecretKey: String
# @param LogOnCosPath: 日志存储在COS上的路径
# @type LogOnCosPath: String
attr_accessor :CosSecretId, :CosSecretKey, :LogOnCosPath
def initialize(cossecretid=nil, cossecretkey=nil, logoncospath=nil)
@CosSecretId = cossecretid
@CosSecretKey = cossecretkey
@LogOnCosPath = logoncospath
end
def deserialize(params)
@CosSecretId = params['CosSecretId']
@CosSecretKey = params['CosSecretKey']
@LogOnCosPath = params['LogOnCosPath']
end
end
# 出参
class CdbInfo < TencentCloud::Common::AbstractModel
# @param InstanceName: 数据库实例
# 注意:此字段可能返回 null,表示取不到有效值。
# @type InstanceName: String
# @param Ip: 数据库IP
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Ip: String
# @param Port: 数据库端口
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Port: Integer
# @param MemSize: 数据库内存规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MemSize: Integer
# @param Volume: 数据库磁盘规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Volume: Integer
# @param Service: 服务标识
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Service: String
# @param ExpireTime: 过期时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExpireTime: String
# @param ApplyTime: 申请时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ApplyTime: String
# @param PayType: 付费类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PayType: Integer
# @param ExpireFlag: 过期标识
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExpireFlag: Boolean
# @param Status: 数据库状态
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Status: Integer
# @param IsAutoRenew: 续费标识
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsAutoRenew: Integer
# @param SerialNo: 数据库字符串
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SerialNo: String
# @param ZoneId: ZoneId
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ZoneId: Integer
# @param RegionId: RegionId
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RegionId: Integer
attr_accessor :InstanceName, :Ip, :Port, :MemSize, :Volume, :Service, :ExpireTime, :ApplyTime, :PayType, :ExpireFlag, :Status, :IsAutoRenew, :SerialNo, :ZoneId, :RegionId
def initialize(instancename=nil, ip=nil, port=nil, memsize=nil, volume=nil, service=nil, expiretime=nil, applytime=nil, paytype=nil, expireflag=nil, status=nil, isautorenew=nil, serialno=nil, zoneid=nil, regionid=nil)
@InstanceName = instancename
@Ip = ip
@Port = port
@MemSize = memsize
@Volume = volume
@Service = service
@ExpireTime = expiretime
@ApplyTime = applytime
@PayType = paytype
@ExpireFlag = expireflag
@Status = status
@IsAutoRenew = isautorenew
@SerialNo = serialno
@ZoneId = zoneid
@RegionId = regionid
end
def deserialize(params)
@InstanceName = params['InstanceName']
@Ip = params['Ip']
@Port = params['Port']
@MemSize = params['MemSize']
@Volume = params['Volume']
@Service = params['Service']
@ExpireTime = params['ExpireTime']
@ApplyTime = params['ApplyTime']
@PayType = params['PayType']
@ExpireFlag = params['ExpireFlag']
@Status = params['Status']
@IsAutoRenew = params['IsAutoRenew']
@SerialNo = params['SerialNo']
@ZoneId = params['ZoneId']
@RegionId = params['RegionId']
end
end
# 当前集群共用组件与集群对应关系
class ClusterExternalServiceInfo < TencentCloud::Common::AbstractModel
# @param DependType: 依赖关系,0:被其他集群依赖,1:依赖其他集群
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DependType: Integer
# @param Service: 共用组件
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Service: String
# @param ClusterId: 共用集群
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClusterId: String
# @param ClusterStatus: 共用集群状态
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClusterStatus: Integer
attr_accessor :DependType, :Service, :ClusterId, :ClusterStatus
def initialize(dependtype=nil, service=nil, clusterid=nil, clusterstatus=nil)
@DependType = dependtype
@Service = service
@ClusterId = clusterid
@ClusterStatus = clusterstatus
end
def deserialize(params)
@DependType = params['DependType']
@Service = params['Service']
@ClusterId = params['ClusterId']
@ClusterStatus = params['ClusterStatus']
end
end
# 集群id与流程id的mapping
class ClusterIDToFlowID < TencentCloud::Common::AbstractModel
# @param ClusterId: 集群id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClusterId: String
# @param FlowId: 流程id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FlowId: Integer
attr_accessor :ClusterId, :FlowId
def initialize(clusterid=nil, flowid=nil)
@ClusterId = clusterid
@FlowId = flowid
end
def deserialize(params)
@ClusterId = params['ClusterId']
@FlowId = params['FlowId']
end
end
# 集群实例信息
class ClusterInstancesInfo < TencentCloud::Common::AbstractModel
# @param Id: ID号
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Id: Integer
# @param ClusterId: 集群ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClusterId: String
# @param Ftitle: 标题
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Ftitle: String
# @param ClusterName: 集群名
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClusterName: String
# @param RegionId: 地域ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RegionId: Integer
# @param ZoneId: 地区ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ZoneId: Integer
# @param AppId: 用户APPID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AppId: Integer
# @param Uin: 用户UIN
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Uin: String
# @param ProjectId: 项目Id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ProjectId: Integer
# @param VpcId: 集群VPCID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VpcId: Integer
# @param SubnetId: 子网ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SubnetId: Integer
# @param Status: 实例的状态码。取值范围:
#
2:表示集群运行中。
# 3:表示集群创建中。
# 4:表示集群扩容中。
# 5:表示集群增加router节点中。
# 6:表示集群安装组件中。
# 7:表示集群执行命令中。
# 8:表示重启服务中。
# 9:表示进入维护中。
# 10:表示服务暂停中。
# 11:表示退出维护中。
# 12:表示退出暂停中。
# 13:表示配置下发中。
# 14:表示销毁集群中。
# 15:表示销毁core节点中。
# 16:销毁task节点中。
# 17:表示销毁router节点中。
# 18:表示更改webproxy密码中。
# 19:表示集群隔离中。
# 20:表示集群冲正中。
# 21:表示集群回收中。
# 22:表示变配等待中。
# 23:表示集群已隔离。
# 24:表示缩容节点中。
# 33:表示集群等待退费中。
# 34:表示集群已退费。
# 301:表示创建失败。
# 302:表示扩容失败。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Status: Integer
# @param AddTime: 添加时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AddTime: String
# @param RunTime: 已经运行时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RunTime: String
# @param Config: 集群产品配置信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Config: :class:`Tencentcloud::Emr.v20190103.models.EmrProductConfigOutter`
# @param MasterIp: 主节点外网IP
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MasterIp: String
# @param EmrVersion: EMR版本
# 注意:此字段可能返回 null,表示取不到有效值。
# @type EmrVersion: String
# @param ChargeType: 收费类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ChargeType: Integer
# @param TradeVersion: 交易版本
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TradeVersion: Integer
# @param ResourceOrderId: 资源订单ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ResourceOrderId: Integer
# @param IsTradeCluster: 是否计费集群
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsTradeCluster: Integer
# @param AlarmInfo: 集群错误状态告警信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AlarmInfo: String
# @param IsWoodpeckerCluster: 是否采用新架构
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsWoodpeckerCluster: Integer
# @param MetaDb: 元数据库信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MetaDb: String
# @param Tags: 标签信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Tags: Array
# @param HiveMetaDb: Hive元数据信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HiveMetaDb: String
# @param ServiceClass: 集群类型:EMR,CLICKHOUSE,DRUID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ServiceClass: String
# @param AliasInfo: 集群所有节点的别名序列化
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AliasInfo: String
# @param ProductId: 集群版本Id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ProductId: Integer
# @param Zone: 地区ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Zone: String
# @param SceneName: 场景名称
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SceneName: String
# @param SceneServiceClass: 场景化集群类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SceneServiceClass: String
# @param SceneEmrVersion: 场景化EMR版本
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SceneEmrVersion: String
# @param DisplayName: 场景化集群类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DisplayName: String
# @param VpcName: vpc name
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VpcName: String
# @param SubnetName: subnet name
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SubnetName: String
# @param ClusterExternalServiceInfo: 集群依赖关系
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClusterExternalServiceInfo: Array
# @param UniqVpcId: 集群vpcid 字符串类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UniqVpcId: String
# @param UniqSubnetId: 子网id 字符串类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UniqSubnetId: String
# @param TopologyInfoList: 节点信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TopologyInfoList: Array
# @param IsMultiZoneCluster: 是否是跨AZ集群
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsMultiZoneCluster: Boolean
# @param IsCvmReplace: 是否开通异常节点自动补偿
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsCvmReplace: Boolean
# @param ClusterTitle: 标题
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClusterTitle: String
# @param ConfigDetail: 集群产品配置信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ConfigDetail: :class:`Tencentcloud::Emr.v20190103.models.EmrProductConfigDetail`
attr_accessor :Id, :ClusterId, :Ftitle, :ClusterName, :RegionId, :ZoneId, :AppId, :Uin, :ProjectId, :VpcId, :SubnetId, :Status, :AddTime, :RunTime, :Config, :MasterIp, :EmrVersion, :ChargeType, :TradeVersion, :ResourceOrderId, :IsTradeCluster, :AlarmInfo, :IsWoodpeckerCluster, :MetaDb, :Tags, :HiveMetaDb, :ServiceClass, :AliasInfo, :ProductId, :Zone, :SceneName, :SceneServiceClass, :SceneEmrVersion, :DisplayName, :VpcName, :SubnetName, :ClusterExternalServiceInfo, :UniqVpcId, :UniqSubnetId, :TopologyInfoList, :IsMultiZoneCluster, :IsCvmReplace, :ClusterTitle, :ConfigDetail
extend Gem::Deprecate
deprecate :Ftitle, :none, 2024, 1
deprecate :Ftitle=, :none, 2024, 1
deprecate :Config, :none, 2024, 1
deprecate :Config=, :none, 2024, 1
def initialize(id=nil, clusterid=nil, ftitle=nil, clustername=nil, regionid=nil, zoneid=nil, appid=nil, uin=nil, projectid=nil, vpcid=nil, subnetid=nil, status=nil, addtime=nil, runtime=nil, config=nil, masterip=nil, emrversion=nil, chargetype=nil, tradeversion=nil, resourceorderid=nil, istradecluster=nil, alarminfo=nil, iswoodpeckercluster=nil, metadb=nil, tags=nil, hivemetadb=nil, serviceclass=nil, aliasinfo=nil, productid=nil, zone=nil, scenename=nil, sceneserviceclass=nil, sceneemrversion=nil, displayname=nil, vpcname=nil, subnetname=nil, clusterexternalserviceinfo=nil, uniqvpcid=nil, uniqsubnetid=nil, topologyinfolist=nil, ismultizonecluster=nil, iscvmreplace=nil, clustertitle=nil, configdetail=nil)
@Id = id
@ClusterId = clusterid
@Ftitle = ftitle
@ClusterName = clustername
@RegionId = regionid
@ZoneId = zoneid
@AppId = appid
@Uin = uin
@ProjectId = projectid
@VpcId = vpcid
@SubnetId = subnetid
@Status = status
@AddTime = addtime
@RunTime = runtime
@Config = config
@MasterIp = masterip
@EmrVersion = emrversion
@ChargeType = chargetype
@TradeVersion = tradeversion
@ResourceOrderId = resourceorderid
@IsTradeCluster = istradecluster
@AlarmInfo = alarminfo
@IsWoodpeckerCluster = iswoodpeckercluster
@MetaDb = metadb
@Tags = tags
@HiveMetaDb = hivemetadb
@ServiceClass = serviceclass
@AliasInfo = aliasinfo
@ProductId = productid
@Zone = zone
@SceneName = scenename
@SceneServiceClass = sceneserviceclass
@SceneEmrVersion = sceneemrversion
@DisplayName = displayname
@VpcName = vpcname
@SubnetName = subnetname
@ClusterExternalServiceInfo = clusterexternalserviceinfo
@UniqVpcId = uniqvpcid
@UniqSubnetId = uniqsubnetid
@TopologyInfoList = topologyinfolist
@IsMultiZoneCluster = ismultizonecluster
@IsCvmReplace = iscvmreplace
@ClusterTitle = clustertitle
@ConfigDetail = configdetail
end
def deserialize(params)
@Id = params['Id']
@ClusterId = params['ClusterId']
@Ftitle = params['Ftitle']
@ClusterName = params['ClusterName']
@RegionId = params['RegionId']
@ZoneId = params['ZoneId']
@AppId = params['AppId']
@Uin = params['Uin']
@ProjectId = params['ProjectId']
@VpcId = params['VpcId']
@SubnetId = params['SubnetId']
@Status = params['Status']
@AddTime = params['AddTime']
@RunTime = params['RunTime']
unless params['Config'].nil?
@Config = EmrProductConfigOutter.new
@Config.deserialize(params['Config'])
end
@MasterIp = params['MasterIp']
@EmrVersion = params['EmrVersion']
@ChargeType = params['ChargeType']
@TradeVersion = params['TradeVersion']
@ResourceOrderId = params['ResourceOrderId']
@IsTradeCluster = params['IsTradeCluster']
@AlarmInfo = params['AlarmInfo']
@IsWoodpeckerCluster = params['IsWoodpeckerCluster']
@MetaDb = params['MetaDb']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@HiveMetaDb = params['HiveMetaDb']
@ServiceClass = params['ServiceClass']
@AliasInfo = params['AliasInfo']
@ProductId = params['ProductId']
@Zone = params['Zone']
@SceneName = params['SceneName']
@SceneServiceClass = params['SceneServiceClass']
@SceneEmrVersion = params['SceneEmrVersion']
@DisplayName = params['DisplayName']
@VpcName = params['VpcName']
@SubnetName = params['SubnetName']
unless params['ClusterExternalServiceInfo'].nil?
@ClusterExternalServiceInfo = []
params['ClusterExternalServiceInfo'].each do |i|
clusterexternalserviceinfo_tmp = ClusterExternalServiceInfo.new
clusterexternalserviceinfo_tmp.deserialize(i)
@ClusterExternalServiceInfo << clusterexternalserviceinfo_tmp
end
end
@UniqVpcId = params['UniqVpcId']
@UniqSubnetId = params['UniqSubnetId']
unless params['TopologyInfoList'].nil?
@TopologyInfoList = []
params['TopologyInfoList'].each do |i|
topologyinfo_tmp = TopologyInfo.new
topologyinfo_tmp.deserialize(i)
@TopologyInfoList << topologyinfo_tmp
end
end
@IsMultiZoneCluster = params['IsMultiZoneCluster']
@IsCvmReplace = params['IsCvmReplace']
@ClusterTitle = params['ClusterTitle']
unless params['ConfigDetail'].nil?
@ConfigDetail = EmrProductConfigDetail.new
@ConfigDetail.deserialize(params['ConfigDetail'])
end
end
end
# 集群配置。
class ClusterSetting < TencentCloud::Common::AbstractModel
# @param InstanceChargeType: 付费方式。
# PREPAID 包年包月。
# POSTPAID_BY_HOUR 按量计费,默认方式。
# @type InstanceChargeType: String
# @param SupportHA: 是否为HA集群。
# @type SupportHA: Boolean
# @param SecurityGroupIds: 集群所使用的安全组,目前仅支持一个。
# @type SecurityGroupIds: Array
# @param Placement: 实例位置。
# @type Placement: :class:`Tencentcloud::Emr.v20190103.models.Placement`
# @param VPCSettings: 实例所在VPC。
# @type VPCSettings: :class:`Tencentcloud::Emr.v20190103.models.VPCSettings`
# @param LoginSettings: 实例登录配置。
# @type LoginSettings: :class:`Tencentcloud::Emr.v20190103.models.LoginSettings`
# @param TagSpecification: 实例标签,示例:["{\"TagKey\":\"test-tag1\",\"TagValue\":\"001\"}","{\"TagKey\":\"test-tag2\",\"TagValue\":\"002\"}"]。
# @type TagSpecification: Array
# @param MetaDB: 元数据库配置。
# @type MetaDB: :class:`Tencentcloud::Emr.v20190103.models.MetaDbInfo`
# @param ResourceSpec: 实例硬件配置。
# @type ResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.JobFlowResourceSpec`
# @param PublicIpAssigned: 是否申请公网IP,默认为false。
# @type PublicIpAssigned: Boolean
# @param InstanceChargePrepaid: 包年包月配置,只对包年包月集群生效。
# @type InstanceChargePrepaid: :class:`Tencentcloud::Emr.v20190103.models.InstanceChargePrepaid`
# @param DisasterRecoverGroupIds: 集群置放群组。
# @type DisasterRecoverGroupIds: String
# @param CbsEncryptFlag: 是否使用cbs加密。
# @type CbsEncryptFlag: Boolean
# @param RemoteTcpDefaultPort: 是否使用远程登录,默认为false。
# @type RemoteTcpDefaultPort: Boolean
attr_accessor :InstanceChargeType, :SupportHA, :SecurityGroupIds, :Placement, :VPCSettings, :LoginSettings, :TagSpecification, :MetaDB, :ResourceSpec, :PublicIpAssigned, :InstanceChargePrepaid, :DisasterRecoverGroupIds, :CbsEncryptFlag, :RemoteTcpDefaultPort
def initialize(instancechargetype=nil, supportha=nil, securitygroupids=nil, placement=nil, vpcsettings=nil, loginsettings=nil, tagspecification=nil, metadb=nil, resourcespec=nil, publicipassigned=nil, instancechargeprepaid=nil, disasterrecovergroupids=nil, cbsencryptflag=nil, remotetcpdefaultport=nil)
@InstanceChargeType = instancechargetype
@SupportHA = supportha
@SecurityGroupIds = securitygroupids
@Placement = placement
@VPCSettings = vpcsettings
@LoginSettings = loginsettings
@TagSpecification = tagspecification
@MetaDB = metadb
@ResourceSpec = resourcespec
@PublicIpAssigned = publicipassigned
@InstanceChargePrepaid = instancechargeprepaid
@DisasterRecoverGroupIds = disasterrecovergroupids
@CbsEncryptFlag = cbsencryptflag
@RemoteTcpDefaultPort = remotetcpdefaultport
end
def deserialize(params)
@InstanceChargeType = params['InstanceChargeType']
@SupportHA = params['SupportHA']
@SecurityGroupIds = params['SecurityGroupIds']
unless params['Placement'].nil?
@Placement = Placement.new
@Placement.deserialize(params['Placement'])
end
unless params['VPCSettings'].nil?
@VPCSettings = VPCSettings.new
@VPCSettings.deserialize(params['VPCSettings'])
end
unless params['LoginSettings'].nil?
@LoginSettings = LoginSettings.new
@LoginSettings.deserialize(params['LoginSettings'])
end
@TagSpecification = params['TagSpecification']
unless params['MetaDB'].nil?
@MetaDB = MetaDbInfo.new
@MetaDB.deserialize(params['MetaDB'])
end
unless params['ResourceSpec'].nil?
@ResourceSpec = JobFlowResourceSpec.new
@ResourceSpec.deserialize(params['ResourceSpec'])
end
@PublicIpAssigned = params['PublicIpAssigned']
unless params['InstanceChargePrepaid'].nil?
@InstanceChargePrepaid = InstanceChargePrepaid.new
@InstanceChargePrepaid.deserialize(params['InstanceChargePrepaid'])
end
@DisasterRecoverGroupIds = params['DisasterRecoverGroupIds']
@CbsEncryptFlag = params['CbsEncryptFlag']
@RemoteTcpDefaultPort = params['RemoteTcpDefaultPort']
end
end
# 操作的进程范围
class ComponentBasicRestartInfo < TencentCloud::Common::AbstractModel
# @param ComponentName: 进程名,必填,如NameNode
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ComponentName: String
# @param IpList: 操作的IP列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IpList: Array
attr_accessor :ComponentName, :IpList
def initialize(componentname=nil, iplist=nil)
@ComponentName = componentname
@IpList = iplist
end
def deserialize(params)
@ComponentName = params['ComponentName']
@IpList = params['IpList']
end
end
# 自定义配置参数
class Configuration < TencentCloud::Common::AbstractModel
# @param Classification: 配置文件名,支持SPARK、HIVE、HDFS、YARN的部分配置文件自定义。
# @type Classification: String
# @param Properties: 配置参数通过KV的形式传入,部分文件支持自定义,可以通过特殊的键"content"传入所有内容。
# @type Properties: String
attr_accessor :Classification, :Properties
def initialize(classification=nil, properties=nil)
@Classification = classification
@Properties = properties
end
def deserialize(params)
@Classification = params['Classification']
@Properties = params['Properties']
end
end
# CreateCluster请求参数结构体
class CreateClusterRequest < TencentCloud::Common::AbstractModel
# @param ProductVersion: EMR产品版本名称如EMR-V2.3.0 表示2.3.0版本的EMR, 当前支持产品版本名称查询:[产品版本名称](https://cloud.tencent.com/document/product/589/66338)
# @type ProductVersion: String
# @param EnableSupportHAFlag: 是否开启节点高可用。取值范围:
# true:表示开启节点高可用。
# false:表示不开启节点高可用。
# @type EnableSupportHAFlag: Boolean
# @param InstanceName: 实例名称。
# 长度限制为6-36个字符。
# 只允许包含中文、字母、数字、-、_。
# @type InstanceName: String
# @param InstanceChargeType: 实例计费模式。取值范围:
# PREPAID:预付费,即包年包月。
# POSTPAID_BY_HOUR:按小时后付费。
# @type InstanceChargeType: String
# @param LoginSettings: 实例登录设置。通过该参数可以设置所购买节点的登录方式密码或者密钥。
# 设置密钥时,密码仅用于组件原生WebUI快捷入口登录。
# 未设置密钥时,密码用于登录所购节点以及组件原生WebUI快捷入口登录。
# @type LoginSettings: :class:`Tencentcloud::Emr.v20190103.models.LoginSettings`
# @param SceneSoftwareConfig: 集群应用场景以及支持部署组件配置
# @type SceneSoftwareConfig: :class:`Tencentcloud::Emr.v20190103.models.SceneSoftwareConfig`
# @param InstanceChargePrepaid: 即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。
# @type InstanceChargePrepaid: :class:`Tencentcloud::Emr.v20190103.models.InstanceChargePrepaid`
# @param SecurityGroupIds: 实例所属安全组的ID,形如sg-xxxxxxxx。该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/api/215/15808) 的返回值中的SecurityGroupId字段来获取。
# @type SecurityGroupIds: Array
# @param ScriptBootstrapActionConfig: [引导操作](https://cloud.tencent.com/document/product/589/35656)脚本设置。
# @type ScriptBootstrapActionConfig: Array
# @param ClientToken: 唯一随机标识,时效性为5分钟,需要调用者指定 防止客户端重复创建资源,例如 a9a90aa6-751a-41b6-aad6-fae360632808
# @type ClientToken: String
# @param NeedMasterWan: 是否开启集群Master节点公网。取值范围:
# NEED_MASTER_WAN:表示开启集群Master节点公网。
# NOT_NEED_MASTER_WAN:表示不开启。默认开启集群Master节点公网。
# @type NeedMasterWan: String
# @param EnableRemoteLoginFlag: 是否开启外网远程登录。(在SecurityGroupId不为空时,该参数无效)不填默认为不开启 取值范围:
# true:表示开启
# false:表示不开启
# @type EnableRemoteLoginFlag: Boolean
# @param EnableKerberosFlag: 是否开启Kerberos认证。默认不开启 取值范围:
# true:表示开启
# false:表示不开启
# @type EnableKerberosFlag: Boolean
# @param CustomConf: [自定义软件配置](https://cloud.tencent.com/document/product/589/35655?from_cn_redirect=1)
# @type CustomConf: String
# @param Tags: 标签描述列表。通过指定该参数可以同时绑定标签到相应的实例。
# @type Tags: Array
# @param DisasterRecoverGroupIds: 分散置放群组ID列表,当前只支持指定一个。
# 该参数可以通过调用 [DescribeDisasterRecoverGroups](https://cloud.tencent.com/document/product/213/17810)的返回值中的DisasterRecoverGroupId字段来获取。
# @type DisasterRecoverGroupIds: Array
# @param EnableCbsEncryptFlag: 是否开启集群维度CBS加密。默认不加密 取值范围:
# true:表示加密
# false:表示不加密
# @type EnableCbsEncryptFlag: Boolean
# @param MetaDBInfo: MetaDB信息,当MetaType选择EMR_NEW_META时,MetaDataJdbcUrl MetaDataUser MetaDataPass UnifyMetaInstanceId不用填
# 当MetaType选择EMR_EXIT_META时,填写UnifyMetaInstanceId
# 当MetaType选择USER_CUSTOM_META时,填写MetaDataJdbcUrl MetaDataUser MetaDataPass
# @type MetaDBInfo: :class:`Tencentcloud::Emr.v20190103.models.CustomMetaDBInfo`
# @param DependService: 共享组件信息
# @type DependService: Array
# @param ZoneResourceConfiguration: 节点资源的规格,有几个可用区,就填几个,按顺序第一个为主可用区,第二个为备可用区,第三个为仲裁可用区。如果没有开启跨AZ,则长度为1即可。
# @type ZoneResourceConfiguration: Array
attr_accessor :ProductVersion, :EnableSupportHAFlag, :InstanceName, :InstanceChargeType, :LoginSettings, :SceneSoftwareConfig, :InstanceChargePrepaid, :SecurityGroupIds, :ScriptBootstrapActionConfig, :ClientToken, :NeedMasterWan, :EnableRemoteLoginFlag, :EnableKerberosFlag, :CustomConf, :Tags, :DisasterRecoverGroupIds, :EnableCbsEncryptFlag, :MetaDBInfo, :DependService, :ZoneResourceConfiguration
def initialize(productversion=nil, enablesupporthaflag=nil, instancename=nil, instancechargetype=nil, loginsettings=nil, scenesoftwareconfig=nil, instancechargeprepaid=nil, securitygroupids=nil, scriptbootstrapactionconfig=nil, clienttoken=nil, needmasterwan=nil, enableremoteloginflag=nil, enablekerberosflag=nil, customconf=nil, tags=nil, disasterrecovergroupids=nil, enablecbsencryptflag=nil, metadbinfo=nil, dependservice=nil, zoneresourceconfiguration=nil)
@ProductVersion = productversion
@EnableSupportHAFlag = enablesupporthaflag
@InstanceName = instancename
@InstanceChargeType = instancechargetype
@LoginSettings = loginsettings
@SceneSoftwareConfig = scenesoftwareconfig
@InstanceChargePrepaid = instancechargeprepaid
@SecurityGroupIds = securitygroupids
@ScriptBootstrapActionConfig = scriptbootstrapactionconfig
@ClientToken = clienttoken
@NeedMasterWan = needmasterwan
@EnableRemoteLoginFlag = enableremoteloginflag
@EnableKerberosFlag = enablekerberosflag
@CustomConf = customconf
@Tags = tags
@DisasterRecoverGroupIds = disasterrecovergroupids
@EnableCbsEncryptFlag = enablecbsencryptflag
@MetaDBInfo = metadbinfo
@DependService = dependservice
@ZoneResourceConfiguration = zoneresourceconfiguration
end
def deserialize(params)
@ProductVersion = params['ProductVersion']
@EnableSupportHAFlag = params['EnableSupportHAFlag']
@InstanceName = params['InstanceName']
@InstanceChargeType = params['InstanceChargeType']
unless params['LoginSettings'].nil?
@LoginSettings = LoginSettings.new
@LoginSettings.deserialize(params['LoginSettings'])
end
unless params['SceneSoftwareConfig'].nil?
@SceneSoftwareConfig = SceneSoftwareConfig.new
@SceneSoftwareConfig.deserialize(params['SceneSoftwareConfig'])
end
unless params['InstanceChargePrepaid'].nil?
@InstanceChargePrepaid = InstanceChargePrepaid.new
@InstanceChargePrepaid.deserialize(params['InstanceChargePrepaid'])
end
@SecurityGroupIds = params['SecurityGroupIds']
unless params['ScriptBootstrapActionConfig'].nil?
@ScriptBootstrapActionConfig = []
params['ScriptBootstrapActionConfig'].each do |i|
scriptbootstrapactionconfig_tmp = ScriptBootstrapActionConfig.new
scriptbootstrapactionconfig_tmp.deserialize(i)
@ScriptBootstrapActionConfig << scriptbootstrapactionconfig_tmp
end
end
@ClientToken = params['ClientToken']
@NeedMasterWan = params['NeedMasterWan']
@EnableRemoteLoginFlag = params['EnableRemoteLoginFlag']
@EnableKerberosFlag = params['EnableKerberosFlag']
@CustomConf = params['CustomConf']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@DisasterRecoverGroupIds = params['DisasterRecoverGroupIds']
@EnableCbsEncryptFlag = params['EnableCbsEncryptFlag']
unless params['MetaDBInfo'].nil?
@MetaDBInfo = CustomMetaDBInfo.new
@MetaDBInfo.deserialize(params['MetaDBInfo'])
end
unless params['DependService'].nil?
@DependService = []
params['DependService'].each do |i|
dependservice_tmp = DependService.new
dependservice_tmp.deserialize(i)
@DependService << dependservice_tmp
end
end
unless params['ZoneResourceConfiguration'].nil?
@ZoneResourceConfiguration = []
params['ZoneResourceConfiguration'].each do |i|
zoneresourceconfiguration_tmp = ZoneResourceConfiguration.new
zoneresourceconfiguration_tmp.deserialize(i)
@ZoneResourceConfiguration << zoneresourceconfiguration_tmp
end
end
end
end
# CreateCluster返回参数结构体
class CreateClusterResponse < TencentCloud::Common::AbstractModel
# @param InstanceId: 实例ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type InstanceId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :InstanceId, :RequestId
def initialize(instanceid=nil, requestid=nil)
@InstanceId = instanceid
@RequestId = requestid
end
def deserialize(params)
@InstanceId = params['InstanceId']
@RequestId = params['RequestId']
end
end
# CreateInstance请求参数结构体
class CreateInstanceRequest < TencentCloud::Common::AbstractModel
# @param ProductId: 产品ID,不同产品ID表示不同的EMR产品版本。取值范围:
# 51:表示STARROCKS-V1.4.0
# 54:表示STARROCKS-V2.0.0
# 27:表示KAFKA-V1.0.0
# 50:表示KAFKA-V2.0.0
# 16:表示EMR-V2.3.0
# 20:表示EMR-V2.5.0
# 30:表示EMR-V2.6.0
# 38:表示EMR-V2.7.0
# 25:表示EMR-V3.1.0
# 33:表示EMR-V3.2.1
# 34:表示EMR-V3.3.0
# 37:表示EMR-V3.4.0
# 44:表示EMR-V3.5.0
# 53:表示EMR-V3.6.0
# @type ProductId: Integer
# @param Software: 部署的组件列表。不同的EMR产品ID(ProductId:具体含义参考入参ProductId字段)对应不同可选组件列表,不同产品版本可选组件列表查询:[组件版本](https://cloud.tencent.com/document/product/589/20279) ;
# 填写实例值:hive、flink。
# @type Software: Array
# @param SupportHA: 是否开启节点高可用。取值范围:
# 0:表示不开启节点高可用。
# 1:表示开启节点高可用。
# @type SupportHA: Integer
# @param InstanceName: 实例名称。
# 长度限制为6-36个字符。
# 只允许包含中文、字母、数字、-、_。
# @type InstanceName: String
# @param PayMode: 实例计费模式。取值范围:
# 0:表示按量计费。
# 1:表示包年包月。
# @type PayMode: Integer
# @param TimeSpan: 购买实例的时长。结合TimeUnit一起使用。
# TimeUnit为s时,该参数只能填写3600,表示按量计费实例。
# TimeUnit为m时,该参数填写的数字表示包年包月实例的购买时长,如1表示购买一个月
# @type TimeSpan: Integer
# @param TimeUnit: 购买实例的时间单位。取值范围:
# s:表示秒。PayMode取值为0时,TimeUnit只能取值为s。
# m:表示月份。PayMode取值为1时,TimeUnit只能取值为m。
# @type TimeUnit: String
# @param LoginSettings: 实例登录设置。通过该参数可以设置所购买节点的登录方式密码或者密钥。
# 设置密钥时,密码仅用于组件原生WebUI快捷入口登录。
# 未设置密钥时,密码用于登录所购节点以及组件原生WebUI快捷入口登录。
# @type LoginSettings: :class:`Tencentcloud::Emr.v20190103.models.LoginSettings`
# @param VPCSettings: 私有网络相关信息配置。通过该参数可以指定私有网络的ID,子网ID等信息。
# @type VPCSettings: :class:`Tencentcloud::Emr.v20190103.models.VPCSettings`
# @param ResourceSpec: 节点资源的规格。
# @type ResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.NewResourceSpec`
# @param COSSettings: 开启COS访问需要设置的参数。
# @type COSSettings: :class:`Tencentcloud::Emr.v20190103.models.COSSettings`
# @param Placement: 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目等属性。
# @type Placement: :class:`Tencentcloud::Emr.v20190103.models.Placement`
# @param SgId: 实例所属安全组的ID,形如sg-xxxxxxxx。该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/api/215/15808) 的返回值中的SecurityGroupId字段来获取。
# @type SgId: String
# @param PreExecutedFileSettings: [引导操作](https://cloud.tencent.com/document/product/589/35656)脚本设置。
# @type PreExecutedFileSettings: Array
# @param AutoRenew: 包年包月实例是否自动续费。取值范围:
# 0:表示不自动续费。
# 1:表示自动续费。
# @type AutoRenew: Integer
# @param ClientToken: 唯一随机标识,时效5分钟,需要调用者指定 防止客户端重新创建资源,例如 a9a90aa6-751a-41b6-aad6-fae36063280
# @type ClientToken: String
# @param NeedMasterWan: 是否开启集群Master节点公网。取值范围:
# NEED_MASTER_WAN:表示开启集群Master节点公网。
# NOT_NEED_MASTER_WAN:表示不开启。默认开启集群Master节点公网。
# @type NeedMasterWan: String
# @param RemoteLoginAtCreate: 是否需要开启外网远程登录,即22号端口。在SgId不为空时,该参数无效。
# @type RemoteLoginAtCreate: Integer
# @param CheckSecurity: 是否开启安全集群。0表示不开启,非0表示开启。
# @type CheckSecurity: Integer
# @param ExtendFsField: 访问外部文件系统。
# @type ExtendFsField: String
# @param Tags: 标签描述列表。通过指定该参数可以同时绑定标签到相应的实例。
# @type Tags: Array
# @param DisasterRecoverGroupIds: 分散置放群组ID列表,当前只支持指定一个。
# 该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/product/213/15486 ) 的返回值中的SecurityGroupId字段来获取。
# @type DisasterRecoverGroupIds: Array
# @param CbsEncrypt: 集群维度CBS加密盘,默认0表示不加密,1表示加密
# @type CbsEncrypt: Integer
# @param MetaType: hive共享元数据库类型。取值范围:
# EMR_DEFAULT_META:表示集群默认创建
# EMR_EXIST_META:表示集群使用指定EMR-MetaDB。
# USER_CUSTOM_META:表示集群使用自定义MetaDB。
# @type MetaType: String
# @param UnifyMetaInstanceId: EMR-MetaDB实例
# @type UnifyMetaInstanceId: String
# @param MetaDBInfo: 自定义MetaDB信息
# @type MetaDBInfo: :class:`Tencentcloud::Emr.v20190103.models.CustomMetaInfo`
# @param ApplicationRole: 自定义应用角色。
# @type ApplicationRole: String
# @param SceneName: 场景化取值:
# Hadoop-Kudu
# Hadoop-Zookeeper
# Hadoop-Presto
# Hadoop-Hbase
# @type SceneName: String
# @param ExternalService: 共享组件信息
# @type ExternalService: Array
# @param VersionID: 如果为0,则MultiZone、MultiDeployStrategy、MultiZoneSettings是disable的状态,如果为1,则废弃ResourceSpec,使用MultiZoneSettings。
# @type VersionID: Integer
# @param MultiZone: true表示开启跨AZ部署;仅为新建集群时的用户参数,后续不支持调整。
# @type MultiZone: Boolean
# @param MultiZoneSettings: 节点资源的规格,有几个可用区,就填几个,按顺序第一个为主可用区,第二个为备可用区,第三个为仲裁可用区。如果没有开启跨AZ,则长度为1即可。
# @type MultiZoneSettings: Array
attr_accessor :ProductId, :Software, :SupportHA, :InstanceName, :PayMode, :TimeSpan, :TimeUnit, :LoginSettings, :VPCSettings, :ResourceSpec, :COSSettings, :Placement, :SgId, :PreExecutedFileSettings, :AutoRenew, :ClientToken, :NeedMasterWan, :RemoteLoginAtCreate, :CheckSecurity, :ExtendFsField, :Tags, :DisasterRecoverGroupIds, :CbsEncrypt, :MetaType, :UnifyMetaInstanceId, :MetaDBInfo, :ApplicationRole, :SceneName, :ExternalService, :VersionID, :MultiZone, :MultiZoneSettings
def initialize(productid=nil, software=nil, supportha=nil, instancename=nil, paymode=nil, timespan=nil, timeunit=nil, loginsettings=nil, vpcsettings=nil, resourcespec=nil, cossettings=nil, placement=nil, sgid=nil, preexecutedfilesettings=nil, autorenew=nil, clienttoken=nil, needmasterwan=nil, remoteloginatcreate=nil, checksecurity=nil, extendfsfield=nil, tags=nil, disasterrecovergroupids=nil, cbsencrypt=nil, metatype=nil, unifymetainstanceid=nil, metadbinfo=nil, applicationrole=nil, scenename=nil, externalservice=nil, versionid=nil, multizone=nil, multizonesettings=nil)
@ProductId = productid
@Software = software
@SupportHA = supportha
@InstanceName = instancename
@PayMode = paymode
@TimeSpan = timespan
@TimeUnit = timeunit
@LoginSettings = loginsettings
@VPCSettings = vpcsettings
@ResourceSpec = resourcespec
@COSSettings = cossettings
@Placement = placement
@SgId = sgid
@PreExecutedFileSettings = preexecutedfilesettings
@AutoRenew = autorenew
@ClientToken = clienttoken
@NeedMasterWan = needmasterwan
@RemoteLoginAtCreate = remoteloginatcreate
@CheckSecurity = checksecurity
@ExtendFsField = extendfsfield
@Tags = tags
@DisasterRecoverGroupIds = disasterrecovergroupids
@CbsEncrypt = cbsencrypt
@MetaType = metatype
@UnifyMetaInstanceId = unifymetainstanceid
@MetaDBInfo = metadbinfo
@ApplicationRole = applicationrole
@SceneName = scenename
@ExternalService = externalservice
@VersionID = versionid
@MultiZone = multizone
@MultiZoneSettings = multizonesettings
end
def deserialize(params)
@ProductId = params['ProductId']
@Software = params['Software']
@SupportHA = params['SupportHA']
@InstanceName = params['InstanceName']
@PayMode = params['PayMode']
@TimeSpan = params['TimeSpan']
@TimeUnit = params['TimeUnit']
unless params['LoginSettings'].nil?
@LoginSettings = LoginSettings.new
@LoginSettings.deserialize(params['LoginSettings'])
end
unless params['VPCSettings'].nil?
@VPCSettings = VPCSettings.new
@VPCSettings.deserialize(params['VPCSettings'])
end
unless params['ResourceSpec'].nil?
@ResourceSpec = NewResourceSpec.new
@ResourceSpec.deserialize(params['ResourceSpec'])
end
unless params['COSSettings'].nil?
@COSSettings = COSSettings.new
@COSSettings.deserialize(params['COSSettings'])
end
unless params['Placement'].nil?
@Placement = Placement.new
@Placement.deserialize(params['Placement'])
end
@SgId = params['SgId']
unless params['PreExecutedFileSettings'].nil?
@PreExecutedFileSettings = []
params['PreExecutedFileSettings'].each do |i|
preexecutefilesettings_tmp = PreExecuteFileSettings.new
preexecutefilesettings_tmp.deserialize(i)
@PreExecutedFileSettings << preexecutefilesettings_tmp
end
end
@AutoRenew = params['AutoRenew']
@ClientToken = params['ClientToken']
@NeedMasterWan = params['NeedMasterWan']
@RemoteLoginAtCreate = params['RemoteLoginAtCreate']
@CheckSecurity = params['CheckSecurity']
@ExtendFsField = params['ExtendFsField']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@DisasterRecoverGroupIds = params['DisasterRecoverGroupIds']
@CbsEncrypt = params['CbsEncrypt']
@MetaType = params['MetaType']
@UnifyMetaInstanceId = params['UnifyMetaInstanceId']
unless params['MetaDBInfo'].nil?
@MetaDBInfo = CustomMetaInfo.new
@MetaDBInfo.deserialize(params['MetaDBInfo'])
end
@ApplicationRole = params['ApplicationRole']
@SceneName = params['SceneName']
unless params['ExternalService'].nil?
@ExternalService = []
params['ExternalService'].each do |i|
externalservice_tmp = ExternalService.new
externalservice_tmp.deserialize(i)
@ExternalService << externalservice_tmp
end
end
@VersionID = params['VersionID']
@MultiZone = params['MultiZone']
unless params['MultiZoneSettings'].nil?
@MultiZoneSettings = []
params['MultiZoneSettings'].each do |i|
multizonesetting_tmp = MultiZoneSetting.new
multizonesetting_tmp.deserialize(i)
@MultiZoneSettings << multizonesetting_tmp
end
end
end
end
# CreateInstance返回参数结构体
class CreateInstanceResponse < TencentCloud::Common::AbstractModel
# @param InstanceId: 实例ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type InstanceId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :InstanceId, :RequestId
def initialize(instanceid=nil, requestid=nil)
@InstanceId = instanceid
@RequestId = requestid
end
def deserialize(params)
@InstanceId = params['InstanceId']
@RequestId = params['RequestId']
end
end
# 用户Hive-MetaDB信息
class CustomMetaDBInfo < TencentCloud::Common::AbstractModel
# @param MetaDataJdbcUrl: 自定义MetaDB的JDBC连接,示例: jdbc:mysql://10.10.10.10:3306/dbname
# @type MetaDataJdbcUrl: String
# @param MetaDataUser: 自定义MetaDB用户名
# @type MetaDataUser: String
# @param MetaDataPass: 自定义MetaDB密码
# @type MetaDataPass: String
# @param MetaType: hive共享元数据库类型。取值范围:
# EMR_DEFAULT_META:表示集群默认创建
# EMR_EXIST_META:表示集群使用指定EMR-MetaDB。
# USER_CUSTOM_META:表示集群使用自定义MetaDB。
# @type MetaType: String
# @param UnifyMetaInstanceId: EMR-MetaDB实例
# @type UnifyMetaInstanceId: String
attr_accessor :MetaDataJdbcUrl, :MetaDataUser, :MetaDataPass, :MetaType, :UnifyMetaInstanceId
def initialize(metadatajdbcurl=nil, metadatauser=nil, metadatapass=nil, metatype=nil, unifymetainstanceid=nil)
@MetaDataJdbcUrl = metadatajdbcurl
@MetaDataUser = metadatauser
@MetaDataPass = metadatapass
@MetaType = metatype
@UnifyMetaInstanceId = unifymetainstanceid
end
def deserialize(params)
@MetaDataJdbcUrl = params['MetaDataJdbcUrl']
@MetaDataUser = params['MetaDataUser']
@MetaDataPass = params['MetaDataPass']
@MetaType = params['MetaType']
@UnifyMetaInstanceId = params['UnifyMetaInstanceId']
end
end
# 用户自建Hive-MetaDB信息
class CustomMetaInfo < TencentCloud::Common::AbstractModel
# @param MetaDataJdbcUrl: 自定义MetaDB的JDBC连接,请以 jdbc:mysql:// 开头
# @type MetaDataJdbcUrl: String
# @param MetaDataUser: 自定义MetaDB用户名
# @type MetaDataUser: String
# @param MetaDataPass: 自定义MetaDB密码
# @type MetaDataPass: String
attr_accessor :MetaDataJdbcUrl, :MetaDataUser, :MetaDataPass
def initialize(metadatajdbcurl=nil, metadatauser=nil, metadatapass=nil)
@MetaDataJdbcUrl = metadatajdbcurl
@MetaDataUser = metadatauser
@MetaDataPass = metadatapass
end
def deserialize(params)
@MetaDataJdbcUrl = params['MetaDataJdbcUrl']
@MetaDataUser = params['MetaDataUser']
@MetaDataPass = params['MetaDataPass']
end
end
# 共用自建组件参数
class CustomServiceDefine < TencentCloud::Common::AbstractModel
# @param Name: 自定义参数key
# @type Name: String
# @param Value: 自定义参数value
# @type Value: String
attr_accessor :Name, :Value
def initialize(name=nil, value=nil)
@Name = name
@Value = value
end
def deserialize(params)
@Name = params['Name']
@Value = params['Value']
end
end
# DeleteUserManagerUserList请求参数结构体
class DeleteUserManagerUserListRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群实例ID
# @type InstanceId: String
# @param UserNameList: 集群用户名列表
# @type UserNameList: Array
# @param TkeClusterId: tke/eks集群id,容器集群传
# @type TkeClusterId: String
# @param DisplayStrategy: 默认空,容器版传"native"
# @type DisplayStrategy: String
# @param UserGroupList: 用户组
# @type UserGroupList: Array
attr_accessor :InstanceId, :UserNameList, :TkeClusterId, :DisplayStrategy, :UserGroupList
def initialize(instanceid=nil, usernamelist=nil, tkeclusterid=nil, displaystrategy=nil, usergrouplist=nil)
@InstanceId = instanceid
@UserNameList = usernamelist
@TkeClusterId = tkeclusterid
@DisplayStrategy = displaystrategy
@UserGroupList = usergrouplist
end
def deserialize(params)
@InstanceId = params['InstanceId']
@UserNameList = params['UserNameList']
@TkeClusterId = params['TkeClusterId']
@DisplayStrategy = params['DisplayStrategy']
unless params['UserGroupList'].nil?
@UserGroupList = []
params['UserGroupList'].each do |i|
userandgroup_tmp = UserAndGroup.new
userandgroup_tmp.deserialize(i)
@UserGroupList << userandgroup_tmp
end
end
end
end
# DeleteUserManagerUserList返回参数结构体
class DeleteUserManagerUserListResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 共用组件信息
class DependService < TencentCloud::Common::AbstractModel
# @param ServiceName: 共用组件名
# @type ServiceName: String
# @param InstanceId: 共用组件集群
# @type InstanceId: String
attr_accessor :ServiceName, :InstanceId
def initialize(servicename=nil, instanceid=nil)
@ServiceName = servicename
@InstanceId = instanceid
end
def deserialize(params)
@ServiceName = params['ServiceName']
@InstanceId = params['InstanceId']
end
end
# DescribeAutoScaleRecords请求参数结构体
class DescribeAutoScaleRecordsRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 实例ID。
# @type InstanceId: String
# @param Filters: 记录过滤参数,目前仅能为“StartTime”,“EndTime”和“StrategyName”。StartTime和EndTime支持2006-01-02 15:04:05 或者2006/01/02 15:04:05的时间格式
# @type Filters: Array
# @param Offset: 分页参数。
# @type Offset: Integer
# @param Limit: 分页参数。最大支持100
# @type Limit: Integer
attr_accessor :InstanceId, :Filters, :Offset, :Limit
def initialize(instanceid=nil, filters=nil, offset=nil, limit=nil)
@InstanceId = instanceid
@Filters = filters
@Offset = offset
@Limit = limit
end
def deserialize(params)
@InstanceId = params['InstanceId']
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
keyvalue_tmp = KeyValue.new
keyvalue_tmp.deserialize(i)
@Filters << keyvalue_tmp
end
end
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeAutoScaleRecords返回参数结构体
class DescribeAutoScaleRecordsResponse < TencentCloud::Common::AbstractModel
# @param TotalCount: 总扩缩容记录数。
# @type TotalCount: Integer
# @param RecordList: 记录列表。
# @type RecordList: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TotalCount, :RecordList, :RequestId
def initialize(totalcount=nil, recordlist=nil, requestid=nil)
@TotalCount = totalcount
@RecordList = recordlist
@RequestId = requestid
end
def deserialize(params)
@TotalCount = params['TotalCount']
unless params['RecordList'].nil?
@RecordList = []
params['RecordList'].each do |i|
autoscalerecord_tmp = AutoScaleRecord.new
autoscalerecord_tmp.deserialize(i)
@RecordList << autoscalerecord_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeClusterNodes请求参数结构体
class DescribeClusterNodesRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群实例ID,实例ID形如: emr-xxxxxxxx
# @type InstanceId: String
# @param NodeFlag: 节点标识,取值为:
# all:表示获取全部类型节点,cdb信息除外。
# master:表示获取master节点信息。
# core:表示获取core节点信息。
# task:表示获取task节点信息。
# common:表示获取common节点信息。
# router:表示获取router节点信息。
# db:表示获取正常状态的cdb信息。
# recyle:表示获取回收站隔离中的节点信息,包括cdb信息。
# renew:表示获取所有待续费的节点信息,包括cdb信息,自动续费节点不会返回。
# 注意:现在只支持以上取值,输入其他值会导致错误。
# @type NodeFlag: String
# @param ExportDb: 导出全部节点信息csv时是否携带cdb信息
# @type ExportDb: Boolean
# @param Offset: 页编号,默认值为0,表示第一页。
# @type Offset: Integer
# @param Limit: 每页返回数量,默认值为100,最大值为100。
# @type Limit: Integer
# @param HardwareResourceType: 资源类型:支持all/host/pod,默认为all
# @type HardwareResourceType: String
# @param SearchFields: 支持搜索的字段
# @type SearchFields: Array
# @param OrderField: 无
# @type OrderField: String
# @param Asc: 无
# @type Asc: Integer
attr_accessor :InstanceId, :NodeFlag, :ExportDb, :Offset, :Limit, :HardwareResourceType, :SearchFields, :OrderField, :Asc
def initialize(instanceid=nil, nodeflag=nil, exportdb=nil, offset=nil, limit=nil, hardwareresourcetype=nil, searchfields=nil, orderfield=nil, asc=nil)
@InstanceId = instanceid
@NodeFlag = nodeflag
@ExportDb = exportdb
@Offset = offset
@Limit = limit
@HardwareResourceType = hardwareresourcetype
@SearchFields = searchfields
@OrderField = orderfield
@Asc = asc
end
def deserialize(params)
@InstanceId = params['InstanceId']
@NodeFlag = params['NodeFlag']
@ExportDb = params['ExportDb']
@Offset = params['Offset']
@Limit = params['Limit']
@HardwareResourceType = params['HardwareResourceType']
unless params['SearchFields'].nil?
@SearchFields = []
params['SearchFields'].each do |i|
searchitem_tmp = SearchItem.new
searchitem_tmp.deserialize(i)
@SearchFields << searchitem_tmp
end
end
@OrderField = params['OrderField']
@Asc = params['Asc']
end
end
# DescribeClusterNodes返回参数结构体
class DescribeClusterNodesResponse < TencentCloud::Common::AbstractModel
# @param TotalCnt: 查询到的节点总数
# @type TotalCnt: Integer
# @param NodeList: 节点详细信息列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type NodeList: Array
# @param TagKeys: 用户所有的标签键列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TagKeys: Array
# @param HardwareResourceTypeList: 资源类型列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HardwareResourceTypeList: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TotalCnt, :NodeList, :TagKeys, :HardwareResourceTypeList, :RequestId
def initialize(totalcnt=nil, nodelist=nil, tagkeys=nil, hardwareresourcetypelist=nil, requestid=nil)
@TotalCnt = totalcnt
@NodeList = nodelist
@TagKeys = tagkeys
@HardwareResourceTypeList = hardwareresourcetypelist
@RequestId = requestid
end
def deserialize(params)
@TotalCnt = params['TotalCnt']
unless params['NodeList'].nil?
@NodeList = []
params['NodeList'].each do |i|
nodehardwareinfo_tmp = NodeHardwareInfo.new
nodehardwareinfo_tmp.deserialize(i)
@NodeList << nodehardwareinfo_tmp
end
end
@TagKeys = params['TagKeys']
@HardwareResourceTypeList = params['HardwareResourceTypeList']
@RequestId = params['RequestId']
end
end
# DescribeCvmQuota请求参数结构体
class DescribeCvmQuotaRequest < TencentCloud::Common::AbstractModel
# @param ClusterId: EMR集群ID
# @type ClusterId: String
# @param ZoneId: 区ID
# @type ZoneId: Integer
attr_accessor :ClusterId, :ZoneId
def initialize(clusterid=nil, zoneid=nil)
@ClusterId = clusterid
@ZoneId = zoneid
end
def deserialize(params)
@ClusterId = params['ClusterId']
@ZoneId = params['ZoneId']
end
end
# DescribeCvmQuota返回参数结构体
class DescribeCvmQuotaResponse < TencentCloud::Common::AbstractModel
# @param PostPaidQuotaSet: 后付费配额列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PostPaidQuotaSet: Array
# @param SpotPaidQuotaSet: 竞价实例配额列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SpotPaidQuotaSet: Array
# @param EksQuotaSet: eks配额
# 注意:此字段可能返回 null,表示取不到有效值。
# @type EksQuotaSet: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :PostPaidQuotaSet, :SpotPaidQuotaSet, :EksQuotaSet, :RequestId
def initialize(postpaidquotaset=nil, spotpaidquotaset=nil, eksquotaset=nil, requestid=nil)
@PostPaidQuotaSet = postpaidquotaset
@SpotPaidQuotaSet = spotpaidquotaset
@EksQuotaSet = eksquotaset
@RequestId = requestid
end
def deserialize(params)
unless params['PostPaidQuotaSet'].nil?
@PostPaidQuotaSet = []
params['PostPaidQuotaSet'].each do |i|
quotaentity_tmp = QuotaEntity.new
quotaentity_tmp.deserialize(i)
@PostPaidQuotaSet << quotaentity_tmp
end
end
unless params['SpotPaidQuotaSet'].nil?
@SpotPaidQuotaSet = []
params['SpotPaidQuotaSet'].each do |i|
quotaentity_tmp = QuotaEntity.new
quotaentity_tmp.deserialize(i)
@SpotPaidQuotaSet << quotaentity_tmp
end
end
unless params['EksQuotaSet'].nil?
@EksQuotaSet = []
params['EksQuotaSet'].each do |i|
podsalespec_tmp = PodSaleSpec.new
podsalespec_tmp.deserialize(i)
@EksQuotaSet << podsalespec_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeEmrApplicationStatics请求参数结构体
class DescribeEmrApplicationStaticsRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群id
# @type InstanceId: String
# @param StartTime: 起始时间,时间戳(秒)
# @type StartTime: Integer
# @param EndTime: 结束时间,时间戳(秒)
# @type EndTime: Integer
# @param Queues: 过滤的队列名
# @type Queues: Array
# @param Users: 过滤的用户名
# @type Users: Array
# @param ApplicationTypes: 过滤的作业类型
# @type ApplicationTypes: Array
# @param GroupBy: 分组字段,可选:queue, user, applicationType
# @type GroupBy: Array
# @param OrderBy: 排序字段,可选:sumMemorySeconds, sumVCoreSeconds, sumHDFSBytesWritten, sumHDFSBytesRead
# @type OrderBy: String
# @param IsAsc: 是否顺序排序,0-逆序,1-正序
# @type IsAsc: Integer
# @param Offset: 页号
# @type Offset: Integer
# @param Limit: 页容量
# @type Limit: Integer
attr_accessor :InstanceId, :StartTime, :EndTime, :Queues, :Users, :ApplicationTypes, :GroupBy, :OrderBy, :IsAsc, :Offset, :Limit
def initialize(instanceid=nil, starttime=nil, endtime=nil, queues=nil, users=nil, applicationtypes=nil, groupby=nil, orderby=nil, isasc=nil, offset=nil, limit=nil)
@InstanceId = instanceid
@StartTime = starttime
@EndTime = endtime
@Queues = queues
@Users = users
@ApplicationTypes = applicationtypes
@GroupBy = groupby
@OrderBy = orderby
@IsAsc = isasc
@Offset = offset
@Limit = limit
end
def deserialize(params)
@InstanceId = params['InstanceId']
@StartTime = params['StartTime']
@EndTime = params['EndTime']
@Queues = params['Queues']
@Users = params['Users']
@ApplicationTypes = params['ApplicationTypes']
@GroupBy = params['GroupBy']
@OrderBy = params['OrderBy']
@IsAsc = params['IsAsc']
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeEmrApplicationStatics返回参数结构体
class DescribeEmrApplicationStaticsResponse < TencentCloud::Common::AbstractModel
# @param Statics: 作业统计信息
# @type Statics: Array
# @param TotalCount: 总数
# @type TotalCount: Integer
# @param Queues: 可选择的队列名
# @type Queues: Array
# @param Users: 可选择的用户名
# @type Users: Array
# @param ApplicationTypes: 可选择的作业类型
# @type ApplicationTypes: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Statics, :TotalCount, :Queues, :Users, :ApplicationTypes, :RequestId
def initialize(statics=nil, totalcount=nil, queues=nil, users=nil, applicationtypes=nil, requestid=nil)
@Statics = statics
@TotalCount = totalcount
@Queues = queues
@Users = users
@ApplicationTypes = applicationtypes
@RequestId = requestid
end
def deserialize(params)
unless params['Statics'].nil?
@Statics = []
params['Statics'].each do |i|
applicationstatics_tmp = ApplicationStatics.new
applicationstatics_tmp.deserialize(i)
@Statics << applicationstatics_tmp
end
end
@TotalCount = params['TotalCount']
@Queues = params['Queues']
@Users = params['Users']
@ApplicationTypes = params['ApplicationTypes']
@RequestId = params['RequestId']
end
end
# DescribeHiveQueries请求参数结构体
class DescribeHiveQueriesRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群ID
# @type InstanceId: String
# @param StartTime: 起始时间秒
# @type StartTime: Integer
# @param EndTime: 结束时间秒,EndTime-StartTime不得超过1天秒数86400
# @type EndTime: Integer
# @param Offset: 分页起始偏移,从0开始
# @type Offset: Integer
# @param Limit: 分页大小,合法范围[1,100]
# @type Limit: Integer
attr_accessor :InstanceId, :StartTime, :EndTime, :Offset, :Limit
def initialize(instanceid=nil, starttime=nil, endtime=nil, offset=nil, limit=nil)
@InstanceId = instanceid
@StartTime = starttime
@EndTime = endtime
@Offset = offset
@Limit = limit
end
def deserialize(params)
@InstanceId = params['InstanceId']
@StartTime = params['StartTime']
@EndTime = params['EndTime']
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeHiveQueries返回参数结构体
class DescribeHiveQueriesResponse < TencentCloud::Common::AbstractModel
# @param Total: 总条数
# @type Total: Integer
# @param Results: 结果列表
# @type Results: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Total, :Results, :RequestId
def initialize(total=nil, results=nil, requestid=nil)
@Total = total
@Results = results
@RequestId = requestid
end
def deserialize(params)
@Total = params['Total']
unless params['Results'].nil?
@Results = []
params['Results'].each do |i|
hivequery_tmp = HiveQuery.new
hivequery_tmp.deserialize(i)
@Results << hivequery_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeImpalaQueries请求参数结构体
class DescribeImpalaQueriesRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群ID
# @type InstanceId: String
# @param StartTime: 起始时间秒
# @type StartTime: Integer
# @param EndTime: 结束时间秒,EndTime-StartTime不得超过1天秒数86400
# @type EndTime: Integer
# @param Offset: 分页起始偏移,从0开始
# @type Offset: Integer
# @param Limit: 分页大小,合法范围[1,100]
# @type Limit: Integer
attr_accessor :InstanceId, :StartTime, :EndTime, :Offset, :Limit
def initialize(instanceid=nil, starttime=nil, endtime=nil, offset=nil, limit=nil)
@InstanceId = instanceid
@StartTime = starttime
@EndTime = endtime
@Offset = offset
@Limit = limit
end
def deserialize(params)
@InstanceId = params['InstanceId']
@StartTime = params['StartTime']
@EndTime = params['EndTime']
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeImpalaQueries返回参数结构体
class DescribeImpalaQueriesResponse < TencentCloud::Common::AbstractModel
# @param Total: 总数
# @type Total: Integer
# @param Results: 结果列表
# @type Results: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Total, :Results, :RequestId
def initialize(total=nil, results=nil, requestid=nil)
@Total = total
@Results = results
@RequestId = requestid
end
def deserialize(params)
@Total = params['Total']
unless params['Results'].nil?
@Results = []
params['Results'].each do |i|
impalaquery_tmp = ImpalaQuery.new
impalaquery_tmp.deserialize(i)
@Results << impalaquery_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeInsightList请求参数结构体
class DescribeInsightListRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群ID
# @type InstanceId: String
# @param StartTime: 获取的洞察结果开始时间,此时间针对对App或者Hive查询的开始时间的过滤
# @type StartTime: Integer
# @param EndTime: 获取的洞察结果结束时间,此时间针对对App或者Hive查询的开始时间的过滤
# @type EndTime: Integer
# @param PageSize: 分页查询时的分页大小,最小1,最大100
# @type PageSize: Integer
# @param Page: 分页查询时的页号,从1开始
# @type Page: Integer
attr_accessor :InstanceId, :StartTime, :EndTime, :PageSize, :Page
def initialize(instanceid=nil, starttime=nil, endtime=nil, pagesize=nil, page=nil)
@InstanceId = instanceid
@StartTime = starttime
@EndTime = endtime
@PageSize = pagesize
@Page = page
end
def deserialize(params)
@InstanceId = params['InstanceId']
@StartTime = params['StartTime']
@EndTime = params['EndTime']
@PageSize = params['PageSize']
@Page = params['Page']
end
end
# DescribeInsightList返回参数结构体
class DescribeInsightListResponse < TencentCloud::Common::AbstractModel
# @param TotalCount: 总数,分页查询时使用
# @type TotalCount: Integer
# @param ResultList: 洞察结果数组
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ResultList: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TotalCount, :ResultList, :RequestId
def initialize(totalcount=nil, resultlist=nil, requestid=nil)
@TotalCount = totalcount
@ResultList = resultlist
@RequestId = requestid
end
def deserialize(params)
@TotalCount = params['TotalCount']
unless params['ResultList'].nil?
@ResultList = []
params['ResultList'].each do |i|
insightresult_tmp = InsightResult.new
insightresult_tmp.deserialize(i)
@ResultList << insightresult_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeInstanceRenewNodes请求参数结构体
class DescribeInstanceRenewNodesRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群实例ID,实例ID形如: emr-xxxxxxxx
# @type InstanceId: String
attr_accessor :InstanceId
def initialize(instanceid=nil)
@InstanceId = instanceid
end
def deserialize(params)
@InstanceId = params['InstanceId']
end
end
# DescribeInstanceRenewNodes返回参数结构体
class DescribeInstanceRenewNodesResponse < TencentCloud::Common::AbstractModel
# @param TotalCnt: 查询到的节点总数
# @type TotalCnt: Integer
# @param NodeList: 节点详细信息列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type NodeList: Array
# @param MetaInfo: 用户所有的标签键列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MetaInfo: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TotalCnt, :NodeList, :MetaInfo, :RequestId
def initialize(totalcnt=nil, nodelist=nil, metainfo=nil, requestid=nil)
@TotalCnt = totalcnt
@NodeList = nodelist
@MetaInfo = metainfo
@RequestId = requestid
end
def deserialize(params)
@TotalCnt = params['TotalCnt']
unless params['NodeList'].nil?
@NodeList = []
params['NodeList'].each do |i|
renewinstancesinfo_tmp = RenewInstancesInfo.new
renewinstancesinfo_tmp.deserialize(i)
@NodeList << renewinstancesinfo_tmp
end
end
@MetaInfo = params['MetaInfo']
@RequestId = params['RequestId']
end
end
# DescribeInstancesList请求参数结构体
class DescribeInstancesListRequest < TencentCloud::Common::AbstractModel
# @param DisplayStrategy: 集群筛选策略。取值范围:clusterList:表示查询除了已销毁集群之外的集群列表。monitorManage:表示查询除了已销毁、创建中以及创建失败的集群之外的集群列表。cloudHardwareManage/componentManage:目前这两个取值为预留取值,暂时和monitorManage表示同样的含义。
# @type DisplayStrategy: String
# @param Offset: 页编号,默认值为0,表示第一页。
# @type Offset: Integer
# @param Limit: 每页返回数量,默认值为10,最大值为100。
# @type Limit: Integer
# @param OrderField: 排序字段。取值范围:clusterId:表示按照实例ID排序。addTime:表示按照实例创建时间排序。status:表示按照实例的状态码排序。
# @type OrderField: String
# @param Asc: 按照OrderField升序或者降序进行排序。取值范围:0:表示降序。1:表示升序。默认值为0。
# @type Asc: Integer
# @param Filters: 自定义查询
# @type Filters: Array
attr_accessor :DisplayStrategy, :Offset, :Limit, :OrderField, :Asc, :Filters
def initialize(displaystrategy=nil, offset=nil, limit=nil, orderfield=nil, asc=nil, filters=nil)
@DisplayStrategy = displaystrategy
@Offset = offset
@Limit = limit
@OrderField = orderfield
@Asc = asc
@Filters = filters
end
def deserialize(params)
@DisplayStrategy = params['DisplayStrategy']
@Offset = params['Offset']
@Limit = params['Limit']
@OrderField = params['OrderField']
@Asc = params['Asc']
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filters_tmp = Filters.new
filters_tmp.deserialize(i)
@Filters << filters_tmp
end
end
end
end
# DescribeInstancesList返回参数结构体
class DescribeInstancesListResponse < TencentCloud::Common::AbstractModel
# @param TotalCnt: 符合条件的实例总数。
# @type TotalCnt: Integer
# @param InstancesList: 集群实例列表
# @type InstancesList: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TotalCnt, :InstancesList, :RequestId
def initialize(totalcnt=nil, instanceslist=nil, requestid=nil)
@TotalCnt = totalcnt
@InstancesList = instanceslist
@RequestId = requestid
end
def deserialize(params)
@TotalCnt = params['TotalCnt']
unless params['InstancesList'].nil?
@InstancesList = []
params['InstancesList'].each do |i|
emrlistinstance_tmp = EmrListInstance.new
emrlistinstance_tmp.deserialize(i)
@InstancesList << emrlistinstance_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeInstances请求参数结构体
class DescribeInstancesRequest < TencentCloud::Common::AbstractModel
# @param DisplayStrategy: 集群筛选策略。取值范围:
# clusterList:表示查询除了已销毁集群之外的集群列表。
# monitorManage:表示查询除了已销毁、创建中以及创建失败的集群之外的集群列表。
# cloudHardwareManage/componentManage:目前这两个取值为预留取值,暂时和monitorManage表示同样的含义。
# @type DisplayStrategy: String
# @param InstanceIds: 按照一个或者多个实例ID查询。实例ID形如: emr-xxxxxxxx 。(此参数的具体格式可参考API[简介](https://cloud.tencent.com/document/api/213/15688)的 Ids.N 一节)。如果不填写实例ID,返回该APPID下所有实例列表。
# @type InstanceIds: Array
# @param Offset: 页编号,默认值为0,表示第一页。
# @type Offset: Integer
# @param Limit: 每页返回数量,默认值为10,最大值为100。
# @type Limit: Integer
# @param ProjectId: 建议必填-1,表示拉取所有项目下的集群。
# 不填默认值为0,表示拉取默认项目下的集群。
# 实例所属项目ID。该参数可以通过调用 [DescribeProjects](https://cloud.tencent.com/document/product/651/78725) 的返回值中的 projectId 字段来获取。
# @type ProjectId: Integer
# @param OrderField: 排序字段。取值范围:
# clusterId:表示按照实例ID排序。
# addTime:表示按照实例创建时间排序。
# status:表示按照实例的状态码排序。
# @type OrderField: String
# @param Asc: 按照OrderField升序或者降序进行排序。取值范围:
# 0:表示降序。
# 1:表示升序。默认值为0。
# @type Asc: Integer
attr_accessor :DisplayStrategy, :InstanceIds, :Offset, :Limit, :ProjectId, :OrderField, :Asc
def initialize(displaystrategy=nil, instanceids=nil, offset=nil, limit=nil, projectid=nil, orderfield=nil, asc=nil)
@DisplayStrategy = displaystrategy
@InstanceIds = instanceids
@Offset = offset
@Limit = limit
@ProjectId = projectid
@OrderField = orderfield
@Asc = asc
end
def deserialize(params)
@DisplayStrategy = params['DisplayStrategy']
@InstanceIds = params['InstanceIds']
@Offset = params['Offset']
@Limit = params['Limit']
@ProjectId = params['ProjectId']
@OrderField = params['OrderField']
@Asc = params['Asc']
end
end
# DescribeInstances返回参数结构体
class DescribeInstancesResponse < TencentCloud::Common::AbstractModel
# @param TotalCnt: 符合条件的实例总数。
# @type TotalCnt: Integer
# @param ClusterList: EMR实例详细信息列表。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClusterList: Array
# @param TagKeys: 实例关联的标签键列表。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TagKeys: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TotalCnt, :ClusterList, :TagKeys, :RequestId
def initialize(totalcnt=nil, clusterlist=nil, tagkeys=nil, requestid=nil)
@TotalCnt = totalcnt
@ClusterList = clusterlist
@TagKeys = tagkeys
@RequestId = requestid
end
def deserialize(params)
@TotalCnt = params['TotalCnt']
unless params['ClusterList'].nil?
@ClusterList = []
params['ClusterList'].each do |i|
clusterinstancesinfo_tmp = ClusterInstancesInfo.new
clusterinstancesinfo_tmp.deserialize(i)
@ClusterList << clusterinstancesinfo_tmp
end
end
@TagKeys = params['TagKeys']
@RequestId = params['RequestId']
end
end
# DescribeJobFlow请求参数结构体
class DescribeJobFlowRequest < TencentCloud::Common::AbstractModel
# @param JobFlowId: 流程任务Id,RunJobFlow接口返回的值。
# @type JobFlowId: Integer
attr_accessor :JobFlowId
def initialize(jobflowid=nil)
@JobFlowId = jobflowid
end
def deserialize(params)
@JobFlowId = params['JobFlowId']
end
end
# DescribeJobFlow返回参数结构体
class DescribeJobFlowResponse < TencentCloud::Common::AbstractModel
# @param State: 流程任务状态,可以为以下值:
# JobFlowInit,流程任务初始化。
# JobFlowResourceApplied,资源申请中,通常为JobFlow需要新建集群时的状态。
# JobFlowResourceReady,执行流程任务的资源就绪。
# JobFlowStepsRunning,流程任务步骤已提交。
# JobFlowStepsComplete,流程任务步骤已完成。
# JobFlowTerminating,流程任务所需资源销毁中。
# JobFlowFinish,流程任务已完成。
# @type State: String
# @param Details: 流程任务步骤结果。
# @type Details: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :State, :Details, :RequestId
def initialize(state=nil, details=nil, requestid=nil)
@State = state
@Details = details
@RequestId = requestid
end
def deserialize(params)
@State = params['State']
unless params['Details'].nil?
@Details = []
params['Details'].each do |i|
jobresult_tmp = JobResult.new
jobresult_tmp.deserialize(i)
@Details << jobresult_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeResourceSchedule请求参数结构体
class DescribeResourceScheduleRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: emr集群的英文id
# @type InstanceId: String
attr_accessor :InstanceId
def initialize(instanceid=nil)
@InstanceId = instanceid
end
def deserialize(params)
@InstanceId = params['InstanceId']
end
end
# DescribeResourceSchedule返回参数结构体
class DescribeResourceScheduleResponse < TencentCloud::Common::AbstractModel
# @param OpenSwitch: 资源调度功能是否开启
# @type OpenSwitch: Boolean
# @param Scheduler: 正在使用的资源调度器
# @type Scheduler: String
# @param FSInfo: 公平调度器的信息
# @type FSInfo: String
# @param CSInfo: 容量调度器的信息
# @type CSInfo: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :OpenSwitch, :Scheduler, :FSInfo, :CSInfo, :RequestId
def initialize(openswitch=nil, scheduler=nil, fsinfo=nil, csinfo=nil, requestid=nil)
@OpenSwitch = openswitch
@Scheduler = scheduler
@FSInfo = fsinfo
@CSInfo = csinfo
@RequestId = requestid
end
def deserialize(params)
@OpenSwitch = params['OpenSwitch']
@Scheduler = params['Scheduler']
@FSInfo = params['FSInfo']
@CSInfo = params['CSInfo']
@RequestId = params['RequestId']
end
end
# DescribeUsersForUserManager请求参数结构体
class DescribeUsersForUserManagerRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群实例ID
# @type InstanceId: String
# @param PageNo: 页码
# @type PageNo: Integer
# @param PageSize: 分页的大小
# @type PageSize: Integer
# @param UserManagerFilter: 查询用户列表过滤器
# @type UserManagerFilter: :class:`Tencentcloud::Emr.v20190103.models.UserManagerFilter`
# @param NeedKeytabInfo: 是否需要keytab文件的信息,仅对开启kerberos的集群有效,默认为false
# @type NeedKeytabInfo: Boolean
attr_accessor :InstanceId, :PageNo, :PageSize, :UserManagerFilter, :NeedKeytabInfo
def initialize(instanceid=nil, pageno=nil, pagesize=nil, usermanagerfilter=nil, needkeytabinfo=nil)
@InstanceId = instanceid
@PageNo = pageno
@PageSize = pagesize
@UserManagerFilter = usermanagerfilter
@NeedKeytabInfo = needkeytabinfo
end
def deserialize(params)
@InstanceId = params['InstanceId']
@PageNo = params['PageNo']
@PageSize = params['PageSize']
unless params['UserManagerFilter'].nil?
@UserManagerFilter = UserManagerFilter.new
@UserManagerFilter.deserialize(params['UserManagerFilter'])
end
@NeedKeytabInfo = params['NeedKeytabInfo']
end
end
# DescribeUsersForUserManager返回参数结构体
class DescribeUsersForUserManagerResponse < TencentCloud::Common::AbstractModel
# @param TotalCnt: 总数
# @type TotalCnt: Integer
# @param UserManagerUserList: 用户信息列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UserManagerUserList: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TotalCnt, :UserManagerUserList, :RequestId
def initialize(totalcnt=nil, usermanageruserlist=nil, requestid=nil)
@TotalCnt = totalcnt
@UserManagerUserList = usermanageruserlist
@RequestId = requestid
end
def deserialize(params)
@TotalCnt = params['TotalCnt']
unless params['UserManagerUserList'].nil?
@UserManagerUserList = []
params['UserManagerUserList'].each do |i|
usermanageruserbriefinfo_tmp = UserManagerUserBriefInfo.new
usermanageruserbriefinfo_tmp.deserialize(i)
@UserManagerUserList << usermanageruserbriefinfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeYarnApplications请求参数结构体
class DescribeYarnApplicationsRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群ID
# @type InstanceId: String
# @param StartTime: 起始时间秒
# @type StartTime: Integer
# @param EndTime: 结束时间秒,EndTime-StartTime不得超过1天秒数86400
# @type EndTime: Integer
# @param Offset: 分页起始偏移,从0开始
# @type Offset: Integer
# @param Limit: 分页大小,合法范围[1,100]
# @type Limit: Integer
attr_accessor :InstanceId, :StartTime, :EndTime, :Offset, :Limit
def initialize(instanceid=nil, starttime=nil, endtime=nil, offset=nil, limit=nil)
@InstanceId = instanceid
@StartTime = starttime
@EndTime = endtime
@Offset = offset
@Limit = limit
end
def deserialize(params)
@InstanceId = params['InstanceId']
@StartTime = params['StartTime']
@EndTime = params['EndTime']
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeYarnApplications返回参数结构体
class DescribeYarnApplicationsResponse < TencentCloud::Common::AbstractModel
# @param Total: 总数
# @type Total: Integer
# @param Results: 结果列表
# @type Results: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Total, :Results, :RequestId
def initialize(total=nil, results=nil, requestid=nil)
@Total = total
@Results = results
@RequestId = requestid
end
def deserialize(params)
@Total = params['Total']
unless params['Results'].nil?
@Results = []
params['Results'].each do |i|
yarnapplication_tmp = YarnApplication.new
yarnapplication_tmp.deserialize(i)
@Results << yarnapplication_tmp
end
end
@RequestId = params['RequestId']
end
end
# 磁盘组。
class DiskGroup < TencentCloud::Common::AbstractModel
# @param Spec: 磁盘规格。
# @type Spec: :class:`Tencentcloud::Emr.v20190103.models.DiskSpec`
# @param Count: 同类型磁盘数量。
# @type Count: Integer
attr_accessor :Spec, :Count
def initialize(spec=nil, count=nil)
@Spec = spec
@Count = count
end
def deserialize(params)
unless params['Spec'].nil?
@Spec = DiskSpec.new
@Spec.deserialize(params['Spec'])
end
@Count = params['Count']
end
end
# 磁盘描述。
class DiskSpec < TencentCloud::Common::AbstractModel
# @param DiskType: 磁盘类型。
# LOCAL_BASIC 本地盘。
# CLOUD_BASIC 云硬盘。
# LOCAL_SSD 本地SSD。
# CLOUD_SSD 云SSD。
# CLOUD_PREMIUM 高效云盘。
# CLOUD_HSSD 增强型云SSD。
# @type DiskType: String
# @param DiskSize: 磁盘大小,单位GB。
# @type DiskSize: Integer
attr_accessor :DiskType, :DiskSize
def initialize(disktype=nil, disksize=nil)
@DiskType = disktype
@DiskSize = disksize
end
def deserialize(params)
@DiskType = params['DiskType']
@DiskSize = params['DiskSize']
end
end
# 节点磁盘信息
class DiskSpecInfo < TencentCloud::Common::AbstractModel
# @param Count: 磁盘数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Count: Integer
# @param DiskType: 系统盘类型 取值范围:
# CLOUD_SSD:表示云SSD。
# CLOUD_PREMIUM:表示高效云盘。
# CLOUD_BASIC:表示云硬盘。
# LOCAL_BASIC:表示本地盘。
# LOCAL_SSD:表示本地SSD。
# 数据盘类型 取值范围:
# CLOUD_SSD:表示云SSD。
# CLOUD_PREMIUM:表示高效云盘。
# CLOUD_BASIC:表示云硬盘。
# LOCAL_BASIC:表示本地盘。
# LOCAL_SSD:表示本地SSD。
# CLOUD_HSSD:表示增强型SSD云硬盘。
# CLOUD_THROUGHPUT:表示吞吐型云硬盘。
# CLOUD_TSSD:表示极速型SSD云硬盘。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskType: String
# @param DiskSize: 数据容量,单位为GB
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskSize: Integer
attr_accessor :Count, :DiskType, :DiskSize
def initialize(count=nil, disktype=nil, disksize=nil)
@Count = count
@DiskType = disktype
@DiskSize = disksize
end
def deserialize(params)
@Count = params['Count']
@DiskType = params['DiskType']
@DiskSize = params['DiskSize']
end
end
# POD浮动规格
class DynamicPodSpec < TencentCloud::Common::AbstractModel
# @param RequestCpu: 需求最小cpu核数
# @type RequestCpu: Float
# @param LimitCpu: 需求最大cpu核数
# @type LimitCpu: Float
# @param RequestMemory: 需求最小memory,单位MB
# @type RequestMemory: Float
# @param LimitMemory: 需求最大memory,单位MB
# @type LimitMemory: Float
attr_accessor :RequestCpu, :LimitCpu, :RequestMemory, :LimitMemory
def initialize(requestcpu=nil, limitcpu=nil, requestmemory=nil, limitmemory=nil)
@RequestCpu = requestcpu
@LimitCpu = limitcpu
@RequestMemory = requestmemory
@LimitMemory = limitmemory
end
def deserialize(params)
@RequestCpu = params['RequestCpu']
@LimitCpu = params['LimitCpu']
@RequestMemory = params['RequestMemory']
@LimitMemory = params['LimitMemory']
end
end
# 集群列表返回示例
class EmrListInstance < TencentCloud::Common::AbstractModel
# @param ClusterId: 集群ID
# @type ClusterId: String
# @param StatusDesc: 状态描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type StatusDesc: String
# @param ClusterName: 集群名字
# @type ClusterName: String
# @param ZoneId: 集群地域
# @type ZoneId: Integer
# @param AppId: 用户APPID
# @type AppId: Integer
# @param AddTime: 创建时间
# @type AddTime: String
# @param RunTime: 运行时间
# @type RunTime: String
# @param MasterIp: 集群IP
# @type MasterIp: String
# @param EmrVersion: 集群版本
# @type EmrVersion: String
# @param ChargeType: 集群计费类型
# @type ChargeType: Integer
# @param Id: emr ID
# @type Id: Integer
# @param ProductId: 产品ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ProductId: Integer
# @param ProjectId: 项目ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ProjectId: Integer
# @param RegionId: 区域
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RegionId: Integer
# @param SubnetId: 子网ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SubnetId: Integer
# @param VpcId: 网络ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VpcId: Integer
# @param Zone: 地区
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Zone: String
# @param Status: 状态码
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Status: Integer
# @param Tags: 实例标签
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Tags: Array
# @param AlarmInfo: 告警信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AlarmInfo: String
# @param IsWoodpeckerCluster: 是否是woodpecker集群
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsWoodpeckerCluster: Integer
# @param VpcName: Vpc中文
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VpcName: String
# @param SubnetName: 子网中文
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SubnetName: String
# @param UniqVpcId: 字符串VpcId
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UniqVpcId: String
# @param UniqSubnetId: 字符串子网
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UniqSubnetId: String
# @param ClusterClass: 集群类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClusterClass: String
# @param IsMultiZoneCluster: 是否为跨AZ集群
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsMultiZoneCluster: Boolean
# @param IsHandsCluster: 是否手戳集群
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsHandsCluster: Boolean
# @param OutSideSoftInfo: 体外客户端组件信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OutSideSoftInfo: Array
# @param IsSupportOutsideCluster: 当前集群的应用场景是否支持体外客户端
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsSupportOutsideCluster: Boolean
# @param IsDedicatedCluster: 是否专有集群场景集群
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsDedicatedCluster: Boolean
attr_accessor :ClusterId, :StatusDesc, :ClusterName, :ZoneId, :AppId, :AddTime, :RunTime, :MasterIp, :EmrVersion, :ChargeType, :Id, :ProductId, :ProjectId, :RegionId, :SubnetId, :VpcId, :Zone, :Status, :Tags, :AlarmInfo, :IsWoodpeckerCluster, :VpcName, :SubnetName, :UniqVpcId, :UniqSubnetId, :ClusterClass, :IsMultiZoneCluster, :IsHandsCluster, :OutSideSoftInfo, :IsSupportOutsideCluster, :IsDedicatedCluster
def initialize(clusterid=nil, statusdesc=nil, clustername=nil, zoneid=nil, appid=nil, addtime=nil, runtime=nil, masterip=nil, emrversion=nil, chargetype=nil, id=nil, productid=nil, projectid=nil, regionid=nil, subnetid=nil, vpcid=nil, zone=nil, status=nil, tags=nil, alarminfo=nil, iswoodpeckercluster=nil, vpcname=nil, subnetname=nil, uniqvpcid=nil, uniqsubnetid=nil, clusterclass=nil, ismultizonecluster=nil, ishandscluster=nil, outsidesoftinfo=nil, issupportoutsidecluster=nil, isdedicatedcluster=nil)
@ClusterId = clusterid
@StatusDesc = statusdesc
@ClusterName = clustername
@ZoneId = zoneid
@AppId = appid
@AddTime = addtime
@RunTime = runtime
@MasterIp = masterip
@EmrVersion = emrversion
@ChargeType = chargetype
@Id = id
@ProductId = productid
@ProjectId = projectid
@RegionId = regionid
@SubnetId = subnetid
@VpcId = vpcid
@Zone = zone
@Status = status
@Tags = tags
@AlarmInfo = alarminfo
@IsWoodpeckerCluster = iswoodpeckercluster
@VpcName = vpcname
@SubnetName = subnetname
@UniqVpcId = uniqvpcid
@UniqSubnetId = uniqsubnetid
@ClusterClass = clusterclass
@IsMultiZoneCluster = ismultizonecluster
@IsHandsCluster = ishandscluster
@OutSideSoftInfo = outsidesoftinfo
@IsSupportOutsideCluster = issupportoutsidecluster
@IsDedicatedCluster = isdedicatedcluster
end
def deserialize(params)
@ClusterId = params['ClusterId']
@StatusDesc = params['StatusDesc']
@ClusterName = params['ClusterName']
@ZoneId = params['ZoneId']
@AppId = params['AppId']
@AddTime = params['AddTime']
@RunTime = params['RunTime']
@MasterIp = params['MasterIp']
@EmrVersion = params['EmrVersion']
@ChargeType = params['ChargeType']
@Id = params['Id']
@ProductId = params['ProductId']
@ProjectId = params['ProjectId']
@RegionId = params['RegionId']
@SubnetId = params['SubnetId']
@VpcId = params['VpcId']
@Zone = params['Zone']
@Status = params['Status']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@AlarmInfo = params['AlarmInfo']
@IsWoodpeckerCluster = params['IsWoodpeckerCluster']
@VpcName = params['VpcName']
@SubnetName = params['SubnetName']
@UniqVpcId = params['UniqVpcId']
@UniqSubnetId = params['UniqSubnetId']
@ClusterClass = params['ClusterClass']
@IsMultiZoneCluster = params['IsMultiZoneCluster']
@IsHandsCluster = params['IsHandsCluster']
unless params['OutSideSoftInfo'].nil?
@OutSideSoftInfo = []
params['OutSideSoftInfo'].each do |i|
softdependinfo_tmp = SoftDependInfo.new
softdependinfo_tmp.deserialize(i)
@OutSideSoftInfo << softdependinfo_tmp
end
end
@IsSupportOutsideCluster = params['IsSupportOutsideCluster']
@IsDedicatedCluster = params['IsDedicatedCluster']
end
end
# Emr询价描述
class EmrPrice < TencentCloud::Common::AbstractModel
# @param OriginalCost: 刊例价格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OriginalCost: String
# @param DiscountCost: 折扣价格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiscountCost: String
# @param Unit: 单位
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Unit: String
# @param PriceSpec: 询价配置
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PriceSpec: :class:`Tencentcloud::Emr.v20190103.models.PriceResource`
# @param SupportSpotPaid: 是否支持竞价实例
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SupportSpotPaid: Boolean
attr_accessor :OriginalCost, :DiscountCost, :Unit, :PriceSpec, :SupportSpotPaid
def initialize(originalcost=nil, discountcost=nil, unit=nil, pricespec=nil, supportspotpaid=nil)
@OriginalCost = originalcost
@DiscountCost = discountcost
@Unit = unit
@PriceSpec = pricespec
@SupportSpotPaid = supportspotpaid
end
def deserialize(params)
@OriginalCost = params['OriginalCost']
@DiscountCost = params['DiscountCost']
@Unit = params['Unit']
unless params['PriceSpec'].nil?
@PriceSpec = PriceResource.new
@PriceSpec.deserialize(params['PriceSpec'])
end
@SupportSpotPaid = params['SupportSpotPaid']
end
end
# EMR产品配置
class EmrProductConfigDetail < TencentCloud::Common::AbstractModel
# @param SoftInfo: 软件信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SoftInfo: Array
# @param MasterNodeSize: Master节点个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MasterNodeSize: Integer
# @param CoreNodeSize: Core节点个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CoreNodeSize: Integer
# @param TaskNodeSize: Task节点个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TaskNodeSize: Integer
# @param ComNodeSize: Common节点个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ComNodeSize: Integer
# @param MasterResource: Master节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MasterResource: :class:`Tencentcloud::Emr.v20190103.models.ResourceDetail`
# @param CoreResource: Core节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CoreResource: :class:`Tencentcloud::Emr.v20190103.models.ResourceDetail`
# @param TaskResource: Task节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TaskResource: :class:`Tencentcloud::Emr.v20190103.models.ResourceDetail`
# @param ComResource: Common节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ComResource: :class:`Tencentcloud::Emr.v20190103.models.ResourceDetail`
# @param OnCos: 是否使用COS
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OnCos: Boolean
# @param ChargeType: 收费类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ChargeType: Integer
# @param RouterNodeSize: Router节点个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RouterNodeSize: Integer
# @param SupportHA: 是否支持HA
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SupportHA: Boolean
# @param SecurityOn: 是否支持安全模式
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SecurityOn: Boolean
# @param SecurityGroup: 安全组名称
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SecurityGroup: String
# @param CbsEncrypt: 是否开启Cbs加密
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CbsEncrypt: Integer
# @param ApplicationRole: 自定义应用角色。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ApplicationRole: String
# @param SecurityGroups: 安全组
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SecurityGroups: Array
# @param PublicKeyId: SSH密钥Id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PublicKeyId: String
attr_accessor :SoftInfo, :MasterNodeSize, :CoreNodeSize, :TaskNodeSize, :ComNodeSize, :MasterResource, :CoreResource, :TaskResource, :ComResource, :OnCos, :ChargeType, :RouterNodeSize, :SupportHA, :SecurityOn, :SecurityGroup, :CbsEncrypt, :ApplicationRole, :SecurityGroups, :PublicKeyId
def initialize(softinfo=nil, masternodesize=nil, corenodesize=nil, tasknodesize=nil, comnodesize=nil, masterresource=nil, coreresource=nil, taskresource=nil, comresource=nil, oncos=nil, chargetype=nil, routernodesize=nil, supportha=nil, securityon=nil, securitygroup=nil, cbsencrypt=nil, applicationrole=nil, securitygroups=nil, publickeyid=nil)
@SoftInfo = softinfo
@MasterNodeSize = masternodesize
@CoreNodeSize = corenodesize
@TaskNodeSize = tasknodesize
@ComNodeSize = comnodesize
@MasterResource = masterresource
@CoreResource = coreresource
@TaskResource = taskresource
@ComResource = comresource
@OnCos = oncos
@ChargeType = chargetype
@RouterNodeSize = routernodesize
@SupportHA = supportha
@SecurityOn = securityon
@SecurityGroup = securitygroup
@CbsEncrypt = cbsencrypt
@ApplicationRole = applicationrole
@SecurityGroups = securitygroups
@PublicKeyId = publickeyid
end
def deserialize(params)
@SoftInfo = params['SoftInfo']
@MasterNodeSize = params['MasterNodeSize']
@CoreNodeSize = params['CoreNodeSize']
@TaskNodeSize = params['TaskNodeSize']
@ComNodeSize = params['ComNodeSize']
unless params['MasterResource'].nil?
@MasterResource = ResourceDetail.new
@MasterResource.deserialize(params['MasterResource'])
end
unless params['CoreResource'].nil?
@CoreResource = ResourceDetail.new
@CoreResource.deserialize(params['CoreResource'])
end
unless params['TaskResource'].nil?
@TaskResource = ResourceDetail.new
@TaskResource.deserialize(params['TaskResource'])
end
unless params['ComResource'].nil?
@ComResource = ResourceDetail.new
@ComResource.deserialize(params['ComResource'])
end
@OnCos = params['OnCos']
@ChargeType = params['ChargeType']
@RouterNodeSize = params['RouterNodeSize']
@SupportHA = params['SupportHA']
@SecurityOn = params['SecurityOn']
@SecurityGroup = params['SecurityGroup']
@CbsEncrypt = params['CbsEncrypt']
@ApplicationRole = params['ApplicationRole']
@SecurityGroups = params['SecurityGroups']
@PublicKeyId = params['PublicKeyId']
end
end
# EMR产品配置
class EmrProductConfigOutter < TencentCloud::Common::AbstractModel
# @param SoftInfo: 软件信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SoftInfo: Array
# @param MasterNodeSize: Master节点个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MasterNodeSize: Integer
# @param CoreNodeSize: Core节点个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CoreNodeSize: Integer
# @param TaskNodeSize: Task节点个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TaskNodeSize: Integer
# @param ComNodeSize: Common节点个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ComNodeSize: Integer
# @param MasterResource: Master节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MasterResource: :class:`Tencentcloud::Emr.v20190103.models.OutterResource`
# @param CoreResource: Core节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CoreResource: :class:`Tencentcloud::Emr.v20190103.models.OutterResource`
# @param TaskResource: Task节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TaskResource: :class:`Tencentcloud::Emr.v20190103.models.OutterResource`
# @param ComResource: Common节点资源
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ComResource: :class:`Tencentcloud::Emr.v20190103.models.OutterResource`
# @param OnCos: 是否使用COS
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OnCos: Boolean
# @param ChargeType: 收费类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ChargeType: Integer
# @param RouterNodeSize: Router节点个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RouterNodeSize: Integer
# @param SupportHA: 是否支持HA
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SupportHA: Boolean
# @param SecurityOn: 是否支持安全模式
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SecurityOn: Boolean
# @param SecurityGroup: 安全组名称
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SecurityGroup: String
# @param CbsEncrypt: 是否开启Cbs加密
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CbsEncrypt: Integer
# @param ApplicationRole: 自定义应用角色。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ApplicationRole: String
# @param SecurityGroups: 安全组
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SecurityGroups: Array
# @param PublicKeyId: SSH密钥Id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PublicKeyId: String
attr_accessor :SoftInfo, :MasterNodeSize, :CoreNodeSize, :TaskNodeSize, :ComNodeSize, :MasterResource, :CoreResource, :TaskResource, :ComResource, :OnCos, :ChargeType, :RouterNodeSize, :SupportHA, :SecurityOn, :SecurityGroup, :CbsEncrypt, :ApplicationRole, :SecurityGroups, :PublicKeyId
def initialize(softinfo=nil, masternodesize=nil, corenodesize=nil, tasknodesize=nil, comnodesize=nil, masterresource=nil, coreresource=nil, taskresource=nil, comresource=nil, oncos=nil, chargetype=nil, routernodesize=nil, supportha=nil, securityon=nil, securitygroup=nil, cbsencrypt=nil, applicationrole=nil, securitygroups=nil, publickeyid=nil)
@SoftInfo = softinfo
@MasterNodeSize = masternodesize
@CoreNodeSize = corenodesize
@TaskNodeSize = tasknodesize
@ComNodeSize = comnodesize
@MasterResource = masterresource
@CoreResource = coreresource
@TaskResource = taskresource
@ComResource = comresource
@OnCos = oncos
@ChargeType = chargetype
@RouterNodeSize = routernodesize
@SupportHA = supportha
@SecurityOn = securityon
@SecurityGroup = securitygroup
@CbsEncrypt = cbsencrypt
@ApplicationRole = applicationrole
@SecurityGroups = securitygroups
@PublicKeyId = publickeyid
end
def deserialize(params)
@SoftInfo = params['SoftInfo']
@MasterNodeSize = params['MasterNodeSize']
@CoreNodeSize = params['CoreNodeSize']
@TaskNodeSize = params['TaskNodeSize']
@ComNodeSize = params['ComNodeSize']
unless params['MasterResource'].nil?
@MasterResource = OutterResource.new
@MasterResource.deserialize(params['MasterResource'])
end
unless params['CoreResource'].nil?
@CoreResource = OutterResource.new
@CoreResource.deserialize(params['CoreResource'])
end
unless params['TaskResource'].nil?
@TaskResource = OutterResource.new
@TaskResource.deserialize(params['TaskResource'])
end
unless params['ComResource'].nil?
@ComResource = OutterResource.new
@ComResource.deserialize(params['ComResource'])
end
@OnCos = params['OnCos']
@ChargeType = params['ChargeType']
@RouterNodeSize = params['RouterNodeSize']
@SupportHA = params['SupportHA']
@SecurityOn = params['SecurityOn']
@SecurityGroup = params['SecurityGroup']
@CbsEncrypt = params['CbsEncrypt']
@ApplicationRole = params['ApplicationRole']
@SecurityGroups = params['SecurityGroups']
@PublicKeyId = params['PublicKeyId']
end
end
# 执行动作。
class Execution < TencentCloud::Common::AbstractModel
# @param JobType: 任务类型,目前支持以下类型。
# 1. “MR”,将通过hadoop jar的方式提交。
# 2. "HIVE",将通过hive -f的方式提交。
# 3. "SPARK",将通过spark-submit的方式提交。
# @type JobType: String
# @param Args: 任务参数,提供除提交指令以外的参数。
# @type Args: Array
attr_accessor :JobType, :Args
def initialize(jobtype=nil, args=nil)
@JobType = jobtype
@Args = args
end
def deserialize(params)
@JobType = params['JobType']
@Args = params['Args']
end
end
# 共用组件信息
class ExternalService < TencentCloud::Common::AbstractModel
# @param ShareType: 共用组件类型,EMR/CUSTOM
# @type ShareType: String
# @param CustomServiceDefineList: 自定义参数集合
# @type CustomServiceDefineList: Array
# @param Service: 共用组件名
# @type Service: String
# @param InstanceId: 共用组件集群
# @type InstanceId: String
attr_accessor :ShareType, :CustomServiceDefineList, :Service, :InstanceId
def initialize(sharetype=nil, customservicedefinelist=nil, service=nil, instanceid=nil)
@ShareType = sharetype
@CustomServiceDefineList = customservicedefinelist
@Service = service
@InstanceId = instanceid
end
def deserialize(params)
@ShareType = params['ShareType']
unless params['CustomServiceDefineList'].nil?
@CustomServiceDefineList = []
params['CustomServiceDefineList'].each do |i|
customservicedefine_tmp = CustomServiceDefine.new
customservicedefine_tmp.deserialize(i)
@CustomServiceDefineList << customservicedefine_tmp
end
end
@Service = params['Service']
@InstanceId = params['InstanceId']
end
end
# Emr集群列表实例自定义查询过滤
class Filters < TencentCloud::Common::AbstractModel
# @param Name: 字段名称
# @type Name: String
# @param Values: 过滤字段值
# @type Values: Array
attr_accessor :Name, :Values
def initialize(name=nil, values=nil)
@Name = name
@Values = values
end
def deserialize(params)
@Name = params['Name']
@Values = params['Values']
end
end
# Hive查询详情
class HiveQuery < TencentCloud::Common::AbstractModel
# @param Statement: 查询语句
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Statement: String
# @param Duration: 执行时长
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Duration: String
# @param StartTime: 开始时间毫秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type StartTime: Integer
# @param EndTime: 结束时间毫秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type EndTime: Integer
# @param State: 状态
# 注意:此字段可能返回 null,表示取不到有效值。
# @type State: String
# @param User: 用户
# 注意:此字段可能返回 null,表示取不到有效值。
# @type User: String
# @param JobIds: appId列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type JobIds: Array
# @param ExecutionEngine: 执行引擎
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExecutionEngine: String
# @param Id: 查询ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Id: String
attr_accessor :Statement, :Duration, :StartTime, :EndTime, :State, :User, :JobIds, :ExecutionEngine, :Id
def initialize(statement=nil, duration=nil, starttime=nil, endtime=nil, state=nil, user=nil, jobids=nil, executionengine=nil, id=nil)
@Statement = statement
@Duration = duration
@StartTime = starttime
@EndTime = endtime
@State = state
@User = user
@JobIds = jobids
@ExecutionEngine = executionengine
@Id = id
end
def deserialize(params)
@Statement = params['Statement']
@Duration = params['Duration']
@StartTime = params['StartTime']
@EndTime = params['EndTime']
@State = params['State']
@User = params['User']
@JobIds = params['JobIds']
@ExecutionEngine = params['ExecutionEngine']
@Id = params['Id']
end
end
# Pod HostPath挂载方式描述
class HostVolumeContext < TencentCloud::Common::AbstractModel
# @param VolumePath: Pod挂载宿主机的目录。资源对宿主机的挂载点,指定的挂载点对应了宿主机的路径,该挂载点在Pod中作为数据存储目录使用
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VolumePath: String
attr_accessor :VolumePath
def initialize(volumepath=nil)
@VolumePath = volumepath
end
def deserialize(params)
@VolumePath = params['VolumePath']
end
end
# Impala查询详情
class ImpalaQuery < TencentCloud::Common::AbstractModel
# @param Statement: 执行语句
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Statement: String
# @param Id: 查询ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Id: String
# @param StartTime: 开始时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type StartTime: Integer
# @param Duration: 运行时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Duration: String
# @param EndTime: 结束时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type EndTime: Integer
# @param State: 执行状态
# 注意:此字段可能返回 null,表示取不到有效值。
# @type State: String
# @param RowsFetched: 获取行数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RowsFetched: Integer
# @param User: 用户
# 注意:此字段可能返回 null,表示取不到有效值。
# @type User: String
# @param DefaultDB: 默认DB
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DefaultDB: String
# @param Coordinator: 执行的Coordinator节点
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Coordinator: String
# @param MaxNodePeakMemoryUsage: 单节点内存峰值
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MaxNodePeakMemoryUsage: String
# @param QueryType: 查询类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type QueryType: String
# @param ScanHDFSRows: 扫描的HDFS行数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ScanHDFSRows: Integer
# @param ScanKUDURows: 扫描的Kudu行数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ScanKUDURows: Integer
# @param ScanRowsTotal: 扫描的总行数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ScanRowsTotal: Integer
# @param TotalBytesRead: 读取的总字节数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TotalBytesRead: Integer
# @param TotalBytesSent: 发送的总字节数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TotalBytesSent: Integer
# @param TotalCpuTime: CPU总时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TotalCpuTime: Integer
# @param TotalInnerBytesSent: 内部数据发送总量(Bytes)
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TotalInnerBytesSent: Integer
# @param TotalScanBytesSent: 内部扫描数据发送总量(Bytes)
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TotalScanBytesSent: Integer
# @param EstimatedPerHostMemBytes: 预估单节点内存
# 注意:此字段可能返回 null,表示取不到有效值。
# @type EstimatedPerHostMemBytes: Integer
# @param NumRowsFetchedFromCache: 从缓存中获取的数据行数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type NumRowsFetchedFromCache: Integer
# @param SessionId: 会话ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SessionId: String
# @param PerNodePeakMemoryBytesSum: 单节点内存峰值和(Bytes)
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PerNodePeakMemoryBytesSum: Integer
attr_accessor :Statement, :Id, :StartTime, :Duration, :EndTime, :State, :RowsFetched, :User, :DefaultDB, :Coordinator, :MaxNodePeakMemoryUsage, :QueryType, :ScanHDFSRows, :ScanKUDURows, :ScanRowsTotal, :TotalBytesRead, :TotalBytesSent, :TotalCpuTime, :TotalInnerBytesSent, :TotalScanBytesSent, :EstimatedPerHostMemBytes, :NumRowsFetchedFromCache, :SessionId, :PerNodePeakMemoryBytesSum
def initialize(statement=nil, id=nil, starttime=nil, duration=nil, endtime=nil, state=nil, rowsfetched=nil, user=nil, defaultdb=nil, coordinator=nil, maxnodepeakmemoryusage=nil, querytype=nil, scanhdfsrows=nil, scankudurows=nil, scanrowstotal=nil, totalbytesread=nil, totalbytessent=nil, totalcputime=nil, totalinnerbytessent=nil, totalscanbytessent=nil, estimatedperhostmembytes=nil, numrowsfetchedfromcache=nil, sessionid=nil, pernodepeakmemorybytessum=nil)
@Statement = statement
@Id = id
@StartTime = starttime
@Duration = duration
@EndTime = endtime
@State = state
@RowsFetched = rowsfetched
@User = user
@DefaultDB = defaultdb
@Coordinator = coordinator
@MaxNodePeakMemoryUsage = maxnodepeakmemoryusage
@QueryType = querytype
@ScanHDFSRows = scanhdfsrows
@ScanKUDURows = scankudurows
@ScanRowsTotal = scanrowstotal
@TotalBytesRead = totalbytesread
@TotalBytesSent = totalbytessent
@TotalCpuTime = totalcputime
@TotalInnerBytesSent = totalinnerbytessent
@TotalScanBytesSent = totalscanbytessent
@EstimatedPerHostMemBytes = estimatedperhostmembytes
@NumRowsFetchedFromCache = numrowsfetchedfromcache
@SessionId = sessionid
@PerNodePeakMemoryBytesSum = pernodepeakmemorybytessum
end
def deserialize(params)
@Statement = params['Statement']
@Id = params['Id']
@StartTime = params['StartTime']
@Duration = params['Duration']
@EndTime = params['EndTime']
@State = params['State']
@RowsFetched = params['RowsFetched']
@User = params['User']
@DefaultDB = params['DefaultDB']
@Coordinator = params['Coordinator']
@MaxNodePeakMemoryUsage = params['MaxNodePeakMemoryUsage']
@QueryType = params['QueryType']
@ScanHDFSRows = params['ScanHDFSRows']
@ScanKUDURows = params['ScanKUDURows']
@ScanRowsTotal = params['ScanRowsTotal']
@TotalBytesRead = params['TotalBytesRead']
@TotalBytesSent = params['TotalBytesSent']
@TotalCpuTime = params['TotalCpuTime']
@TotalInnerBytesSent = params['TotalInnerBytesSent']
@TotalScanBytesSent = params['TotalScanBytesSent']
@EstimatedPerHostMemBytes = params['EstimatedPerHostMemBytes']
@NumRowsFetchedFromCache = params['NumRowsFetchedFromCache']
@SessionId = params['SessionId']
@PerNodePeakMemoryBytesSum = params['PerNodePeakMemoryBytesSum']
end
end
# InquirePriceRenewEmr请求参数结构体
class InquirePriceRenewEmrRequest < TencentCloud::Common::AbstractModel
# @param TimeSpan: 实例续费的时长。需要结合TimeUnit一起使用。1表示续费一个月
# @type TimeSpan: Integer
# @param InstanceId: 待续费集群ID列表。
# @type InstanceId: String
# @param Placement: 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目等属性。
# @type Placement: :class:`Tencentcloud::Emr.v20190103.models.Placement`
# @param PayMode: 实例计费模式。此处只支持取值为1,表示包年包月。
# @type PayMode: Integer
# @param TimeUnit: 实例续费的时间单位。取值范围:
# m:表示月份。
# @type TimeUnit: String
# @param Currency: 货币种类。取值范围:
# CNY:表示人民币。
# @type Currency: String
attr_accessor :TimeSpan, :InstanceId, :Placement, :PayMode, :TimeUnit, :Currency
def initialize(timespan=nil, instanceid=nil, placement=nil, paymode=nil, timeunit=nil, currency=nil)
@TimeSpan = timespan
@InstanceId = instanceid
@Placement = placement
@PayMode = paymode
@TimeUnit = timeunit
@Currency = currency
end
def deserialize(params)
@TimeSpan = params['TimeSpan']
@InstanceId = params['InstanceId']
unless params['Placement'].nil?
@Placement = Placement.new
@Placement.deserialize(params['Placement'])
end
@PayMode = params['PayMode']
@TimeUnit = params['TimeUnit']
@Currency = params['Currency']
end
end
# InquirePriceRenewEmr返回参数结构体
class InquirePriceRenewEmrResponse < TencentCloud::Common::AbstractModel
# @param OriginalCost: 原价,单位为元。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OriginalCost: Float
# @param DiscountCost: 折扣价,单位为元。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiscountCost: Float
# @param TimeUnit: 实例续费的时间单位。取值范围:
# m:表示月份。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimeUnit: String
# @param TimeSpan: 实例续费的时长。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimeSpan: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :OriginalCost, :DiscountCost, :TimeUnit, :TimeSpan, :RequestId
def initialize(originalcost=nil, discountcost=nil, timeunit=nil, timespan=nil, requestid=nil)
@OriginalCost = originalcost
@DiscountCost = discountcost
@TimeUnit = timeunit
@TimeSpan = timespan
@RequestId = requestid
end
def deserialize(params)
@OriginalCost = params['OriginalCost']
@DiscountCost = params['DiscountCost']
@TimeUnit = params['TimeUnit']
@TimeSpan = params['TimeSpan']
@RequestId = params['RequestId']
end
end
# InquiryPriceCreateInstance请求参数结构体
class InquiryPriceCreateInstanceRequest < TencentCloud::Common::AbstractModel
# @param TimeUnit: 购买实例的时间单位。取值范围:
# s:表示秒。PayMode取值为0时,TimeUnit只能取值为s。
# m:表示月份。PayMode取值为1时,TimeUnit只能取值为m。
# @type TimeUnit: String
# @param TimeSpan: 购买实例的时长。结合TimeUnit一起使用。
# TimeUnit为s时,该参数只能填写3600,表示按量计费实例。
# TimeUnit为m时,该参数填写的数字表示包年包月实例的购买时长,如1表示购买一个月
# @type TimeSpan: Integer
# @param Currency: 货币种类。取值范围:
# CNY:表示人民币。
# @type Currency: String
# @param PayMode: 实例计费模式。取值范围:
# 0:表示按量计费。
# 1:表示包年包月。
# @type PayMode: Integer
# @param SupportHA: 是否开启节点高可用。取值范围:
# 0:表示不开启节点高可用。
# 1:表示开启节点高可用。
# @type SupportHA: Integer
# @param Software: 部署的组件列表。不同的EMR产品ID(ProductId:具体含义参考入参ProductId字段)需要选择不同的必选组件:
# ProductId为1的时候,必选组件包括:hadoop-2.7.3、knox-1.2.0、zookeeper-3.4.9
# ProductId为2的时候,必选组件包括:hadoop-2.7.3、knox-1.2.0、zookeeper-3.4.9
# ProductId为4的时候,必选组件包括:hadoop-2.8.4、knox-1.2.0、zookeeper-3.4.9
# ProductId为7的时候,必选组件包括:hadoop-3.1.2、knox-1.2.0、zookeeper-3.4.9
# @type Software: Array
# @param ResourceSpec: 询价的节点规格。
# @type ResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.NewResourceSpec`
# @param Placement: 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目等属性。
# @type Placement: :class:`Tencentcloud::Emr.v20190103.models.Placement`
# @param VPCSettings: 私有网络相关信息配置。通过该参数可以指定私有网络的ID,子网ID等信息。
# @type VPCSettings: :class:`Tencentcloud::Emr.v20190103.models.VPCSettings`
# @param MetaType: hive共享元数据库类型。取值范围:
# EMR_NEW_META:表示集群默认创建
# EMR_EXIT_METE:表示集群使用指定EMR-MetaDB。
# USER_CUSTOM_META:表示集群使用自定义MetaDB。
# @type MetaType: String
# @param UnifyMetaInstanceId: EMR-MetaDB实例
# @type UnifyMetaInstanceId: String
# @param MetaDBInfo: 自定义MetaDB信息
# @type MetaDBInfo: :class:`Tencentcloud::Emr.v20190103.models.CustomMetaInfo`
# @param ProductId: 产品ID,不同产品ID表示不同的EMR产品版本。取值范围:
# 1:表示EMR-V1.3.1。
# 2:表示EMR-V2.0.1。
# 4:表示EMR-V2.1.0。
# 7:表示EMR-V3.0.0。
# @type ProductId: Integer
# @param SceneName: 场景化取值:
# Hadoop-Kudu
# Hadoop-Zookeeper
# Hadoop-Presto
# Hadoop-Hbase
# @type SceneName: String
# @param ExternalService: 共用组件信息
# @type ExternalService: Array
# @param VersionID: 当前默认值为0,跨AZ特性支持后为1
# @type VersionID: Integer
# @param MultiZoneSettings: 可用区的规格信息
# @type MultiZoneSettings: Array
attr_accessor :TimeUnit, :TimeSpan, :Currency, :PayMode, :SupportHA, :Software, :ResourceSpec, :Placement, :VPCSettings, :MetaType, :UnifyMetaInstanceId, :MetaDBInfo, :ProductId, :SceneName, :ExternalService, :VersionID, :MultiZoneSettings
def initialize(timeunit=nil, timespan=nil, currency=nil, paymode=nil, supportha=nil, software=nil, resourcespec=nil, placement=nil, vpcsettings=nil, metatype=nil, unifymetainstanceid=nil, metadbinfo=nil, productid=nil, scenename=nil, externalservice=nil, versionid=nil, multizonesettings=nil)
@TimeUnit = timeunit
@TimeSpan = timespan
@Currency = currency
@PayMode = paymode
@SupportHA = supportha
@Software = software
@ResourceSpec = resourcespec
@Placement = placement
@VPCSettings = vpcsettings
@MetaType = metatype
@UnifyMetaInstanceId = unifymetainstanceid
@MetaDBInfo = metadbinfo
@ProductId = productid
@SceneName = scenename
@ExternalService = externalservice
@VersionID = versionid
@MultiZoneSettings = multizonesettings
end
def deserialize(params)
@TimeUnit = params['TimeUnit']
@TimeSpan = params['TimeSpan']
@Currency = params['Currency']
@PayMode = params['PayMode']
@SupportHA = params['SupportHA']
@Software = params['Software']
unless params['ResourceSpec'].nil?
@ResourceSpec = NewResourceSpec.new
@ResourceSpec.deserialize(params['ResourceSpec'])
end
unless params['Placement'].nil?
@Placement = Placement.new
@Placement.deserialize(params['Placement'])
end
unless params['VPCSettings'].nil?
@VPCSettings = VPCSettings.new
@VPCSettings.deserialize(params['VPCSettings'])
end
@MetaType = params['MetaType']
@UnifyMetaInstanceId = params['UnifyMetaInstanceId']
unless params['MetaDBInfo'].nil?
@MetaDBInfo = CustomMetaInfo.new
@MetaDBInfo.deserialize(params['MetaDBInfo'])
end
@ProductId = params['ProductId']
@SceneName = params['SceneName']
unless params['ExternalService'].nil?
@ExternalService = []
params['ExternalService'].each do |i|
externalservice_tmp = ExternalService.new
externalservice_tmp.deserialize(i)
@ExternalService << externalservice_tmp
end
end
@VersionID = params['VersionID']
unless params['MultiZoneSettings'].nil?
@MultiZoneSettings = []
params['MultiZoneSettings'].each do |i|
multizonesetting_tmp = MultiZoneSetting.new
multizonesetting_tmp.deserialize(i)
@MultiZoneSettings << multizonesetting_tmp
end
end
end
end
# InquiryPriceCreateInstance返回参数结构体
class InquiryPriceCreateInstanceResponse < TencentCloud::Common::AbstractModel
# @param OriginalCost: 原价,单位为元。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OriginalCost: Float
# @param DiscountCost: 折扣价,单位为元。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiscountCost: Float
# @param TimeUnit: 购买实例的时间单位。取值范围:
# s:表示秒。
# m:表示月份。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimeUnit: String
# @param TimeSpan: 购买实例的时长。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimeSpan: Integer
# @param PriceList: 价格清单
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PriceList: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :OriginalCost, :DiscountCost, :TimeUnit, :TimeSpan, :PriceList, :RequestId
def initialize(originalcost=nil, discountcost=nil, timeunit=nil, timespan=nil, pricelist=nil, requestid=nil)
@OriginalCost = originalcost
@DiscountCost = discountcost
@TimeUnit = timeunit
@TimeSpan = timespan
@PriceList = pricelist
@RequestId = requestid
end
def deserialize(params)
@OriginalCost = params['OriginalCost']
@DiscountCost = params['DiscountCost']
@TimeUnit = params['TimeUnit']
@TimeSpan = params['TimeSpan']
unless params['PriceList'].nil?
@PriceList = []
params['PriceList'].each do |i|
zonedetailpriceresult_tmp = ZoneDetailPriceResult.new
zonedetailpriceresult_tmp.deserialize(i)
@PriceList << zonedetailpriceresult_tmp
end
end
@RequestId = params['RequestId']
end
end
# InquiryPriceRenewInstance请求参数结构体
class InquiryPriceRenewInstanceRequest < TencentCloud::Common::AbstractModel
# @param TimeSpan: 实例续费的时长。需要结合TimeUnit一起使用。1表示续费一个月
# @type TimeSpan: Integer
# @param ResourceIds: 待续费节点的资源ID列表。资源ID形如:emr-vm-xxxxxxxx。有效的资源ID可通过登录[控制台](https://console.cloud.tencent.com/emr)查询。
# @type ResourceIds: Array
# @param Placement: 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目等属性。
# @type Placement: :class:`Tencentcloud::Emr.v20190103.models.Placement`
# @param PayMode: 实例计费模式。此处只支持取值为1,表示包年包月。
# @type PayMode: Integer
# @param TimeUnit: 实例续费的时间单位。取值范围:
# m:表示月份。
# @type TimeUnit: String
# @param Currency: 货币种类。取值范围:
# CNY:表示人民币。
# @type Currency: String
# @param ModifyPayMode: 是否按量转包年包月。0:否,1:是。
# @type ModifyPayMode: Integer
attr_accessor :TimeSpan, :ResourceIds, :Placement, :PayMode, :TimeUnit, :Currency, :ModifyPayMode
def initialize(timespan=nil, resourceids=nil, placement=nil, paymode=nil, timeunit=nil, currency=nil, modifypaymode=nil)
@TimeSpan = timespan
@ResourceIds = resourceids
@Placement = placement
@PayMode = paymode
@TimeUnit = timeunit
@Currency = currency
@ModifyPayMode = modifypaymode
end
def deserialize(params)
@TimeSpan = params['TimeSpan']
@ResourceIds = params['ResourceIds']
unless params['Placement'].nil?
@Placement = Placement.new
@Placement.deserialize(params['Placement'])
end
@PayMode = params['PayMode']
@TimeUnit = params['TimeUnit']
@Currency = params['Currency']
@ModifyPayMode = params['ModifyPayMode']
end
end
# InquiryPriceRenewInstance返回参数结构体
class InquiryPriceRenewInstanceResponse < TencentCloud::Common::AbstractModel
# @param OriginalCost: 原价,单位为元。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OriginalCost: Float
# @param DiscountCost: 折扣价,单位为元。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiscountCost: Float
# @param TimeUnit: 实例续费的时间单位。取值范围:
# m:表示月份。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimeUnit: String
# @param TimeSpan: 实例续费的时长。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimeSpan: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :OriginalCost, :DiscountCost, :TimeUnit, :TimeSpan, :RequestId
def initialize(originalcost=nil, discountcost=nil, timeunit=nil, timespan=nil, requestid=nil)
@OriginalCost = originalcost
@DiscountCost = discountcost
@TimeUnit = timeunit
@TimeSpan = timespan
@RequestId = requestid
end
def deserialize(params)
@OriginalCost = params['OriginalCost']
@DiscountCost = params['DiscountCost']
@TimeUnit = params['TimeUnit']
@TimeSpan = params['TimeSpan']
@RequestId = params['RequestId']
end
end
# InquiryPriceScaleOutInstance请求参数结构体
class InquiryPriceScaleOutInstanceRequest < TencentCloud::Common::AbstractModel
# @param TimeUnit: 扩容的时间单位。取值范围:
# s:表示秒。PayMode取值为0时,TimeUnit只能取值为s。
# m:表示月份。PayMode取值为1时,TimeUnit只能取值为m。
# @type TimeUnit: String
# @param TimeSpan: 扩容的时长。结合TimeUnit一起使用。
# TimeUnit为s时,该参数只能填写3600,表示按量计费实例。
# TimeUnit为m时,该参数填写的数字表示包年包月实例的购买时长,如1表示购买一个月
# @type TimeSpan: Integer
# @param ZoneId: 实例所属的可用区ID,例如100003。该参数可以通过调用 [DescribeZones](https://cloud.tencent.com/document/api/213/15707) 的返回值中的ZoneId字段来获取。
# @type ZoneId: Integer
# @param PayMode: 实例计费模式。取值范围:
# 0:表示按量计费。
# 1:表示包年包月。
# @type PayMode: Integer
# @param InstanceId: 实例ID。
# @type InstanceId: String
# @param CoreCount: 扩容的Core节点数量。
# @type CoreCount: Integer
# @param TaskCount: 扩容的Task节点数量。
# @type TaskCount: Integer
# @param Currency: 货币种类。取值范围:
# CNY:表示人民币。
# @type Currency: String
# @param RouterCount: 扩容的Router节点数量。
# @type RouterCount: Integer
# @param MasterCount: 扩容的Master节点数量。
# @type MasterCount: Integer
attr_accessor :TimeUnit, :TimeSpan, :ZoneId, :PayMode, :InstanceId, :CoreCount, :TaskCount, :Currency, :RouterCount, :MasterCount
def initialize(timeunit=nil, timespan=nil, zoneid=nil, paymode=nil, instanceid=nil, corecount=nil, taskcount=nil, currency=nil, routercount=nil, mastercount=nil)
@TimeUnit = timeunit
@TimeSpan = timespan
@ZoneId = zoneid
@PayMode = paymode
@InstanceId = instanceid
@CoreCount = corecount
@TaskCount = taskcount
@Currency = currency
@RouterCount = routercount
@MasterCount = mastercount
end
def deserialize(params)
@TimeUnit = params['TimeUnit']
@TimeSpan = params['TimeSpan']
@ZoneId = params['ZoneId']
@PayMode = params['PayMode']
@InstanceId = params['InstanceId']
@CoreCount = params['CoreCount']
@TaskCount = params['TaskCount']
@Currency = params['Currency']
@RouterCount = params['RouterCount']
@MasterCount = params['MasterCount']
end
end
# InquiryPriceScaleOutInstance返回参数结构体
class InquiryPriceScaleOutInstanceResponse < TencentCloud::Common::AbstractModel
# @param OriginalCost: 原价,单位为元。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OriginalCost: String
# @param DiscountCost: 折扣价,单位为元。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiscountCost: String
# @param Unit: 扩容的时间单位。取值范围:
# s:表示秒。
# m:表示月份。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Unit: String
# @param PriceSpec: 询价的节点规格。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PriceSpec: :class:`Tencentcloud::Emr.v20190103.models.PriceResource`
# @param MultipleEmrPrice: 对应入参MultipleResources中多个规格的询价结果,其它出参返回的是第一个规格的询价结果
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MultipleEmrPrice: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :OriginalCost, :DiscountCost, :Unit, :PriceSpec, :MultipleEmrPrice, :RequestId
def initialize(originalcost=nil, discountcost=nil, unit=nil, pricespec=nil, multipleemrprice=nil, requestid=nil)
@OriginalCost = originalcost
@DiscountCost = discountcost
@Unit = unit
@PriceSpec = pricespec
@MultipleEmrPrice = multipleemrprice
@RequestId = requestid
end
def deserialize(params)
@OriginalCost = params['OriginalCost']
@DiscountCost = params['DiscountCost']
@Unit = params['Unit']
unless params['PriceSpec'].nil?
@PriceSpec = PriceResource.new
@PriceSpec.deserialize(params['PriceSpec'])
end
unless params['MultipleEmrPrice'].nil?
@MultipleEmrPrice = []
params['MultipleEmrPrice'].each do |i|
emrprice_tmp = EmrPrice.new
emrprice_tmp.deserialize(i)
@MultipleEmrPrice << emrprice_tmp
end
end
@RequestId = params['RequestId']
end
end
# InquiryPriceUpdateInstance请求参数结构体
class InquiryPriceUpdateInstanceRequest < TencentCloud::Common::AbstractModel
# @param TimeUnit: 变配的时间单位。取值范围:
# s:表示秒。PayMode取值为0时,TimeUnit只能取值为s。
# m:表示月份。PayMode取值为1时,TimeUnit只能取值为m。
# @type TimeUnit: String
# @param TimeSpan: 变配的时长。结合TimeUnit一起使用。
# TimeUnit为s时,该参数只能填写3600,表示按量计费实例。
# TimeUnit为m时,该参数填写的数字表示包年包月实例的购买时长,如1表示购买一个月
# @type TimeSpan: Integer
# @param UpdateSpec: 节点变配的目标配置。
# @type UpdateSpec: :class:`Tencentcloud::Emr.v20190103.models.UpdateInstanceSettings`
# @param PayMode: 实例计费模式。取值范围:
# 0:表示按量计费。
# 1:表示包年包月。
# @type PayMode: Integer
# @param Placement: 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目等属性。
# @type Placement: :class:`Tencentcloud::Emr.v20190103.models.Placement`
# @param Currency: 货币种类。取值范围:
# CNY:表示人民币。
# @type Currency: String
# @param ResourceIdList: 批量变配资源ID列表
# @type ResourceIdList: Array
attr_accessor :TimeUnit, :TimeSpan, :UpdateSpec, :PayMode, :Placement, :Currency, :ResourceIdList
def initialize(timeunit=nil, timespan=nil, updatespec=nil, paymode=nil, placement=nil, currency=nil, resourceidlist=nil)
@TimeUnit = timeunit
@TimeSpan = timespan
@UpdateSpec = updatespec
@PayMode = paymode
@Placement = placement
@Currency = currency
@ResourceIdList = resourceidlist
end
def deserialize(params)
@TimeUnit = params['TimeUnit']
@TimeSpan = params['TimeSpan']
unless params['UpdateSpec'].nil?
@UpdateSpec = UpdateInstanceSettings.new
@UpdateSpec.deserialize(params['UpdateSpec'])
end
@PayMode = params['PayMode']
unless params['Placement'].nil?
@Placement = Placement.new
@Placement.deserialize(params['Placement'])
end
@Currency = params['Currency']
@ResourceIdList = params['ResourceIdList']
end
end
# InquiryPriceUpdateInstance返回参数结构体
class InquiryPriceUpdateInstanceResponse < TencentCloud::Common::AbstractModel
# @param OriginalCost: 原价,单位为元。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OriginalCost: Float
# @param DiscountCost: 折扣价,单位为元。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiscountCost: Float
# @param TimeUnit: 变配的时间单位。取值范围:
# s:表示秒。
# m:表示月份。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimeUnit: String
# @param TimeSpan: 变配的时长。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimeSpan: Integer
# @param PriceDetail: 价格详情
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PriceDetail: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :OriginalCost, :DiscountCost, :TimeUnit, :TimeSpan, :PriceDetail, :RequestId
def initialize(originalcost=nil, discountcost=nil, timeunit=nil, timespan=nil, pricedetail=nil, requestid=nil)
@OriginalCost = originalcost
@DiscountCost = discountcost
@TimeUnit = timeunit
@TimeSpan = timespan
@PriceDetail = pricedetail
@RequestId = requestid
end
def deserialize(params)
@OriginalCost = params['OriginalCost']
@DiscountCost = params['DiscountCost']
@TimeUnit = params['TimeUnit']
@TimeSpan = params['TimeSpan']
unless params['PriceDetail'].nil?
@PriceDetail = []
params['PriceDetail'].each do |i|
pricedetail_tmp = PriceDetail.new
pricedetail_tmp.deserialize(i)
@PriceDetail << pricedetail_tmp
end
end
@RequestId = params['RequestId']
end
end
# 洞察结果项
class InsightResult < TencentCloud::Common::AbstractModel
# @param ID: 当Type为HIVE时,是Hive查询ID,当Type为MAPREDUCE,SPARK,TEZ时则是YarnAppID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ID: String
# @param Type: 洞察应用的类型,HIVE,SPARK,MAPREDUCE,TEZ
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Type: String
# @param RuleID: 洞察规则ID
# HIVE-ScanManyMeta:元数据扫描过多
# HIVE-ScanManyPartition:大表扫描
# HIVE-SlowCompile:编译耗时过长
# HIVE-UnSuitableConfig:不合理参数
# MAPREDUCE-MapperDataSkew:Map数据倾斜
# MAPREDUCE-MapperMemWaste:MapMemory资源浪费
# MAPREDUCE-MapperSlowTask:Map慢Task
# MAPREDUCE-MapperTaskGC:MapperTaskGC
# MAPREDUCE-MemExceeded:峰值内存超限
# MAPREDUCE-ReducerDataSkew:Reduce数据倾斜
# MAPREDUCE-ReducerMemWaste:ReduceMemory资源浪费
# MAPREDUCE-ReducerSlowTask:Reduce慢Task
# MAPREDUCE-ReducerTaskGC:ReducerTaskGC
# MAPREDUCE-SchedulingDelay:调度延迟
# SPARK-CpuWaste:CPU资源浪费
# SPARK-DataSkew:数据倾斜
# SPARK-ExecutorGC:ExecutorGC
# SPARK-MemExceeded:峰值内存超限
# SPARK-MemWaste:Memory资源浪费
# SPARK-ScheduleOverhead:ScheduleOverhead
# SPARK-ScheduleSkew:调度倾斜
# SPARK-SlowTask:慢Task
# TEZ-DataSkew:数据倾斜
# TEZ-MapperDataSkew:Map数据倾斜
# TEZ-ReducerDataSkew:Reduce数据倾斜
# TEZ-TezMemWaste:Memory资源浪费
# TEZ-TezSlowTask:慢Task
# TEZ-TezTaskGC:TasksGC
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RuleID: String
# @param RuleName: 洞察规则名字,可参考RuleID的说明
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RuleName: String
# @param RuleExplain: 洞察规则解释
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RuleExplain: String
# @param Detail: 详情
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Detail: String
# @param Suggestion: 建议信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Suggestion: String
# @param Value: 洞察异常衡量值,同类型的洞察项越大越严重,不同类型的洞察项无对比意义
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Value: Integer
# @param ScheduleTaskExecID: 调度任务执行ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ScheduleTaskExecID: String
# @param ScheduleFlowName: 调度流,DAG
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ScheduleFlowName: String
# @param ScheduleTaskName: 调度flow中的某个task节点
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ScheduleTaskName: String
# @param JobConf: Yarn任务的部分核心配置
# 注意:此字段可能返回 null,表示取不到有效值。
# @type JobConf: String
attr_accessor :ID, :Type, :RuleID, :RuleName, :RuleExplain, :Detail, :Suggestion, :Value, :ScheduleTaskExecID, :ScheduleFlowName, :ScheduleTaskName, :JobConf
def initialize(id=nil, type=nil, ruleid=nil, rulename=nil, ruleexplain=nil, detail=nil, suggestion=nil, value=nil, scheduletaskexecid=nil, scheduleflowname=nil, scheduletaskname=nil, jobconf=nil)
@ID = id
@Type = type
@RuleID = ruleid
@RuleName = rulename
@RuleExplain = ruleexplain
@Detail = detail
@Suggestion = suggestion
@Value = value
@ScheduleTaskExecID = scheduletaskexecid
@ScheduleFlowName = scheduleflowname
@ScheduleTaskName = scheduletaskname
@JobConf = jobconf
end
def deserialize(params)
@ID = params['ID']
@Type = params['Type']
@RuleID = params['RuleID']
@RuleName = params['RuleName']
@RuleExplain = params['RuleExplain']
@Detail = params['Detail']
@Suggestion = params['Suggestion']
@Value = params['Value']
@ScheduleTaskExecID = params['ScheduleTaskExecID']
@ScheduleFlowName = params['ScheduleFlowName']
@ScheduleTaskName = params['ScheduleTaskName']
@JobConf = params['JobConf']
end
end
# 实例预付费参数,只有在付费类型为PREPAID时生效。
class InstanceChargePrepaid < TencentCloud::Common::AbstractModel
# @param Period: 包年包月时间,默认为1,单位:月。
# 取值范围:1, 2, 3, 4, 5, 6, 7, 8, 9, 10,11, 12, 24, 36, 48, 60。
# @type Period: Integer
# @param RenewFlag: 是否自动续费,默认为否。
# true:是
# false:否
# @type RenewFlag: Boolean
attr_accessor :Period, :RenewFlag
def initialize(period=nil, renewflag=nil)
@Period = period
@RenewFlag = renewflag
end
def deserialize(params)
@Period = params['Period']
@RenewFlag = params['RenewFlag']
end
end
# 机器资源描述。
class JobFlowResource < TencentCloud::Common::AbstractModel
# @param Spec: 机器类型描述。
# @type Spec: String
# @param InstanceType: 机器类型描述,可参考CVM的该含义。
# @type InstanceType: String
# @param Tags: 标签KV对。
# @type Tags: Array
# @param DiskGroups: 磁盘描述列表。
# @type DiskGroups: Array
attr_accessor :Spec, :InstanceType, :Tags, :DiskGroups
def initialize(spec=nil, instancetype=nil, tags=nil, diskgroups=nil)
@Spec = spec
@InstanceType = instancetype
@Tags = tags
@DiskGroups = diskgroups
end
def deserialize(params)
@Spec = params['Spec']
@InstanceType = params['InstanceType']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
unless params['DiskGroups'].nil?
@DiskGroups = []
params['DiskGroups'].each do |i|
diskgroup_tmp = DiskGroup.new
diskgroup_tmp.deserialize(i)
@DiskGroups << diskgroup_tmp
end
end
end
end
# 流程作业资源描述
class JobFlowResourceSpec < TencentCloud::Common::AbstractModel
# @param MasterCount: 主节点数量。
# @type MasterCount: Integer
# @param MasterResourceSpec: 主节点配置。
# @type MasterResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.JobFlowResource`
# @param CoreCount: Core节点数量
# @type CoreCount: Integer
# @param CoreResourceSpec: Core节点配置。
# @type CoreResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.JobFlowResource`
# @param TaskCount: Task节点数量。
# @type TaskCount: Integer
# @param CommonCount: Common节点数量。
# @type CommonCount: Integer
# @param TaskResourceSpec: Task节点配置。
# @type TaskResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.JobFlowResource`
# @param CommonResourceSpec: Common节点配置。
# @type CommonResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.JobFlowResource`
attr_accessor :MasterCount, :MasterResourceSpec, :CoreCount, :CoreResourceSpec, :TaskCount, :CommonCount, :TaskResourceSpec, :CommonResourceSpec
def initialize(mastercount=nil, masterresourcespec=nil, corecount=nil, coreresourcespec=nil, taskcount=nil, commoncount=nil, taskresourcespec=nil, commonresourcespec=nil)
@MasterCount = mastercount
@MasterResourceSpec = masterresourcespec
@CoreCount = corecount
@CoreResourceSpec = coreresourcespec
@TaskCount = taskcount
@CommonCount = commoncount
@TaskResourceSpec = taskresourcespec
@CommonResourceSpec = commonresourcespec
end
def deserialize(params)
@MasterCount = params['MasterCount']
unless params['MasterResourceSpec'].nil?
@MasterResourceSpec = JobFlowResource.new
@MasterResourceSpec.deserialize(params['MasterResourceSpec'])
end
@CoreCount = params['CoreCount']
unless params['CoreResourceSpec'].nil?
@CoreResourceSpec = JobFlowResource.new
@CoreResourceSpec.deserialize(params['CoreResourceSpec'])
end
@TaskCount = params['TaskCount']
@CommonCount = params['CommonCount']
unless params['TaskResourceSpec'].nil?
@TaskResourceSpec = JobFlowResource.new
@TaskResourceSpec.deserialize(params['TaskResourceSpec'])
end
unless params['CommonResourceSpec'].nil?
@CommonResourceSpec = JobFlowResource.new
@CommonResourceSpec.deserialize(params['CommonResourceSpec'])
end
end
end
# 任务步骤结果描述
class JobResult < TencentCloud::Common::AbstractModel
# @param Name: 任务步骤名称。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Name: String
# @param ActionOnFailure: 任务步骤失败时的处理策略,可以为以下值:
# "CONTINUE",跳过当前失败步骤,继续后续步骤。
# “TERMINATE_CLUSTER”,终止当前及后续步骤,并销毁集群。
# “CANCEL_AND_WAIT”,取消当前步骤并阻塞等待处理。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ActionOnFailure: String
# @param JobState: 当前步骤的状态,可以为以下值:
# “JobFlowStepStatusInit”,初始化状态,等待执行。
# “JobFlowStepStatusRunning”,任务步骤正在执行。
# “JobFlowStepStatusFailed”,任务步骤执行失败。
# “JobFlowStepStatusSucceed”,任务步骤执行成功。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type JobState: String
# @param ApplicationId: YARN任务ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ApplicationId: String
attr_accessor :Name, :ActionOnFailure, :JobState, :ApplicationId
def initialize(name=nil, actiononfailure=nil, jobstate=nil, applicationid=nil)
@Name = name
@ActionOnFailure = actiononfailure
@JobState = jobstate
@ApplicationId = applicationid
end
def deserialize(params)
@Name = params['Name']
@ActionOnFailure = params['ActionOnFailure']
@JobState = params['JobState']
@ApplicationId = params['ApplicationId']
end
end
# 键值对,主要用来做Filter
class KeyValue < TencentCloud::Common::AbstractModel
# @param Key: 键
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Key: String
# @param Value: 值
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Value: String
attr_accessor :Key, :Value
def initialize(key=nil, value=nil)
@Key = key
@Value = value
end
def deserialize(params)
@Key = params['Key']
@Value = params['Value']
end
end
# 登录设置
class LoginSettings < TencentCloud::Common::AbstractModel
# @param Password: 实例登录密码,8-16个字符,包含大写字母、小写字母、数字和特殊字符四种,特殊符号仅支持!@%^*,密码第一位不能为特殊字符
# @type Password: String
# @param PublicKeyId: 密钥ID。关联密钥后,就可以通过对应的私钥来访问实例;PublicKeyId可通过接口[DescribeKeyPairs](https://cloud.tencent.com/document/api/213/15699)获取
# @type PublicKeyId: String
attr_accessor :Password, :PublicKeyId
def initialize(password=nil, publickeyid=nil)
@Password = password
@PublicKeyId = publickeyid
end
def deserialize(params)
@Password = params['Password']
@PublicKeyId = params['PublicKeyId']
end
end
# 元数据库信息
class MetaDbInfo < TencentCloud::Common::AbstractModel
# @param MetaType: 元数据类型。
# @type MetaType: String
# @param UnifyMetaInstanceId: 统一元数据库实例ID。
# @type UnifyMetaInstanceId: String
# @param MetaDBInfo: 自建元数据库信息。
# @type MetaDBInfo: :class:`Tencentcloud::Emr.v20190103.models.CustomMetaInfo`
attr_accessor :MetaType, :UnifyMetaInstanceId, :MetaDBInfo
def initialize(metatype=nil, unifymetainstanceid=nil, metadbinfo=nil)
@MetaType = metatype
@UnifyMetaInstanceId = unifymetainstanceid
@MetaDBInfo = metadbinfo
end
def deserialize(params)
@MetaType = params['MetaType']
@UnifyMetaInstanceId = params['UnifyMetaInstanceId']
unless params['MetaDBInfo'].nil?
@MetaDBInfo = CustomMetaInfo.new
@MetaDBInfo.deserialize(params['MetaDBInfo'])
end
end
end
# ModifyResourcePools请求参数结构体
class ModifyResourcePoolsRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: emr集群id
# @type InstanceId: String
# @param Key: 取值范围:
# fair:代表公平调度标识
# capacity:代表容量调度标识
# @type Key: String
attr_accessor :InstanceId, :Key
def initialize(instanceid=nil, key=nil)
@InstanceId = instanceid
@Key = key
end
def deserialize(params)
@InstanceId = params['InstanceId']
@Key = params['Key']
end
end
# ModifyResourcePools返回参数结构体
class ModifyResourcePoolsResponse < TencentCloud::Common::AbstractModel
# @param IsDraft: false表示不是草稿,提交刷新请求成功
# @type IsDraft: Boolean
# @param ErrorMsg: 扩展字段,暂时没用
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ErrorMsg: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :IsDraft, :ErrorMsg, :RequestId
def initialize(isdraft=nil, errormsg=nil, requestid=nil)
@IsDraft = isdraft
@ErrorMsg = errormsg
@RequestId = requestid
end
def deserialize(params)
@IsDraft = params['IsDraft']
@ErrorMsg = params['ErrorMsg']
@RequestId = params['RequestId']
end
end
# ModifyResourceScheduleConfig请求参数结构体
class ModifyResourceScheduleConfigRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: emr集群的英文id
# @type InstanceId: String
# @param Key: 业务标识,fair表示编辑公平的配置项,fairPlan表示编辑执行计划,capacity表示编辑容量的配置项
# @type Key: String
# @param Value: 修改后的模块消息
# @type Value: String
attr_accessor :InstanceId, :Key, :Value
def initialize(instanceid=nil, key=nil, value=nil)
@InstanceId = instanceid
@Key = key
@Value = value
end
def deserialize(params)
@InstanceId = params['InstanceId']
@Key = params['Key']
@Value = params['Value']
end
end
# ModifyResourceScheduleConfig返回参数结构体
class ModifyResourceScheduleConfigResponse < TencentCloud::Common::AbstractModel
# @param IsDraft: true为草稿,表示还没有刷新资源池
# @type IsDraft: Boolean
# @param ErrorMsg: 校验错误信息,如果不为空,则说明校验失败,配置没有成功
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ErrorMsg: String
# @param Data: 返回数据
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Data: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :IsDraft, :ErrorMsg, :Data, :RequestId
def initialize(isdraft=nil, errormsg=nil, data=nil, requestid=nil)
@IsDraft = isdraft
@ErrorMsg = errormsg
@Data = data
@RequestId = requestid
end
def deserialize(params)
@IsDraft = params['IsDraft']
@ErrorMsg = params['ErrorMsg']
@Data = params['Data']
@RequestId = params['RequestId']
end
end
# ModifyResourceScheduler请求参数结构体
class ModifyResourceSchedulerRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: emr集群的英文id
# @type InstanceId: String
# @param OldValue: 老的调度器:fair
# @type OldValue: String
# @param NewValue: 新的调度器:capacity
# @type NewValue: String
attr_accessor :InstanceId, :OldValue, :NewValue
def initialize(instanceid=nil, oldvalue=nil, newvalue=nil)
@InstanceId = instanceid
@OldValue = oldvalue
@NewValue = newvalue
end
def deserialize(params)
@InstanceId = params['InstanceId']
@OldValue = params['OldValue']
@NewValue = params['NewValue']
end
end
# ModifyResourceScheduler返回参数结构体
class ModifyResourceSchedulerResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 强制修改标签
class ModifyResourceTags < TencentCloud::Common::AbstractModel
# @param ResourceId: 集群id 或者 cvm id
# @type ResourceId: String
# @param Resource: 资源6段式表达式
# @type Resource: String
# @param ResourcePrefix: 资源前缀
# @type ResourcePrefix: String
# @param ResourceRegion: ap-beijing
# @type ResourceRegion: String
# @param ServiceType: emr
# @type ServiceType: String
# @param DeleteTags: 删除的标签列表
# @type DeleteTags: Array
# @param AddTags: 添加的标签列表
# @type AddTags: Array
# @param ModifyTags: 修改的标签列表
# @type ModifyTags: Array
attr_accessor :ResourceId, :Resource, :ResourcePrefix, :ResourceRegion, :ServiceType, :DeleteTags, :AddTags, :ModifyTags
def initialize(resourceid=nil, resource=nil, resourceprefix=nil, resourceregion=nil, servicetype=nil, deletetags=nil, addtags=nil, modifytags=nil)
@ResourceId = resourceid
@Resource = resource
@ResourcePrefix = resourceprefix
@ResourceRegion = resourceregion
@ServiceType = servicetype
@DeleteTags = deletetags
@AddTags = addtags
@ModifyTags = modifytags
end
def deserialize(params)
@ResourceId = params['ResourceId']
@Resource = params['Resource']
@ResourcePrefix = params['ResourcePrefix']
@ResourceRegion = params['ResourceRegion']
@ServiceType = params['ServiceType']
unless params['DeleteTags'].nil?
@DeleteTags = []
params['DeleteTags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@DeleteTags << tag_tmp
end
end
unless params['AddTags'].nil?
@AddTags = []
params['AddTags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@AddTags << tag_tmp
end
end
unless params['ModifyTags'].nil?
@ModifyTags = []
params['ModifyTags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@ModifyTags << tag_tmp
end
end
end
end
# ModifyResourcesTags请求参数结构体
class ModifyResourcesTagsRequest < TencentCloud::Common::AbstractModel
# @param ModifyType: 标签类型,取值Cluster或者Node
# @type ModifyType: String
# @param ModifyResourceTagsInfoList: 标签信息
# @type ModifyResourceTagsInfoList: Array
attr_accessor :ModifyType, :ModifyResourceTagsInfoList
def initialize(modifytype=nil, modifyresourcetagsinfolist=nil)
@ModifyType = modifytype
@ModifyResourceTagsInfoList = modifyresourcetagsinfolist
end
def deserialize(params)
@ModifyType = params['ModifyType']
unless params['ModifyResourceTagsInfoList'].nil?
@ModifyResourceTagsInfoList = []
params['ModifyResourceTagsInfoList'].each do |i|
modifyresourcetags_tmp = ModifyResourceTags.new
modifyresourcetags_tmp.deserialize(i)
@ModifyResourceTagsInfoList << modifyresourcetags_tmp
end
end
end
end
# ModifyResourcesTags返回参数结构体
class ModifyResourcesTagsResponse < TencentCloud::Common::AbstractModel
# @param SuccessList: 成功的资源id列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SuccessList: Array
# @param FailList: 失败的资源id列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FailList: Array
# @param PartSuccessList: 部分成功的资源id列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PartSuccessList: Array
# @param ClusterToFlowIdList: 集群id与流程id的映射列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClusterToFlowIdList: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :SuccessList, :FailList, :PartSuccessList, :ClusterToFlowIdList, :RequestId
def initialize(successlist=nil, faillist=nil, partsuccesslist=nil, clustertoflowidlist=nil, requestid=nil)
@SuccessList = successlist
@FailList = faillist
@PartSuccessList = partsuccesslist
@ClusterToFlowIdList = clustertoflowidlist
@RequestId = requestid
end
def deserialize(params)
@SuccessList = params['SuccessList']
@FailList = params['FailList']
@PartSuccessList = params['PartSuccessList']
unless params['ClusterToFlowIdList'].nil?
@ClusterToFlowIdList = []
params['ClusterToFlowIdList'].each do |i|
clusteridtoflowid_tmp = ClusterIDToFlowID.new
clusteridtoflowid_tmp.deserialize(i)
@ClusterToFlowIdList << clusteridtoflowid_tmp
end
end
@RequestId = params['RequestId']
end
end
# ModifyUserManagerPwd请求参数结构体
class ModifyUserManagerPwdRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群实例ID
# @type InstanceId: String
# @param UserName: 用户名
# @type UserName: String
# @param PassWord: 密码
# @type PassWord: String
attr_accessor :InstanceId, :UserName, :PassWord
def initialize(instanceid=nil, username=nil, password=nil)
@InstanceId = instanceid
@UserName = username
@PassWord = password
end
def deserialize(params)
@InstanceId = params['InstanceId']
@UserName = params['UserName']
@PassWord = params['PassWord']
end
end
# ModifyUserManagerPwd返回参数结构体
class ModifyUserManagerPwdResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 多云盘参数
class MultiDisk < TencentCloud::Common::AbstractModel
# @param DiskType: 云盘类型
# CLOUD_SSD:表示云SSD。
# CLOUD_PREMIUM:表示高效云盘。
# CLOUD_HSSD:表示增强型SSD云硬盘。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskType: String
# @param Volume: 云盘大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Volume: Integer
# @param Count: 该类型云盘个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Count: Integer
attr_accessor :DiskType, :Volume, :Count
def initialize(disktype=nil, volume=nil, count=nil)
@DiskType = disktype
@Volume = volume
@Count = count
end
def deserialize(params)
@DiskType = params['DiskType']
@Volume = params['Volume']
@Count = params['Count']
end
end
# 多云盘参数
class MultiDiskMC < TencentCloud::Common::AbstractModel
# @param Count: 该类型云盘个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Count: Integer
# @param Type: 磁盘类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Type: Integer
# @param Volume: 云盘大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Volume: Integer
attr_accessor :Count, :Type, :Volume
def initialize(count=nil, type=nil, volume=nil)
@Count = count
@Type = type
@Volume = volume
end
def deserialize(params)
@Count = params['Count']
@Type = params['Type']
@Volume = params['Volume']
end
end
# 各个可用区的参数信息
class MultiZoneSetting < TencentCloud::Common::AbstractModel
# @param ZoneTag: "master"、"standby"、"third-party"
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ZoneTag: String
# @param VPCSettings: 无
# @type VPCSettings: :class:`Tencentcloud::Emr.v20190103.models.VPCSettings`
# @param Placement: 无
# @type Placement: :class:`Tencentcloud::Emr.v20190103.models.Placement`
# @param ResourceSpec: 无
# @type ResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.NewResourceSpec`
attr_accessor :ZoneTag, :VPCSettings, :Placement, :ResourceSpec
def initialize(zonetag=nil, vpcsettings=nil, placement=nil, resourcespec=nil)
@ZoneTag = zonetag
@VPCSettings = vpcsettings
@Placement = placement
@ResourceSpec = resourcespec
end
def deserialize(params)
@ZoneTag = params['ZoneTag']
unless params['VPCSettings'].nil?
@VPCSettings = VPCSettings.new
@VPCSettings.deserialize(params['VPCSettings'])
end
unless params['Placement'].nil?
@Placement = Placement.new
@Placement.deserialize(params['Placement'])
end
unless params['ResourceSpec'].nil?
@ResourceSpec = NewResourceSpec.new
@ResourceSpec.deserialize(params['ResourceSpec'])
end
end
end
# 资源描述
class NewResourceSpec < TencentCloud::Common::AbstractModel
# @param MasterResourceSpec: 描述Master节点资源
# @type MasterResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.Resource`
# @param CoreResourceSpec: 描述Core节点资源
# @type CoreResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.Resource`
# @param TaskResourceSpec: 描述Task节点资源
# @type TaskResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.Resource`
# @param MasterCount: Master节点数量
# @type MasterCount: Integer
# @param CoreCount: Core节点数量
# @type CoreCount: Integer
# @param TaskCount: Task节点数量
# @type TaskCount: Integer
# @param CommonResourceSpec: 描述Common节点资源
# @type CommonResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.Resource`
# @param CommonCount: Common节点数量
# @type CommonCount: Integer
attr_accessor :MasterResourceSpec, :CoreResourceSpec, :TaskResourceSpec, :MasterCount, :CoreCount, :TaskCount, :CommonResourceSpec, :CommonCount
def initialize(masterresourcespec=nil, coreresourcespec=nil, taskresourcespec=nil, mastercount=nil, corecount=nil, taskcount=nil, commonresourcespec=nil, commoncount=nil)
@MasterResourceSpec = masterresourcespec
@CoreResourceSpec = coreresourcespec
@TaskResourceSpec = taskresourcespec
@MasterCount = mastercount
@CoreCount = corecount
@TaskCount = taskcount
@CommonResourceSpec = commonresourcespec
@CommonCount = commoncount
end
def deserialize(params)
unless params['MasterResourceSpec'].nil?
@MasterResourceSpec = Resource.new
@MasterResourceSpec.deserialize(params['MasterResourceSpec'])
end
unless params['CoreResourceSpec'].nil?
@CoreResourceSpec = Resource.new
@CoreResourceSpec.deserialize(params['CoreResourceSpec'])
end
unless params['TaskResourceSpec'].nil?
@TaskResourceSpec = Resource.new
@TaskResourceSpec.deserialize(params['TaskResourceSpec'])
end
@MasterCount = params['MasterCount']
@CoreCount = params['CoreCount']
@TaskCount = params['TaskCount']
unless params['CommonResourceSpec'].nil?
@CommonResourceSpec = Resource.new
@CommonResourceSpec.deserialize(params['CommonResourceSpec'])
end
@CommonCount = params['CommonCount']
end
end
# 用于创建集群价格清单 节点价格详情
class NodeDetailPriceResult < TencentCloud::Common::AbstractModel
# @param NodeType: 节点类型 master core task common router mysql
# 注意:此字段可能返回 null,表示取不到有效值。
# @type NodeType: String
# @param PartDetailPrice: 节点组成部分价格详情
# @type PartDetailPrice: Array
attr_accessor :NodeType, :PartDetailPrice
def initialize(nodetype=nil, partdetailprice=nil)
@NodeType = nodetype
@PartDetailPrice = partdetailprice
end
def deserialize(params)
@NodeType = params['NodeType']
unless params['PartDetailPrice'].nil?
@PartDetailPrice = []
params['PartDetailPrice'].each do |i|
partdetailpriceitem_tmp = PartDetailPriceItem.new
partdetailpriceitem_tmp.deserialize(i)
@PartDetailPrice << partdetailpriceitem_tmp
end
end
end
end
# 节点硬件信息
class NodeHardwareInfo < TencentCloud::Common::AbstractModel
# @param AppId: 用户APPID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AppId: Integer
# @param SerialNo: 序列号
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SerialNo: String
# @param OrderNo: 机器实例ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type OrderNo: String
# @param WanIp: master节点绑定外网IP
# 注意:此字段可能返回 null,表示取不到有效值。
# @type WanIp: String
# @param Flag: 节点类型。0:common节点;1:master节点
# ;2:core节点;3:task节点
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Flag: Integer
# @param Spec: 节点规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Spec: String
# @param CpuNum: 节点核数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CpuNum: Integer
# @param MemSize: 节点内存
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MemSize: Integer
# @param MemDesc: 节点内存描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MemDesc: String
# @param RegionId: 节点所在region
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RegionId: Integer
# @param ZoneId: 节点所在Zone
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ZoneId: Integer
# @param ApplyTime: 申请时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ApplyTime: String
# @param FreeTime: 释放时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FreeTime: String
# @param DiskSize: 硬盘大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskSize: String
# @param NameTag: 节点描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type NameTag: String
# @param Services: 节点部署服务
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Services: String
# @param StorageType: 磁盘类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type StorageType: Integer
# @param RootSize: 系统盘大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RootSize: Integer
# @param ChargeType: 付费类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ChargeType: Integer
# @param CdbIp: 数据库IP
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CdbIp: String
# @param CdbPort: 数据库端口
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CdbPort: Integer
# @param HwDiskSize: 硬盘容量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HwDiskSize: Integer
# @param HwDiskSizeDesc: 硬盘容量描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HwDiskSizeDesc: String
# @param HwMemSize: 内存容量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HwMemSize: Integer
# @param HwMemSizeDesc: 内存容量描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HwMemSizeDesc: String
# @param ExpireTime: 过期时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExpireTime: String
# @param EmrResourceId: 节点资源ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type EmrResourceId: String
# @param IsAutoRenew: 续费标志
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsAutoRenew: Integer
# @param DeviceClass: 设备标识
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DeviceClass: String
# @param Mutable: 支持变配
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Mutable: Integer
# @param MCMultiDisk: 多云盘
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MCMultiDisk: Array
# @param CdbNodeInfo: 数据库信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CdbNodeInfo: :class:`Tencentcloud::Emr.v20190103.models.CdbInfo`
# @param Ip: 内网IP
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Ip: String
# @param Destroyable: 此节点是否可销毁,1可销毁,0不可销毁
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Destroyable: Integer
# @param Tags: 节点绑定的标签
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Tags: Array
# @param AutoFlag: 是否是自动扩缩容节点,0为普通节点,1为自动扩缩容节点。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AutoFlag: Integer
# @param HardwareResourceType: 资源类型, host/pod
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HardwareResourceType: String
# @param IsDynamicSpec: 是否浮动规格,1是,0否
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsDynamicSpec: Integer
# @param DynamicPodSpec: 浮动规格值json字符串
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DynamicPodSpec: String
# @param SupportModifyPayMode: 是否支持变更计费类型 1是,0否
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SupportModifyPayMode: Integer
# @param RootStorageType: 系统盘类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RootStorageType: Integer
# @param Zone: 可用区信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Zone: String
# @param SubnetInfo: 子网
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SubnetInfo: :class:`Tencentcloud::Emr.v20190103.models.SubnetInfo`
# @param Clients: 客户端
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Clients: String
# @param CurrentTime: 系统当前时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CurrentTime: String
# @param IsFederation: 是否用于联邦 ,1是,0否
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsFederation: Integer
# @param DeviceName: 设备名称
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DeviceName: String
# @param ServiceClient: 服务
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ServiceClient: String
# @param DisableApiTermination: 该实例是否开启实例保护,true为开启 false为关闭
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DisableApiTermination: Boolean
# @param TradeVersion: 0表示老计费,1表示新计费
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TradeVersion: Integer
# @param ServicesStatus: 各组件状态,Zookeeper:STARTED,ResourceManager:STARTED,STARTED已启动,STOPED已停止
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ServicesStatus: String
attr_accessor :AppId, :SerialNo, :OrderNo, :WanIp, :Flag, :Spec, :CpuNum, :MemSize, :MemDesc, :RegionId, :ZoneId, :ApplyTime, :FreeTime, :DiskSize, :NameTag, :Services, :StorageType, :RootSize, :ChargeType, :CdbIp, :CdbPort, :HwDiskSize, :HwDiskSizeDesc, :HwMemSize, :HwMemSizeDesc, :ExpireTime, :EmrResourceId, :IsAutoRenew, :DeviceClass, :Mutable, :MCMultiDisk, :CdbNodeInfo, :Ip, :Destroyable, :Tags, :AutoFlag, :HardwareResourceType, :IsDynamicSpec, :DynamicPodSpec, :SupportModifyPayMode, :RootStorageType, :Zone, :SubnetInfo, :Clients, :CurrentTime, :IsFederation, :DeviceName, :ServiceClient, :DisableApiTermination, :TradeVersion, :ServicesStatus
def initialize(appid=nil, serialno=nil, orderno=nil, wanip=nil, flag=nil, spec=nil, cpunum=nil, memsize=nil, memdesc=nil, regionid=nil, zoneid=nil, applytime=nil, freetime=nil, disksize=nil, nametag=nil, services=nil, storagetype=nil, rootsize=nil, chargetype=nil, cdbip=nil, cdbport=nil, hwdisksize=nil, hwdisksizedesc=nil, hwmemsize=nil, hwmemsizedesc=nil, expiretime=nil, emrresourceid=nil, isautorenew=nil, deviceclass=nil, mutable=nil, mcmultidisk=nil, cdbnodeinfo=nil, ip=nil, destroyable=nil, tags=nil, autoflag=nil, hardwareresourcetype=nil, isdynamicspec=nil, dynamicpodspec=nil, supportmodifypaymode=nil, rootstoragetype=nil, zone=nil, subnetinfo=nil, clients=nil, currenttime=nil, isfederation=nil, devicename=nil, serviceclient=nil, disableapitermination=nil, tradeversion=nil, servicesstatus=nil)
@AppId = appid
@SerialNo = serialno
@OrderNo = orderno
@WanIp = wanip
@Flag = flag
@Spec = spec
@CpuNum = cpunum
@MemSize = memsize
@MemDesc = memdesc
@RegionId = regionid
@ZoneId = zoneid
@ApplyTime = applytime
@FreeTime = freetime
@DiskSize = disksize
@NameTag = nametag
@Services = services
@StorageType = storagetype
@RootSize = rootsize
@ChargeType = chargetype
@CdbIp = cdbip
@CdbPort = cdbport
@HwDiskSize = hwdisksize
@HwDiskSizeDesc = hwdisksizedesc
@HwMemSize = hwmemsize
@HwMemSizeDesc = hwmemsizedesc
@ExpireTime = expiretime
@EmrResourceId = emrresourceid
@IsAutoRenew = isautorenew
@DeviceClass = deviceclass
@Mutable = mutable
@MCMultiDisk = mcmultidisk
@CdbNodeInfo = cdbnodeinfo
@Ip = ip
@Destroyable = destroyable
@Tags = tags
@AutoFlag = autoflag
@HardwareResourceType = hardwareresourcetype
@IsDynamicSpec = isdynamicspec
@DynamicPodSpec = dynamicpodspec
@SupportModifyPayMode = supportmodifypaymode
@RootStorageType = rootstoragetype
@Zone = zone
@SubnetInfo = subnetinfo
@Clients = clients
@CurrentTime = currenttime
@IsFederation = isfederation
@DeviceName = devicename
@ServiceClient = serviceclient
@DisableApiTermination = disableapitermination
@TradeVersion = tradeversion
@ServicesStatus = servicesstatus
end
def deserialize(params)
@AppId = params['AppId']
@SerialNo = params['SerialNo']
@OrderNo = params['OrderNo']
@WanIp = params['WanIp']
@Flag = params['Flag']
@Spec = params['Spec']
@CpuNum = params['CpuNum']
@MemSize = params['MemSize']
@MemDesc = params['MemDesc']
@RegionId = params['RegionId']
@ZoneId = params['ZoneId']
@ApplyTime = params['ApplyTime']
@FreeTime = params['FreeTime']
@DiskSize = params['DiskSize']
@NameTag = params['NameTag']
@Services = params['Services']
@StorageType = params['StorageType']
@RootSize = params['RootSize']
@ChargeType = params['ChargeType']
@CdbIp = params['CdbIp']
@CdbPort = params['CdbPort']
@HwDiskSize = params['HwDiskSize']
@HwDiskSizeDesc = params['HwDiskSizeDesc']
@HwMemSize = params['HwMemSize']
@HwMemSizeDesc = params['HwMemSizeDesc']
@ExpireTime = params['ExpireTime']
@EmrResourceId = params['EmrResourceId']
@IsAutoRenew = params['IsAutoRenew']
@DeviceClass = params['DeviceClass']
@Mutable = params['Mutable']
unless params['MCMultiDisk'].nil?
@MCMultiDisk = []
params['MCMultiDisk'].each do |i|
multidiskmc_tmp = MultiDiskMC.new
multidiskmc_tmp.deserialize(i)
@MCMultiDisk << multidiskmc_tmp
end
end
unless params['CdbNodeInfo'].nil?
@CdbNodeInfo = CdbInfo.new
@CdbNodeInfo.deserialize(params['CdbNodeInfo'])
end
@Ip = params['Ip']
@Destroyable = params['Destroyable']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@AutoFlag = params['AutoFlag']
@HardwareResourceType = params['HardwareResourceType']
@IsDynamicSpec = params['IsDynamicSpec']
@DynamicPodSpec = params['DynamicPodSpec']
@SupportModifyPayMode = params['SupportModifyPayMode']
@RootStorageType = params['RootStorageType']
@Zone = params['Zone']
unless params['SubnetInfo'].nil?
@SubnetInfo = SubnetInfo.new
@SubnetInfo.deserialize(params['SubnetInfo'])
end
@Clients = params['Clients']
@CurrentTime = params['CurrentTime']
@IsFederation = params['IsFederation']
@DeviceName = params['DeviceName']
@ServiceClient = params['ServiceClient']
@DisableApiTermination = params['DisableApiTermination']
@TradeVersion = params['TradeVersion']
@ServicesStatus = params['ServicesStatus']
end
end
# 资源详情
class NodeResourceSpec < TencentCloud::Common::AbstractModel
# @param InstanceType: 规格类型,如S2.MEDIUM8
# 注意:此字段可能返回 null,表示取不到有效值。
# @type InstanceType: String
# @param SystemDisk: 系统盘,系统盘个数不超过1块
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SystemDisk: Array
# @param Tags: 需要绑定的标签列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Tags: Array
# @param DataDisk: 云数据盘,云数据盘总个数不超过15块
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DataDisk: Array
# @param LocalDataDisk: 本地数据盘
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LocalDataDisk: Array
attr_accessor :InstanceType, :SystemDisk, :Tags, :DataDisk, :LocalDataDisk
def initialize(instancetype=nil, systemdisk=nil, tags=nil, datadisk=nil, localdatadisk=nil)
@InstanceType = instancetype
@SystemDisk = systemdisk
@Tags = tags
@DataDisk = datadisk
@LocalDataDisk = localdatadisk
end
def deserialize(params)
@InstanceType = params['InstanceType']
unless params['SystemDisk'].nil?
@SystemDisk = []
params['SystemDisk'].each do |i|
diskspecinfo_tmp = DiskSpecInfo.new
diskspecinfo_tmp.deserialize(i)
@SystemDisk << diskspecinfo_tmp
end
end
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
unless params['DataDisk'].nil?
@DataDisk = []
params['DataDisk'].each do |i|
diskspecinfo_tmp = DiskSpecInfo.new
diskspecinfo_tmp.deserialize(i)
@DataDisk << diskspecinfo_tmp
end
end
unless params['LocalDataDisk'].nil?
@LocalDataDisk = []
params['LocalDataDisk'].each do |i|
diskspecinfo_tmp = DiskSpecInfo.new
diskspecinfo_tmp.deserialize(i)
@LocalDataDisk << diskspecinfo_tmp
end
end
end
end
# 操作范围
class OpScope < TencentCloud::Common::AbstractModel
# @param ServiceInfoList: 操作范围,要操作的服务信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ServiceInfoList: Array
attr_accessor :ServiceInfoList
def initialize(serviceinfolist=nil)
@ServiceInfoList = serviceinfolist
end
def deserialize(params)
unless params['ServiceInfoList'].nil?
@ServiceInfoList = []
params['ServiceInfoList'].each do |i|
servicebasicrestartinfo_tmp = ServiceBasicRestartInfo.new
servicebasicrestartinfo_tmp.deserialize(i)
@ServiceInfoList << servicebasicrestartinfo_tmp
end
end
end
end
# 资源详情
class OutterResource < TencentCloud::Common::AbstractModel
# @param Spec: 规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Spec: String
# @param SpecName: 规格名
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SpecName: String
# @param StorageType: 硬盘类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type StorageType: Integer
# @param DiskType: 硬盘类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskType: String
# @param RootSize: 系统盘大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RootSize: Integer
# @param MemSize: 内存大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MemSize: Integer
# @param Cpu: CPU个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Cpu: Integer
# @param DiskSize: 硬盘大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskSize: Integer
# @param InstanceType: 规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type InstanceType: String
attr_accessor :Spec, :SpecName, :StorageType, :DiskType, :RootSize, :MemSize, :Cpu, :DiskSize, :InstanceType
def initialize(spec=nil, specname=nil, storagetype=nil, disktype=nil, rootsize=nil, memsize=nil, cpu=nil, disksize=nil, instancetype=nil)
@Spec = spec
@SpecName = specname
@StorageType = storagetype
@DiskType = disktype
@RootSize = rootsize
@MemSize = memsize
@Cpu = cpu
@DiskSize = disksize
@InstanceType = instancetype
end
def deserialize(params)
@Spec = params['Spec']
@SpecName = params['SpecName']
@StorageType = params['StorageType']
@DiskType = params['DiskType']
@RootSize = params['RootSize']
@MemSize = params['MemSize']
@Cpu = params['Cpu']
@DiskSize = params['DiskSize']
@InstanceType = params['InstanceType']
end
end
# 用于创建集群价格清单-节点组成部分价格
class PartDetailPriceItem < TencentCloud::Common::AbstractModel
# @param InstanceType: 类型包括:节点->node、系统盘->rootDisk、云数据盘->dataDisk、metaDB
# 注意:此字段可能返回 null,表示取不到有效值。
# @type InstanceType: String
# @param Price: 单价(原价)
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Price: Float
# @param RealCost: 单价(折扣价)
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RealCost: Float
# @param RealTotalCost: 总价(折扣价)
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RealTotalCost: Float
# @param Policy: 折扣
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Policy: Float
# @param GoodsNum: 数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type GoodsNum: Integer
attr_accessor :InstanceType, :Price, :RealCost, :RealTotalCost, :Policy, :GoodsNum
def initialize(instancetype=nil, price=nil, realcost=nil, realtotalcost=nil, policy=nil, goodsnum=nil)
@InstanceType = instancetype
@Price = price
@RealCost = realcost
@RealTotalCost = realtotalcost
@Policy = policy
@GoodsNum = goodsnum
end
def deserialize(params)
@InstanceType = params['InstanceType']
@Price = params['Price']
@RealCost = params['RealCost']
@RealTotalCost = params['RealTotalCost']
@Policy = params['Policy']
@GoodsNum = params['GoodsNum']
end
end
# Pod PVC存储方式描述
class PersistentVolumeContext < TencentCloud::Common::AbstractModel
# @param DiskSize: 磁盘大小,单位为GB。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskSize: Integer
# @param DiskType: 磁盘类型。CLOUD_PREMIUM;CLOUD_SSD
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskType: String
# @param DiskNum: 磁盘数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskNum: Integer
attr_accessor :DiskSize, :DiskType, :DiskNum
def initialize(disksize=nil, disktype=nil, disknum=nil)
@DiskSize = disksize
@DiskType = disktype
@DiskNum = disknum
end
def deserialize(params)
@DiskSize = params['DiskSize']
@DiskType = params['DiskType']
@DiskNum = params['DiskNum']
end
end
# 描述集群实例位置信息
class Placement < TencentCloud::Common::AbstractModel
# @param Zone: 实例所属的可用区,例如ap-guangzhou-1。该参数也可以通过调用[DescribeZones](https://cloud.tencent.com/document/product/213/15707) 的返回值中的Zone字段来获取。
# @type Zone: String
# @param ProjectId: 实例所属项目ID。该参数可以通过调用[DescribeProject](https://cloud.tencent.com/document/api/651/78725) 的返回值中的 projectId 字段来获取。不填为默认项目。
# @type ProjectId: Integer
attr_accessor :Zone, :ProjectId
def initialize(zone=nil, projectid=nil)
@Zone = zone
@ProjectId = projectid
end
def deserialize(params)
@Zone = params['Zone']
@ProjectId = params['ProjectId']
end
end
# POD自定义权限和自定义参数
class PodNewParameter < TencentCloud::Common::AbstractModel
# @param InstanceId: TKE或EKS集群ID
# @type InstanceId: String
# @param Config: 自定义权限
# 如:
# {
# "apiVersion": "v1",
# "clusters": [
# {
# "cluster": {
# "certificate-authority-data": "xxxxxx==",
# "server": "https://xxxxx.com"
# },
# "name": "cls-xxxxx"
# }
# ],
# "contexts": [
# {
# "context": {
# "cluster": "cls-xxxxx",
# "user": "100014xxxxx"
# },
# "name": "cls-a44yhcxxxxxxxxxx"
# }
# ],
# "current-context": "cls-a4xxxx-context-default",
# "kind": "Config",
# "preferences": {},
# "users": [
# {
# "name": "100014xxxxx",
# "user": {
# "client-certificate-data": "xxxxxx",
# "client-key-data": "xxxxxx"
# }
# }
# ]
# }
# @type Config: String
# @param Parameter: 自定义参数
# 如:
# {
# "apiVersion": "apps/v1",
# "kind": "Deployment",
# "metadata": {
# "name": "test-deployment",
# "labels": {
# "app": "test"
# }
# },
# "spec": {
# "replicas": 3,
# "selector": {
# "matchLabels": {
# "app": "test-app"
# }
# },
# "template": {
# "metadata": {
# "annotations": {
# "your-organization.com/department-v1": "test-example-v1",
# "your-organization.com/department-v2": "test-example-v2"
# },
# "labels": {
# "app": "test-app",
# "environment": "production"
# }
# },
# "spec": {
# "nodeSelector": {
# "your-organization/node-test": "test-node"
# },
# "containers": [
# {
# "name": "nginx",
# "image": "nginx:1.14.2",
# "ports": [
# {
# "containerPort": 80
# }
# ]
# }
# ],
# "affinity": {
# "nodeAffinity": {
# "requiredDuringSchedulingIgnoredDuringExecution": {
# "nodeSelectorTerms": [
# {
# "matchExpressions": [
# {
# "key": "disk-type",
# "operator": "In",
# "values": [
# "ssd",
# "sas"
# ]
# },
# {
# "key": "cpu-num",
# "operator": "Gt",
# "values": [
# "6"
# ]
# }
# ]
# }
# ]
# }
# }
# }
# }
# }
# }
# }
# @type Parameter: String
attr_accessor :InstanceId, :Config, :Parameter
def initialize(instanceid=nil, config=nil, parameter=nil)
@InstanceId = instanceid
@Config = config
@Parameter = parameter
end
def deserialize(params)
@InstanceId = params['InstanceId']
@Config = params['Config']
@Parameter = params['Parameter']
end
end
# 扩容容器资源时的资源描述
class PodNewSpec < TencentCloud::Common::AbstractModel
# @param ResourceProviderIdentifier: 外部资源提供者的标识符,例如"cls-a1cd23fa"。
# @type ResourceProviderIdentifier: String
# @param ResourceProviderType: 外部资源提供者类型,例如"tke",当前仅支持"tke"。
# @type ResourceProviderType: String
# @param NodeFlag: 资源的用途,即节点类型,当前仅支持"TASK"。
# @type NodeFlag: String
# @param Cpu: CPU核数。
# @type Cpu: Integer
# @param Memory: 内存大小,单位为GB。
# @type Memory: Integer
# @param CpuType: Eks集群-CPU类型,当前支持"intel"和"amd"
# @type CpuType: String
# @param PodVolumes: Pod节点数据目录挂载信息。
# @type PodVolumes: Array
# @param EnableDynamicSpecFlag: 是否浮动规格,默认否
# true:代表是
# false:代表否
# @type EnableDynamicSpecFlag: Boolean
# @param DynamicPodSpec: 浮动规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DynamicPodSpec: :class:`Tencentcloud::Emr.v20190103.models.DynamicPodSpec`
# @param VpcId: 代表vpc网络唯一id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VpcId: String
# @param SubnetId: 代表vpc子网唯一id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SubnetId: String
# @param PodName: pod name
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PodName: String
attr_accessor :ResourceProviderIdentifier, :ResourceProviderType, :NodeFlag, :Cpu, :Memory, :CpuType, :PodVolumes, :EnableDynamicSpecFlag, :DynamicPodSpec, :VpcId, :SubnetId, :PodName
def initialize(resourceprovideridentifier=nil, resourceprovidertype=nil, nodeflag=nil, cpu=nil, memory=nil, cputype=nil, podvolumes=nil, enabledynamicspecflag=nil, dynamicpodspec=nil, vpcid=nil, subnetid=nil, podname=nil)
@ResourceProviderIdentifier = resourceprovideridentifier
@ResourceProviderType = resourceprovidertype
@NodeFlag = nodeflag
@Cpu = cpu
@Memory = memory
@CpuType = cputype
@PodVolumes = podvolumes
@EnableDynamicSpecFlag = enabledynamicspecflag
@DynamicPodSpec = dynamicpodspec
@VpcId = vpcid
@SubnetId = subnetid
@PodName = podname
end
def deserialize(params)
@ResourceProviderIdentifier = params['ResourceProviderIdentifier']
@ResourceProviderType = params['ResourceProviderType']
@NodeFlag = params['NodeFlag']
@Cpu = params['Cpu']
@Memory = params['Memory']
@CpuType = params['CpuType']
unless params['PodVolumes'].nil?
@PodVolumes = []
params['PodVolumes'].each do |i|
podvolume_tmp = PodVolume.new
podvolume_tmp.deserialize(i)
@PodVolumes << podvolume_tmp
end
end
@EnableDynamicSpecFlag = params['EnableDynamicSpecFlag']
unless params['DynamicPodSpec'].nil?
@DynamicPodSpec = DynamicPodSpec.new
@DynamicPodSpec.deserialize(params['DynamicPodSpec'])
end
@VpcId = params['VpcId']
@SubnetId = params['SubnetId']
@PodName = params['PodName']
end
end
# POD自定义权限和自定义参数
class PodParameter < TencentCloud::Common::AbstractModel
# @param ClusterId: TKE或EKS集群ID
# @type ClusterId: String
# @param Config: 自定义权限
# 如:
# {
# "apiVersion": "v1",
# "clusters": [
# {
# "cluster": {
# "certificate-authority-data": "xxxxxx==",
# "server": "https://xxxxx.com"
# },
# "name": "cls-xxxxx"
# }
# ],
# "contexts": [
# {
# "context": {
# "cluster": "cls-xxxxx",
# "user": "100014xxxxx"
# },
# "name": "cls-a44yhcxxxxxxxxxx"
# }
# ],
# "current-context": "cls-a4xxxx-context-default",
# "kind": "Config",
# "preferences": {},
# "users": [
# {
# "name": "100014xxxxx",
# "user": {
# "client-certificate-data": "xxxxxx",
# "client-key-data": "xxxxxx"
# }
# }
# ]
# }
# @type Config: String
# @param Parameter: 自定义参数
# 如:
# {
# "apiVersion": "apps/v1",
# "kind": "Deployment",
# "metadata": {
# "name": "test-deployment",
# "labels": {
# "app": "test"
# }
# },
# "spec": {
# "replicas": 3,
# "selector": {
# "matchLabels": {
# "app": "test-app"
# }
# },
# "template": {
# "metadata": {
# "annotations": {
# "your-organization.com/department-v1": "test-example-v1",
# "your-organization.com/department-v2": "test-example-v2"
# },
# "labels": {
# "app": "test-app",
# "environment": "production"
# }
# },
# "spec": {
# "nodeSelector": {
# "your-organization/node-test": "test-node"
# },
# "containers": [
# {
# "name": "nginx",
# "image": "nginx:1.14.2",
# "ports": [
# {
# "containerPort": 80
# }
# ]
# }
# ],
# "affinity": {
# "nodeAffinity": {
# "requiredDuringSchedulingIgnoredDuringExecution": {
# "nodeSelectorTerms": [
# {
# "matchExpressions": [
# {
# "key": "disk-type",
# "operator": "In",
# "values": [
# "ssd",
# "sas"
# ]
# },
# {
# "key": "cpu-num",
# "operator": "Gt",
# "values": [
# "6"
# ]
# }
# ]
# }
# ]
# }
# }
# }
# }
# }
# }
# }
# @type Parameter: String
attr_accessor :ClusterId, :Config, :Parameter
def initialize(clusterid=nil, config=nil, parameter=nil)
@ClusterId = clusterid
@Config = config
@Parameter = parameter
end
def deserialize(params)
@ClusterId = params['ClusterId']
@Config = params['Config']
@Parameter = params['Parameter']
end
end
# Pod资源售卖规格
class PodSaleSpec < TencentCloud::Common::AbstractModel
# @param NodeType: 可售卖的资源规格,仅为以下值:"TASK","CORE","MASTER","ROUTER"。
# @type NodeType: String
# @param Cpu: Cpu核数。
# @type Cpu: Integer
# @param Memory: 内存数量,单位为GB。
# @type Memory: Integer
# @param Number: 该规格资源可申请的最大数量。
# @type Number: Integer
attr_accessor :NodeType, :Cpu, :Memory, :Number
def initialize(nodetype=nil, cpu=nil, memory=nil, number=nil)
@NodeType = nodetype
@Cpu = cpu
@Memory = memory
@Number = number
end
def deserialize(params)
@NodeType = params['NodeType']
@Cpu = params['Cpu']
@Memory = params['Memory']
@Number = params['Number']
end
end
# 扩容容器资源时的资源描述
class PodSpec < TencentCloud::Common::AbstractModel
# @param ResourceProviderIdentifier: 外部资源提供者的标识符,例如"cls-a1cd23fa"。
# @type ResourceProviderIdentifier: String
# @param ResourceProviderType: 外部资源提供者类型,例如"tke",当前仅支持"tke"。
# @type ResourceProviderType: String
# @param NodeType: 资源的用途,即节点类型,当前仅支持"TASK"。
# @type NodeType: String
# @param Cpu: CPU核数。
# @type Cpu: Integer
# @param Memory: 内存大小,单位为GB。
# @type Memory: Integer
# @param DataVolumes: 资源对宿主机的挂载点,指定的挂载点对应了宿主机的路径,该挂载点在Pod中作为数据存储目录使用。弃用
# @type DataVolumes: Array
# @param CpuType: Eks集群-CPU类型,当前支持"intel"和"amd"
# @type CpuType: String
# @param PodVolumes: Pod节点数据目录挂载信息。
# @type PodVolumes: Array
# @param IsDynamicSpec: 是否浮动规格,1是,0否
# @type IsDynamicSpec: Integer
# @param DynamicPodSpec: 浮动规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DynamicPodSpec: :class:`Tencentcloud::Emr.v20190103.models.DynamicPodSpec`
# @param VpcId: 代表vpc网络唯一id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VpcId: String
# @param SubnetId: 代表vpc子网唯一id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SubnetId: String
# @param PodName: pod name
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PodName: String
attr_accessor :ResourceProviderIdentifier, :ResourceProviderType, :NodeType, :Cpu, :Memory, :DataVolumes, :CpuType, :PodVolumes, :IsDynamicSpec, :DynamicPodSpec, :VpcId, :SubnetId, :PodName
def initialize(resourceprovideridentifier=nil, resourceprovidertype=nil, nodetype=nil, cpu=nil, memory=nil, datavolumes=nil, cputype=nil, podvolumes=nil, isdynamicspec=nil, dynamicpodspec=nil, vpcid=nil, subnetid=nil, podname=nil)
@ResourceProviderIdentifier = resourceprovideridentifier
@ResourceProviderType = resourceprovidertype
@NodeType = nodetype
@Cpu = cpu
@Memory = memory
@DataVolumes = datavolumes
@CpuType = cputype
@PodVolumes = podvolumes
@IsDynamicSpec = isdynamicspec
@DynamicPodSpec = dynamicpodspec
@VpcId = vpcid
@SubnetId = subnetid
@PodName = podname
end
def deserialize(params)
@ResourceProviderIdentifier = params['ResourceProviderIdentifier']
@ResourceProviderType = params['ResourceProviderType']
@NodeType = params['NodeType']
@Cpu = params['Cpu']
@Memory = params['Memory']
@DataVolumes = params['DataVolumes']
@CpuType = params['CpuType']
unless params['PodVolumes'].nil?
@PodVolumes = []
params['PodVolumes'].each do |i|
podvolume_tmp = PodVolume.new
podvolume_tmp.deserialize(i)
@PodVolumes << podvolume_tmp
end
end
@IsDynamicSpec = params['IsDynamicSpec']
unless params['DynamicPodSpec'].nil?
@DynamicPodSpec = DynamicPodSpec.new
@DynamicPodSpec.deserialize(params['DynamicPodSpec'])
end
@VpcId = params['VpcId']
@SubnetId = params['SubnetId']
@PodName = params['PodName']
end
end
# Pod相关信息
class PodSpecInfo < TencentCloud::Common::AbstractModel
# @param PodSpec: 使用Pod资源扩容时,指定的Pod规格以及来源等信息
# @type PodSpec: :class:`Tencentcloud::Emr.v20190103.models.PodNewSpec`
# @param PodParameter: POD自定义权限和自定义参数
# @type PodParameter: :class:`Tencentcloud::Emr.v20190103.models.PodNewParameter`
attr_accessor :PodSpec, :PodParameter
def initialize(podspec=nil, podparameter=nil)
@PodSpec = podspec
@PodParameter = podparameter
end
def deserialize(params)
unless params['PodSpec'].nil?
@PodSpec = PodNewSpec.new
@PodSpec.deserialize(params['PodSpec'])
end
unless params['PodParameter'].nil?
@PodParameter = PodNewParameter.new
@PodParameter.deserialize(params['PodParameter'])
end
end
end
# 单个pod状态
class PodState < TencentCloud::Common::AbstractModel
# @param Name: pod的名称
# @type Name: String
# @param Uuid: pod uuid
# @type Uuid: String
# @param State: pod的状态
# @type State: String
# @param Reason: pod处于该状态原因
# @type Reason: String
# @param OwnerCluster: pod所属集群
# @type OwnerCluster: String
# @param Memory: pod内存大小
# @type Memory: Integer
attr_accessor :Name, :Uuid, :State, :Reason, :OwnerCluster, :Memory
def initialize(name=nil, uuid=nil, state=nil, reason=nil, ownercluster=nil, memory=nil)
@Name = name
@Uuid = uuid
@State = state
@Reason = reason
@OwnerCluster = ownercluster
@Memory = memory
end
def deserialize(params)
@Name = params['Name']
@Uuid = params['Uuid']
@State = params['State']
@Reason = params['Reason']
@OwnerCluster = params['OwnerCluster']
@Memory = params['Memory']
end
end
# Pod的存储设备描述信息。
class PodVolume < TencentCloud::Common::AbstractModel
# @param VolumeType: 存储类型,可为"pvc","hostpath"。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VolumeType: String
# @param PVCVolume: 当VolumeType为"pvc"时,该字段生效。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PVCVolume: :class:`Tencentcloud::Emr.v20190103.models.PersistentVolumeContext`
# @param HostVolume: 当VolumeType为"hostpath"时,该字段生效。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HostVolume: :class:`Tencentcloud::Emr.v20190103.models.HostVolumeContext`
attr_accessor :VolumeType, :PVCVolume, :HostVolume
def initialize(volumetype=nil, pvcvolume=nil, hostvolume=nil)
@VolumeType = volumetype
@PVCVolume = pvcvolume
@HostVolume = hostvolume
end
def deserialize(params)
@VolumeType = params['VolumeType']
unless params['PVCVolume'].nil?
@PVCVolume = PersistentVolumeContext.new
@PVCVolume.deserialize(params['PVCVolume'])
end
unless params['HostVolume'].nil?
@HostVolume = HostVolumeContext.new
@HostVolume.deserialize(params['HostVolume'])
end
end
end
# 预执行脚本配置
class PreExecuteFileSettings < TencentCloud::Common::AbstractModel
# @param Path: 脚本在COS上路径,已废弃
# @type Path: String
# @param Args: 执行脚本参数
# @type Args: Array
# @param Bucket: COS的Bucket名称,已废弃
# @type Bucket: String
# @param Region: COS的Region名称,已废弃
# @type Region: String
# @param Domain: COS的Domain数据,已废弃
# @type Domain: String
# @param RunOrder: 执行顺序
# @type RunOrder: Integer
# @param WhenRun: resourceAfter 或 clusterAfter
# @type WhenRun: String
# @param CosFileName: 脚本文件名,已废弃
# @type CosFileName: String
# @param CosFileURI: 脚本的cos地址
# @type CosFileURI: String
# @param CosSecretId: cos的SecretId
# @type CosSecretId: String
# @param CosSecretKey: Cos的SecretKey
# @type CosSecretKey: String
# @param AppId: cos的appid,已废弃
# @type AppId: String
# @param Remark: 备注
# @type Remark: String
attr_accessor :Path, :Args, :Bucket, :Region, :Domain, :RunOrder, :WhenRun, :CosFileName, :CosFileURI, :CosSecretId, :CosSecretKey, :AppId, :Remark
def initialize(path=nil, args=nil, bucket=nil, region=nil, domain=nil, runorder=nil, whenrun=nil, cosfilename=nil, cosfileuri=nil, cossecretid=nil, cossecretkey=nil, appid=nil, remark=nil)
@Path = path
@Args = args
@Bucket = bucket
@Region = region
@Domain = domain
@RunOrder = runorder
@WhenRun = whenrun
@CosFileName = cosfilename
@CosFileURI = cosfileuri
@CosSecretId = cossecretid
@CosSecretKey = cossecretkey
@AppId = appid
@Remark = remark
end
def deserialize(params)
@Path = params['Path']
@Args = params['Args']
@Bucket = params['Bucket']
@Region = params['Region']
@Domain = params['Domain']
@RunOrder = params['RunOrder']
@WhenRun = params['WhenRun']
@CosFileName = params['CosFileName']
@CosFileURI = params['CosFileURI']
@CosSecretId = params['CosSecretId']
@CosSecretKey = params['CosSecretKey']
@AppId = params['AppId']
@Remark = params['Remark']
end
end
# 价格详情
class PriceDetail < TencentCloud::Common::AbstractModel
# @param ResourceId: 节点ID
# @type ResourceId: String
# @param Formula: 价格计算公式
# @type Formula: String
# @param OriginalCost: 原价
# @type OriginalCost: Float
# @param DiscountCost: 折扣价
# @type DiscountCost: Float
attr_accessor :ResourceId, :Formula, :OriginalCost, :DiscountCost
def initialize(resourceid=nil, formula=nil, originalcost=nil, discountcost=nil)
@ResourceId = resourceid
@Formula = formula
@OriginalCost = originalcost
@DiscountCost = discountcost
end
def deserialize(params)
@ResourceId = params['ResourceId']
@Formula = params['Formula']
@OriginalCost = params['OriginalCost']
@DiscountCost = params['DiscountCost']
end
end
# 询价资源
class PriceResource < TencentCloud::Common::AbstractModel
# @param Spec: 需要的规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Spec: String
# @param StorageType: 硬盘类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type StorageType: Integer
# @param DiskType: 硬盘类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskType: String
# @param RootSize: 系统盘大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RootSize: Integer
# @param MemSize: 内存大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MemSize: Integer
# @param Cpu: 核心数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Cpu: Integer
# @param DiskSize: 硬盘大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskSize: Integer
# @param MultiDisks: 云盘列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MultiDisks: Array
# @param DiskCnt: 磁盘数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskCnt: Integer
# @param InstanceType: 规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type InstanceType: String
# @param Tags: 标签
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Tags: Array
# @param DiskNum: 磁盘数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskNum: Integer
# @param LocalDiskNum: 本地盘的数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LocalDiskNum: Integer
attr_accessor :Spec, :StorageType, :DiskType, :RootSize, :MemSize, :Cpu, :DiskSize, :MultiDisks, :DiskCnt, :InstanceType, :Tags, :DiskNum, :LocalDiskNum
def initialize(spec=nil, storagetype=nil, disktype=nil, rootsize=nil, memsize=nil, cpu=nil, disksize=nil, multidisks=nil, diskcnt=nil, instancetype=nil, tags=nil, disknum=nil, localdisknum=nil)
@Spec = spec
@StorageType = storagetype
@DiskType = disktype
@RootSize = rootsize
@MemSize = memsize
@Cpu = cpu
@DiskSize = disksize
@MultiDisks = multidisks
@DiskCnt = diskcnt
@InstanceType = instancetype
@Tags = tags
@DiskNum = disknum
@LocalDiskNum = localdisknum
end
def deserialize(params)
@Spec = params['Spec']
@StorageType = params['StorageType']
@DiskType = params['DiskType']
@RootSize = params['RootSize']
@MemSize = params['MemSize']
@Cpu = params['Cpu']
@DiskSize = params['DiskSize']
unless params['MultiDisks'].nil?
@MultiDisks = []
params['MultiDisks'].each do |i|
multidisk_tmp = MultiDisk.new
multidisk_tmp.deserialize(i)
@MultiDisks << multidisk_tmp
end
end
@DiskCnt = params['DiskCnt']
@InstanceType = params['InstanceType']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@DiskNum = params['DiskNum']
@LocalDiskNum = params['LocalDiskNum']
end
end
# 获取CVM配额
class QuotaEntity < TencentCloud::Common::AbstractModel
# @param UsedQuota: 已使用配额
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UsedQuota: Integer
# @param RemainingQuota: 剩余配额
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RemainingQuota: Integer
# @param TotalQuota: 总配额
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TotalQuota: Integer
# @param Zone: 可用区
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Zone: String
attr_accessor :UsedQuota, :RemainingQuota, :TotalQuota, :Zone
def initialize(usedquota=nil, remainingquota=nil, totalquota=nil, zone=nil)
@UsedQuota = usedquota
@RemainingQuota = remainingquota
@TotalQuota = totalquota
@Zone = zone
end
def deserialize(params)
@UsedQuota = params['UsedQuota']
@RemainingQuota = params['RemainingQuota']
@TotalQuota = params['TotalQuota']
@Zone = params['Zone']
end
end
# 集群续费实例信息
class RenewInstancesInfo < TencentCloud::Common::AbstractModel
# @param EmrResourceId: 节点资源ID
# @type EmrResourceId: String
# @param Flag: 节点类型。0:common节点;1:master节点
# ;2:core节点;3:task节点
# @type Flag: Integer
# @param Ip: 内网IP
# @type Ip: String
# @param MemDesc: 节点内存描述
# @type MemDesc: String
# @param CpuNum: 节点核数
# @type CpuNum: Integer
# @param DiskSize: 硬盘大小
# @type DiskSize: String
# @param ExpireTime: 过期时间
# @type ExpireTime: String
# @param Spec: 节点规格
# @type Spec: String
# @param StorageType: 磁盘类型
# @type StorageType: Integer
attr_accessor :EmrResourceId, :Flag, :Ip, :MemDesc, :CpuNum, :DiskSize, :ExpireTime, :Spec, :StorageType
def initialize(emrresourceid=nil, flag=nil, ip=nil, memdesc=nil, cpunum=nil, disksize=nil, expiretime=nil, spec=nil, storagetype=nil)
@EmrResourceId = emrresourceid
@Flag = flag
@Ip = ip
@MemDesc = memdesc
@CpuNum = cpunum
@DiskSize = disksize
@ExpireTime = expiretime
@Spec = spec
@StorageType = storagetype
end
def deserialize(params)
@EmrResourceId = params['EmrResourceId']
@Flag = params['Flag']
@Ip = params['Ip']
@MemDesc = params['MemDesc']
@CpuNum = params['CpuNum']
@DiskSize = params['DiskSize']
@ExpireTime = params['ExpireTime']
@Spec = params['Spec']
@StorageType = params['StorageType']
end
end
# 资源详情
class Resource < TencentCloud::Common::AbstractModel
# @param Spec: 节点规格描述,如CVM.SA2。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Spec: String
# @param StorageType: 存储类型
# 取值范围:
# 4:表示云SSD。
# 5:表示高效云盘。
# 6:表示增强型SSD云硬盘。
# 11:表示吞吐型云硬盘。
# 12:表示极速型SSD云硬盘。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type StorageType: Integer
# @param DiskType: 磁盘类型
# 取值范围:
# CLOUD_SSD:表示云SSD。
# CLOUD_PREMIUM:表示高效云盘。
# CLOUD_BASIC:表示云硬盘。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskType: String
# @param MemSize: 内存容量,单位为M
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MemSize: Integer
# @param Cpu: CPU核数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Cpu: Integer
# @param DiskSize: 数据盘容量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskSize: Integer
# @param RootSize: 系统盘容量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RootSize: Integer
# @param MultiDisks: 云盘列表,当数据盘为一块云盘时,直接使用DiskType和DiskSize参数,超出部分使用MultiDisks
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MultiDisks: Array
# @param Tags: 需要绑定的标签列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Tags: Array
# @param InstanceType: 规格类型,如S2.MEDIUM8
# 注意:此字段可能返回 null,表示取不到有效值。
# @type InstanceType: String
# @param LocalDiskNum: 本地盘数量,该字段已废弃
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LocalDiskNum: Integer
# @param DiskNum: 本地盘数量,如2
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskNum: Integer
attr_accessor :Spec, :StorageType, :DiskType, :MemSize, :Cpu, :DiskSize, :RootSize, :MultiDisks, :Tags, :InstanceType, :LocalDiskNum, :DiskNum
def initialize(spec=nil, storagetype=nil, disktype=nil, memsize=nil, cpu=nil, disksize=nil, rootsize=nil, multidisks=nil, tags=nil, instancetype=nil, localdisknum=nil, disknum=nil)
@Spec = spec
@StorageType = storagetype
@DiskType = disktype
@MemSize = memsize
@Cpu = cpu
@DiskSize = disksize
@RootSize = rootsize
@MultiDisks = multidisks
@Tags = tags
@InstanceType = instancetype
@LocalDiskNum = localdisknum
@DiskNum = disknum
end
def deserialize(params)
@Spec = params['Spec']
@StorageType = params['StorageType']
@DiskType = params['DiskType']
@MemSize = params['MemSize']
@Cpu = params['Cpu']
@DiskSize = params['DiskSize']
@RootSize = params['RootSize']
unless params['MultiDisks'].nil?
@MultiDisks = []
params['MultiDisks'].each do |i|
multidisk_tmp = MultiDisk.new
multidisk_tmp.deserialize(i)
@MultiDisks << multidisk_tmp
end
end
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@InstanceType = params['InstanceType']
@LocalDiskNum = params['LocalDiskNum']
@DiskNum = params['DiskNum']
end
end
# 资源详情
class ResourceDetail < TencentCloud::Common::AbstractModel
# @param Spec: 规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Spec: String
# @param SpecName: 规格名
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SpecName: String
# @param StorageType: 硬盘类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type StorageType: Integer
# @param DiskType: 硬盘类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskType: String
# @param RootSize: 系统盘大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RootSize: Integer
# @param MemSize: 内存大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MemSize: Integer
# @param Cpu: CPU个数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Cpu: Integer
# @param DiskSize: 硬盘大小
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DiskSize: Integer
# @param InstanceType: 规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type InstanceType: String
attr_accessor :Spec, :SpecName, :StorageType, :DiskType, :RootSize, :MemSize, :Cpu, :DiskSize, :InstanceType
def initialize(spec=nil, specname=nil, storagetype=nil, disktype=nil, rootsize=nil, memsize=nil, cpu=nil, disksize=nil, instancetype=nil)
@Spec = spec
@SpecName = specname
@StorageType = storagetype
@DiskType = disktype
@RootSize = rootsize
@MemSize = memsize
@Cpu = cpu
@DiskSize = disksize
@InstanceType = instancetype
end
def deserialize(params)
@Spec = params['Spec']
@SpecName = params['SpecName']
@StorageType = params['StorageType']
@DiskType = params['DiskType']
@RootSize = params['RootSize']
@MemSize = params['MemSize']
@Cpu = params['Cpu']
@DiskSize = params['DiskSize']
@InstanceType = params['InstanceType']
end
end
# RunJobFlow请求参数结构体
class RunJobFlowRequest < TencentCloud::Common::AbstractModel
# @param Name: 作业名称。
# @type Name: String
# @param CreateCluster: 是否新创建集群。
# true,新创建集群,则使用Instance中的参数进行集群创建。
# false,使用已有集群,则通过InstanceId传入。
# @type CreateCluster: Boolean
# @param Steps: 作业流程执行步骤。
# @type Steps: Array
# @param InstancePolicy: 作业流程正常完成时,集群的处理方式,可选择:
# Terminate 销毁集群。
# Reserve 保留集群。
# @type InstancePolicy: String
# @param ProductVersion: 只有CreateCluster为true时生效,目前只支持EMR版本,例如EMR-2.2.0,不支持ClickHouse和Druid版本。
# @type ProductVersion: String
# @param SecurityClusterFlag: 只在CreateCluster为true时生效。
# true 表示安装kerberos,false表示不安装kerberos。
# @type SecurityClusterFlag: Boolean
# @param Software: 只在CreateCluster为true时生效。
# 新建集群时,要安装的软件列表。
# @type Software: Array
# @param BootstrapActions: 引导脚本。
# @type BootstrapActions: Array
# @param Configurations: 指定配置创建集群。
# @type Configurations: Array
# @param LogUri: 作业日志保存地址。
# @type LogUri: String
# @param InstanceId: 只在CreateCluster为false时生效。
# @type InstanceId: String
# @param ApplicationRole: 自定义应用角色,大数据应用访问外部服务时使用的角色,默认为"EME_QCSRole"。
# @type ApplicationRole: String
# @param ClientToken: 重入标签,用来可重入检查,防止在一段时间内,创建相同的流程作业。
# @type ClientToken: String
# @param Instance: 只在CreateCluster为true时生效,使用该配置创建集群。
# @type Instance: :class:`Tencentcloud::Emr.v20190103.models.ClusterSetting`
attr_accessor :Name, :CreateCluster, :Steps, :InstancePolicy, :ProductVersion, :SecurityClusterFlag, :Software, :BootstrapActions, :Configurations, :LogUri, :InstanceId, :ApplicationRole, :ClientToken, :Instance
def initialize(name=nil, createcluster=nil, steps=nil, instancepolicy=nil, productversion=nil, securityclusterflag=nil, software=nil, bootstrapactions=nil, configurations=nil, loguri=nil, instanceid=nil, applicationrole=nil, clienttoken=nil, instance=nil)
@Name = name
@CreateCluster = createcluster
@Steps = steps
@InstancePolicy = instancepolicy
@ProductVersion = productversion
@SecurityClusterFlag = securityclusterflag
@Software = software
@BootstrapActions = bootstrapactions
@Configurations = configurations
@LogUri = loguri
@InstanceId = instanceid
@ApplicationRole = applicationrole
@ClientToken = clienttoken
@Instance = instance
end
def deserialize(params)
@Name = params['Name']
@CreateCluster = params['CreateCluster']
unless params['Steps'].nil?
@Steps = []
params['Steps'].each do |i|
step_tmp = Step.new
step_tmp.deserialize(i)
@Steps << step_tmp
end
end
@InstancePolicy = params['InstancePolicy']
@ProductVersion = params['ProductVersion']
@SecurityClusterFlag = params['SecurityClusterFlag']
@Software = params['Software']
unless params['BootstrapActions'].nil?
@BootstrapActions = []
params['BootstrapActions'].each do |i|
bootstrapaction_tmp = BootstrapAction.new
bootstrapaction_tmp.deserialize(i)
@BootstrapActions << bootstrapaction_tmp
end
end
unless params['Configurations'].nil?
@Configurations = []
params['Configurations'].each do |i|
configuration_tmp = Configuration.new
configuration_tmp.deserialize(i)
@Configurations << configuration_tmp
end
end
@LogUri = params['LogUri']
@InstanceId = params['InstanceId']
@ApplicationRole = params['ApplicationRole']
@ClientToken = params['ClientToken']
unless params['Instance'].nil?
@Instance = ClusterSetting.new
@Instance.deserialize(params['Instance'])
end
end
end
# RunJobFlow返回参数结构体
class RunJobFlowResponse < TencentCloud::Common::AbstractModel
# @param JobFlowId: 作业流程ID。
# @type JobFlowId: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :JobFlowId, :RequestId
def initialize(jobflowid=nil, requestid=nil)
@JobFlowId = jobflowid
@RequestId = requestid
end
def deserialize(params)
@JobFlowId = params['JobFlowId']
@RequestId = params['RequestId']
end
end
# ScaleOutCluster请求参数结构体
class ScaleOutClusterRequest < TencentCloud::Common::AbstractModel
# @param InstanceChargeType: 节点计费模式。取值范围:
# PREPAID:预付费,即包年包月。
# POSTPAID_BY_HOUR:按小时后付费。
# SPOTPAID:竞价付费(仅支持TASK节点)。
# @type InstanceChargeType: String
# @param InstanceId: 集群实例ID。
# @type InstanceId: String
# @param ScaleOutNodeConfig: 扩容节点类型以及数量
# @type ScaleOutNodeConfig: :class:`Tencentcloud::Emr.v20190103.models.ScaleOutNodeConfig`
# @param ClientToken: 唯一随机标识,时效5分钟,需要调用者指定 防止客户端重新创建资源,例如 a9a90aa6-751a-41b6-aad6-fae36063280
# @type ClientToken: String
# @param InstanceChargePrepaid: 即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。
# @type InstanceChargePrepaid: :class:`Tencentcloud::Emr.v20190103.models.InstanceChargePrepaid`
# @param ScriptBootstrapActionConfig: [引导操作](https://cloud.tencent.com/document/product/589/35656)脚本设置。
# @type ScriptBootstrapActionConfig: Array
# @param SoftDeployInfo: 扩容部署服务,新增节点将默认继承当前节点类型中所部署服务,部署服务含默认可选服务,该参数仅支持可选服务填写,如:存量task节点已部署HDFS、YARN、impala;使用api扩容task节不部署impala时,部署服务仅填写HDFS、YARN。[组件名对应的映射关系表](https://cloud.tencent.com/document/product/589/98760)。
# @type SoftDeployInfo: Array
# @param ServiceNodeInfo: 部署进程,默认部署扩容服务的全部进程,支持修改部署进程,如:当前task节点部署服务为:HDFS、YARN、impala,默认部署服务为:DataNode,NodeManager,ImpalaServer,若用户需修改部署进程信息,部署进程: DataNode,NodeManager,ImpalaServerCoordinator或DataNode,NodeManager,ImpalaServerExecutor。[进程名对应的映射关系表](https://cloud.tencent.com/document/product/589/98760)。
# @type ServiceNodeInfo: Array
# @param DisasterRecoverGroupIds: 分散置放群组ID列表,当前只支持指定一个。
# 该参数可以通过调用 [DescribeDisasterRecoverGroups](https://cloud.tencent.com/document/product/213/17810)的返回值中的DisasterRecoverGroupId字段来获取。
# @type DisasterRecoverGroupIds: Array
# @param Tags: 扩容节点绑定标签列表。
# @type Tags: Array
# @param HardwareSourceType: 扩容所选资源类型,可选范围为"host","pod",host为普通的CVM资源,Pod为TKE集群或EKS集群提供的资源
# @type HardwareSourceType: String
# @param PodSpecInfo: Pod相关资源信息
# @type PodSpecInfo: :class:`Tencentcloud::Emr.v20190103.models.PodSpecInfo`
# @param ClickHouseClusterName: 使用clickhouse集群扩容时,选择的机器分组名称
# @type ClickHouseClusterName: String
# @param ClickHouseClusterType: 使用clickhouse集群扩容时,选择的机器分组类型。new为新增,old为选择旧分组
# @type ClickHouseClusterType: String
# @param YarnNodeLabel: 扩容指定 Yarn Node Label
# @type YarnNodeLabel: String
# @param EnableStartServiceFlag: 扩容后是否启动服务,默认取值否
# true:是
# false:否
# @type EnableStartServiceFlag: Boolean
# @param ResourceSpec: 规格设置
# @type ResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.NodeResourceSpec`
# @param Zone: 实例所属的可用区,例如ap-guangzhou-1。该参数也可以通过调用[DescribeZones](https://cloud.tencent.com/document/product/213/15707) 的返回值中的Zone字段来获取。
# @type Zone: String
# @param SubnetId: 子网,默认是集群创建时的子网
# @type SubnetId: String
attr_accessor :InstanceChargeType, :InstanceId, :ScaleOutNodeConfig, :ClientToken, :InstanceChargePrepaid, :ScriptBootstrapActionConfig, :SoftDeployInfo, :ServiceNodeInfo, :DisasterRecoverGroupIds, :Tags, :HardwareSourceType, :PodSpecInfo, :ClickHouseClusterName, :ClickHouseClusterType, :YarnNodeLabel, :EnableStartServiceFlag, :ResourceSpec, :Zone, :SubnetId
def initialize(instancechargetype=nil, instanceid=nil, scaleoutnodeconfig=nil, clienttoken=nil, instancechargeprepaid=nil, scriptbootstrapactionconfig=nil, softdeployinfo=nil, servicenodeinfo=nil, disasterrecovergroupids=nil, tags=nil, hardwaresourcetype=nil, podspecinfo=nil, clickhouseclustername=nil, clickhouseclustertype=nil, yarnnodelabel=nil, enablestartserviceflag=nil, resourcespec=nil, zone=nil, subnetid=nil)
@InstanceChargeType = instancechargetype
@InstanceId = instanceid
@ScaleOutNodeConfig = scaleoutnodeconfig
@ClientToken = clienttoken
@InstanceChargePrepaid = instancechargeprepaid
@ScriptBootstrapActionConfig = scriptbootstrapactionconfig
@SoftDeployInfo = softdeployinfo
@ServiceNodeInfo = servicenodeinfo
@DisasterRecoverGroupIds = disasterrecovergroupids
@Tags = tags
@HardwareSourceType = hardwaresourcetype
@PodSpecInfo = podspecinfo
@ClickHouseClusterName = clickhouseclustername
@ClickHouseClusterType = clickhouseclustertype
@YarnNodeLabel = yarnnodelabel
@EnableStartServiceFlag = enablestartserviceflag
@ResourceSpec = resourcespec
@Zone = zone
@SubnetId = subnetid
end
def deserialize(params)
@InstanceChargeType = params['InstanceChargeType']
@InstanceId = params['InstanceId']
unless params['ScaleOutNodeConfig'].nil?
@ScaleOutNodeConfig = ScaleOutNodeConfig.new
@ScaleOutNodeConfig.deserialize(params['ScaleOutNodeConfig'])
end
@ClientToken = params['ClientToken']
unless params['InstanceChargePrepaid'].nil?
@InstanceChargePrepaid = InstanceChargePrepaid.new
@InstanceChargePrepaid.deserialize(params['InstanceChargePrepaid'])
end
unless params['ScriptBootstrapActionConfig'].nil?
@ScriptBootstrapActionConfig = []
params['ScriptBootstrapActionConfig'].each do |i|
scriptbootstrapactionconfig_tmp = ScriptBootstrapActionConfig.new
scriptbootstrapactionconfig_tmp.deserialize(i)
@ScriptBootstrapActionConfig << scriptbootstrapactionconfig_tmp
end
end
@SoftDeployInfo = params['SoftDeployInfo']
@ServiceNodeInfo = params['ServiceNodeInfo']
@DisasterRecoverGroupIds = params['DisasterRecoverGroupIds']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@HardwareSourceType = params['HardwareSourceType']
unless params['PodSpecInfo'].nil?
@PodSpecInfo = PodSpecInfo.new
@PodSpecInfo.deserialize(params['PodSpecInfo'])
end
@ClickHouseClusterName = params['ClickHouseClusterName']
@ClickHouseClusterType = params['ClickHouseClusterType']
@YarnNodeLabel = params['YarnNodeLabel']
@EnableStartServiceFlag = params['EnableStartServiceFlag']
unless params['ResourceSpec'].nil?
@ResourceSpec = NodeResourceSpec.new
@ResourceSpec.deserialize(params['ResourceSpec'])
end
@Zone = params['Zone']
@SubnetId = params['SubnetId']
end
end
# ScaleOutCluster返回参数结构体
class ScaleOutClusterResponse < TencentCloud::Common::AbstractModel
# @param InstanceId: 实例ID。
# @type InstanceId: String
# @param ClientToken: 客户端Token。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClientToken: String
# @param FlowId: 扩容流程ID。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FlowId: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :InstanceId, :ClientToken, :FlowId, :RequestId
def initialize(instanceid=nil, clienttoken=nil, flowid=nil, requestid=nil)
@InstanceId = instanceid
@ClientToken = clienttoken
@FlowId = flowid
@RequestId = requestid
end
def deserialize(params)
@InstanceId = params['InstanceId']
@ClientToken = params['ClientToken']
@FlowId = params['FlowId']
@RequestId = params['RequestId']
end
end
# ScaleOutInstance请求参数结构体
class ScaleOutInstanceRequest < TencentCloud::Common::AbstractModel
# @param TimeUnit: 扩容的时间单位。取值范围:
# s:表示秒。PayMode取值为0时,TimeUnit只能取值为s。
# m:表示月份。PayMode取值为1时,TimeUnit只能取值为m。
# @type TimeUnit: String
# @param TimeSpan: 扩容的时长。结合TimeUnit一起使用。
# TimeUnit为s时,该参数只能填写3600,表示按量计费实例。
# TimeUnit为m时,该参数填写的数字表示包年包月实例的购买时长,如1表示购买一个月
# @type TimeSpan: Integer
# @param InstanceId: 实例ID。
# @type InstanceId: String
# @param PayMode: 实例计费模式。取值范围:
# 0:表示按量计费。
# 1:表示包年包月。
# @type PayMode: Integer
# @param ClientToken: 唯一随机标识,时效5分钟,需要调用者指定 防止客户端重新创建资源,例如 a9a90aa6-751a-41b6-aad6-fae36063280
# @type ClientToken: String
# @param PreExecutedFileSettings: 引导操作脚本设置。
# @type PreExecutedFileSettings: Array
# @param TaskCount: 扩容的Task节点数量。
# @type TaskCount: Integer
# @param CoreCount: 扩容的Core节点数量。
# @type CoreCount: Integer
# @param UnNecessaryNodeList: 扩容时不需要安装的进程。
# @type UnNecessaryNodeList: Array
# @param RouterCount: 扩容的Router节点数量。
# @type RouterCount: Integer
# @param SoftDeployInfo: 部署的服务。
# SoftDeployInfo和ServiceNodeInfo是同组参数,和UnNecessaryNodeList参数互斥。
# 建议使用SoftDeployInfo和ServiceNodeInfo组合。
# @type SoftDeployInfo: Array
# @param ServiceNodeInfo: 启动的进程。
# @type ServiceNodeInfo: Array
# @param DisasterRecoverGroupIds: 分散置放群组ID列表,当前仅支持指定一个。
# @type DisasterRecoverGroupIds: Array
# @param Tags: 扩容节点绑定标签列表。
# @type Tags: Array
# @param HardwareResourceType: 扩容所选资源类型,可选范围为"host","pod",host为普通的CVM资源,Pod为TKE集群或EKS集群提供的资源
# @type HardwareResourceType: String
# @param PodSpec: 使用Pod资源扩容时,指定的Pod规格以及来源等信息
# @type PodSpec: :class:`Tencentcloud::Emr.v20190103.models.PodSpec`
# @param ClickHouseClusterName: 使用clickhouse集群扩容时,选择的机器分组名称
# @type ClickHouseClusterName: String
# @param ClickHouseClusterType: 使用clickhouse集群扩容时,选择的机器分组类型。new为新增,old为选择旧分组
# @type ClickHouseClusterType: String
# @param YarnNodeLabel: 规则扩容指定 yarn node label
# @type YarnNodeLabel: String
# @param PodParameter: POD自定义权限和自定义参数
# @type PodParameter: :class:`Tencentcloud::Emr.v20190103.models.PodParameter`
# @param MasterCount: 扩容的Master节点的数量。
# 使用clickhouse集群扩容时,该参数不生效。
# 使用kafka集群扩容时,该参数不生效。
# 当HardwareResourceType=POD时,该参数不生效。
# @type MasterCount: Integer
# @param StartServiceAfterScaleOut: 扩容后是否启动服务,true:启动,false:不启动
# @type StartServiceAfterScaleOut: String
# @param ZoneId: 可用区,默认是集群的主可用区
# @type ZoneId: Integer
# @param SubnetId: 子网,默认是集群创建时的子网
# @type SubnetId: String
# @param ScaleOutServiceConfAssign: 预设配置组
# @type ScaleOutServiceConfAssign: String
# @param AutoRenew: 0表示关闭自动续费,1表示开启自动续费
# @type AutoRenew: Integer
attr_accessor :TimeUnit, :TimeSpan, :InstanceId, :PayMode, :ClientToken, :PreExecutedFileSettings, :TaskCount, :CoreCount, :UnNecessaryNodeList, :RouterCount, :SoftDeployInfo, :ServiceNodeInfo, :DisasterRecoverGroupIds, :Tags, :HardwareResourceType, :PodSpec, :ClickHouseClusterName, :ClickHouseClusterType, :YarnNodeLabel, :PodParameter, :MasterCount, :StartServiceAfterScaleOut, :ZoneId, :SubnetId, :ScaleOutServiceConfAssign, :AutoRenew
def initialize(timeunit=nil, timespan=nil, instanceid=nil, paymode=nil, clienttoken=nil, preexecutedfilesettings=nil, taskcount=nil, corecount=nil, unnecessarynodelist=nil, routercount=nil, softdeployinfo=nil, servicenodeinfo=nil, disasterrecovergroupids=nil, tags=nil, hardwareresourcetype=nil, podspec=nil, clickhouseclustername=nil, clickhouseclustertype=nil, yarnnodelabel=nil, podparameter=nil, mastercount=nil, startserviceafterscaleout=nil, zoneid=nil, subnetid=nil, scaleoutserviceconfassign=nil, autorenew=nil)
@TimeUnit = timeunit
@TimeSpan = timespan
@InstanceId = instanceid
@PayMode = paymode
@ClientToken = clienttoken
@PreExecutedFileSettings = preexecutedfilesettings
@TaskCount = taskcount
@CoreCount = corecount
@UnNecessaryNodeList = unnecessarynodelist
@RouterCount = routercount
@SoftDeployInfo = softdeployinfo
@ServiceNodeInfo = servicenodeinfo
@DisasterRecoverGroupIds = disasterrecovergroupids
@Tags = tags
@HardwareResourceType = hardwareresourcetype
@PodSpec = podspec
@ClickHouseClusterName = clickhouseclustername
@ClickHouseClusterType = clickhouseclustertype
@YarnNodeLabel = yarnnodelabel
@PodParameter = podparameter
@MasterCount = mastercount
@StartServiceAfterScaleOut = startserviceafterscaleout
@ZoneId = zoneid
@SubnetId = subnetid
@ScaleOutServiceConfAssign = scaleoutserviceconfassign
@AutoRenew = autorenew
end
def deserialize(params)
@TimeUnit = params['TimeUnit']
@TimeSpan = params['TimeSpan']
@InstanceId = params['InstanceId']
@PayMode = params['PayMode']
@ClientToken = params['ClientToken']
unless params['PreExecutedFileSettings'].nil?
@PreExecutedFileSettings = []
params['PreExecutedFileSettings'].each do |i|
preexecutefilesettings_tmp = PreExecuteFileSettings.new
preexecutefilesettings_tmp.deserialize(i)
@PreExecutedFileSettings << preexecutefilesettings_tmp
end
end
@TaskCount = params['TaskCount']
@CoreCount = params['CoreCount']
@UnNecessaryNodeList = params['UnNecessaryNodeList']
@RouterCount = params['RouterCount']
@SoftDeployInfo = params['SoftDeployInfo']
@ServiceNodeInfo = params['ServiceNodeInfo']
@DisasterRecoverGroupIds = params['DisasterRecoverGroupIds']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@HardwareResourceType = params['HardwareResourceType']
unless params['PodSpec'].nil?
@PodSpec = PodSpec.new
@PodSpec.deserialize(params['PodSpec'])
end
@ClickHouseClusterName = params['ClickHouseClusterName']
@ClickHouseClusterType = params['ClickHouseClusterType']
@YarnNodeLabel = params['YarnNodeLabel']
unless params['PodParameter'].nil?
@PodParameter = PodParameter.new
@PodParameter.deserialize(params['PodParameter'])
end
@MasterCount = params['MasterCount']
@StartServiceAfterScaleOut = params['StartServiceAfterScaleOut']
@ZoneId = params['ZoneId']
@SubnetId = params['SubnetId']
@ScaleOutServiceConfAssign = params['ScaleOutServiceConfAssign']
@AutoRenew = params['AutoRenew']
end
end
# ScaleOutInstance返回参数结构体
class ScaleOutInstanceResponse < TencentCloud::Common::AbstractModel
# @param InstanceId: 实例ID。
# @type InstanceId: String
# @param DealNames: 订单号。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DealNames: Array
# @param ClientToken: 客户端Token。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClientToken: String
# @param FlowId: 扩容流程ID。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FlowId: Integer
# @param BillId: 大订单号。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type BillId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :InstanceId, :DealNames, :ClientToken, :FlowId, :BillId, :RequestId
def initialize(instanceid=nil, dealnames=nil, clienttoken=nil, flowid=nil, billid=nil, requestid=nil)
@InstanceId = instanceid
@DealNames = dealnames
@ClientToken = clienttoken
@FlowId = flowid
@BillId = billid
@RequestId = requestid
end
def deserialize(params)
@InstanceId = params['InstanceId']
@DealNames = params['DealNames']
@ClientToken = params['ClientToken']
@FlowId = params['FlowId']
@BillId = params['BillId']
@RequestId = params['RequestId']
end
end
# 扩容节点类型以及数量
class ScaleOutNodeConfig < TencentCloud::Common::AbstractModel
# @param NodeFlag: 扩容节点类型取值范围:
# MASTER
# TASK
# CORE
# ROUTER
# @type NodeFlag: String
# @param NodeCount: 扩容节点数量
# @type NodeCount: Integer
attr_accessor :NodeFlag, :NodeCount
def initialize(nodeflag=nil, nodecount=nil)
@NodeFlag = nodeflag
@NodeCount = nodecount
end
def deserialize(params)
@NodeFlag = params['NodeFlag']
@NodeCount = params['NodeCount']
end
end
# 集群应用场景以及支持部署组件信息
class SceneSoftwareConfig < TencentCloud::Common::AbstractModel
# @param Software: 部署的组件列表。不同的EMR产品版本ProductVersion 对应不同可选组件列表,不同产品版本可选组件列表查询:[组件版本](https://cloud.tencent.com/document/product/589/20279) ;
# 填写实例值:hive、flink。
# @type Software: Array
# @param SceneName: 默认Hadoop-Default,[场景查询](https://cloud.tencent.com/document/product/589/14624)场景化取值范围:
# Hadoop-Kudu
# Hadoop-Zookeeper
# Hadoop-Presto
# Hadoop-Hbase
# Hadoop-Default
# @type SceneName: String
attr_accessor :Software, :SceneName
def initialize(software=nil, scenename=nil)
@Software = software
@SceneName = scenename
end
def deserialize(params)
@Software = params['Software']
@SceneName = params['SceneName']
end
end
# 添加引导操作
class ScriptBootstrapActionConfig < TencentCloud::Common::AbstractModel
# @param CosFileURI: 脚本的cos地址,参照格式:https://beijing-111111.cos.ap-beijing.myqcloud.com/data/test.sh查询cos存储桶列表:[存储桶列表](https://console.cloud.tencent.com/cos/bucket)
# @type CosFileURI: String
# @param ExecutionMoment: 引导脚步执行时机范围
# resourceAfter:节点初始化后
# clusterAfter:集群启动后
# clusterBefore:集群启动前
# @type ExecutionMoment: String
# @param Args: 执行脚本参数,参数格式请遵循标准Shell规范
# @type Args: Array
# @param CosFileName: 脚本文件名
# @type CosFileName: String
# @param Remark: 备注
# @type Remark: String
attr_accessor :CosFileURI, :ExecutionMoment, :Args, :CosFileName, :Remark
def initialize(cosfileuri=nil, executionmoment=nil, args=nil, cosfilename=nil, remark=nil)
@CosFileURI = cosfileuri
@ExecutionMoment = executionmoment
@Args = args
@CosFileName = cosfilename
@Remark = remark
end
def deserialize(params)
@CosFileURI = params['CosFileURI']
@ExecutionMoment = params['ExecutionMoment']
@Args = params['Args']
@CosFileName = params['CosFileName']
@Remark = params['Remark']
end
end
# 搜索字段
class SearchItem < TencentCloud::Common::AbstractModel
# @param SearchType: 支持搜索的类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SearchType: String
# @param SearchValue: 支持搜索的值
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SearchValue: String
attr_accessor :SearchType, :SearchValue
def initialize(searchtype=nil, searchvalue=nil)
@SearchType = searchtype
@SearchValue = searchvalue
end
def deserialize(params)
@SearchType = params['SearchType']
@SearchValue = params['SearchValue']
end
end
# 操作的服务范围
class ServiceBasicRestartInfo < TencentCloud::Common::AbstractModel
# @param ServiceName: 服务名,必填,如HDFS
# @type ServiceName: String
# @param ComponentInfoList: 如果没传,则表示所有进程
# @type ComponentInfoList: Array
attr_accessor :ServiceName, :ComponentInfoList
def initialize(servicename=nil, componentinfolist=nil)
@ServiceName = servicename
@ComponentInfoList = componentinfolist
end
def deserialize(params)
@ServiceName = params['ServiceName']
unless params['ComponentInfoList'].nil?
@ComponentInfoList = []
params['ComponentInfoList'].each do |i|
componentbasicrestartinfo_tmp = ComponentBasicRestartInfo.new
componentbasicrestartinfo_tmp.deserialize(i)
@ComponentInfoList << componentbasicrestartinfo_tmp
end
end
end
end
# 节点信息
class ShortNodeInfo < TencentCloud::Common::AbstractModel
# @param NodeType: 节点类型,Master/Core/Task/Router/Common
# 注意:此字段可能返回 null,表示取不到有效值。
# @type NodeType: String
# @param NodeSize: 节点数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type NodeSize: Integer
attr_accessor :NodeType, :NodeSize
def initialize(nodetype=nil, nodesize=nil)
@NodeType = nodetype
@NodeSize = nodesize
end
def deserialize(params)
@NodeType = params['NodeType']
@NodeSize = params['NodeSize']
end
end
# 体外客户端组件依赖信息
class SoftDependInfo < TencentCloud::Common::AbstractModel
# @param SoftName: 组件名称
# @type SoftName: String
# @param Required: 是否必选
# @type Required: Boolean
attr_accessor :SoftName, :Required
def initialize(softname=nil, required=nil)
@SoftName = softname
@Required = required
end
def deserialize(params)
@SoftName = params['SoftName']
@Required = params['Required']
end
end
# StartStopServiceOrMonitor请求参数结构体
class StartStopServiceOrMonitorRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 集群ID
# @type InstanceId: String
# @param OpType: 操作类型,当前支持
# StartService:启动服务
# StopService:停止服务
# StartMonitor:退出维护
# StopMonitor:进入维护
# RestartService:重启服务 如果操作类型选择重启服务 StrategyConfig操作策略则是必填项
# @type OpType: String
# @param OpScope: 操作范围
# @type OpScope: :class:`Tencentcloud::Emr.v20190103.models.OpScope`
# @param StrategyConfig: 操作策略
# @type StrategyConfig: :class:`Tencentcloud::Emr.v20190103.models.StrategyConfig`
attr_accessor :InstanceId, :OpType, :OpScope, :StrategyConfig
def initialize(instanceid=nil, optype=nil, opscope=nil, strategyconfig=nil)
@InstanceId = instanceid
@OpType = optype
@OpScope = opscope
@StrategyConfig = strategyconfig
end
def deserialize(params)
@InstanceId = params['InstanceId']
@OpType = params['OpType']
unless params['OpScope'].nil?
@OpScope = OpScope.new
@OpScope.deserialize(params['OpScope'])
end
unless params['StrategyConfig'].nil?
@StrategyConfig = StrategyConfig.new
@StrategyConfig.deserialize(params['StrategyConfig'])
end
end
end
# StartStopServiceOrMonitor返回参数结构体
class StartStopServiceOrMonitorResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 执行步骤
class Step < TencentCloud::Common::AbstractModel
# @param Name: 执行步骤名称。
# @type Name: String
# @param ExecutionStep: 执行动作。
# @type ExecutionStep: :class:`Tencentcloud::Emr.v20190103.models.Execution`
# @param ActionOnFailure: 执行失败策略。
# 1. TERMINATE_CLUSTER 执行失败时退出并销毁集群。
# 2. CONTINUE 执行失败时跳过并执行后续步骤。
# @type ActionOnFailure: String
# @param User: 指定执行Step时的用户名,非必须,默认为hadoop。
# @type User: String
attr_accessor :Name, :ExecutionStep, :ActionOnFailure, :User
def initialize(name=nil, executionstep=nil, actiononfailure=nil, user=nil)
@Name = name
@ExecutionStep = executionstep
@ActionOnFailure = actiononfailure
@User = user
end
def deserialize(params)
@Name = params['Name']
unless params['ExecutionStep'].nil?
@ExecutionStep = Execution.new
@ExecutionStep.deserialize(params['ExecutionStep'])
end
@ActionOnFailure = params['ActionOnFailure']
@User = params['User']
end
end
# 重启/停止/启动服务/监控的配置
class StrategyConfig < TencentCloud::Common::AbstractModel
# @param RollingRestartSwitch: 0:关闭滚动重启
# 1:开启滚动启动
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RollingRestartSwitch: Integer
# @param BatchSize: 滚动重启每批次的重启数量,最大重启台数为 99999 台
# 注意:此字段可能返回 null,表示取不到有效值。
# @type BatchSize: Integer
# @param TimeWait: 滚动重启每批停止等待时间 ,最大间隔为 5 分钟 单位是秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimeWait: Integer
# @param DealOnFail: 操作失败处理策略,0:失败阻塞, 1:失败自动跳过
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DealOnFail: Integer
attr_accessor :RollingRestartSwitch, :BatchSize, :TimeWait, :DealOnFail
def initialize(rollingrestartswitch=nil, batchsize=nil, timewait=nil, dealonfail=nil)
@RollingRestartSwitch = rollingrestartswitch
@BatchSize = batchsize
@TimeWait = timewait
@DealOnFail = dealonfail
end
def deserialize(params)
@RollingRestartSwitch = params['RollingRestartSwitch']
@BatchSize = params['BatchSize']
@TimeWait = params['TimeWait']
@DealOnFail = params['DealOnFail']
end
end
# 子网信息
class SubnetInfo < TencentCloud::Common::AbstractModel
# @param SubnetName: 子网信息(名字)
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SubnetName: String
# @param SubnetId: 子网信息(ID)
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SubnetId: String
attr_accessor :SubnetName, :SubnetId
def initialize(subnetname=nil, subnetid=nil)
@SubnetName = subnetname
@SubnetId = subnetid
end
def deserialize(params)
@SubnetName = params['SubnetName']
@SubnetId = params['SubnetId']
end
end
# SyncPodState请求参数结构体
class SyncPodStateRequest < TencentCloud::Common::AbstractModel
# @param Message: EmrService中pod状态信息
# @type Message: :class:`Tencentcloud::Emr.v20190103.models.PodState`
attr_accessor :Message
def initialize(message=nil)
@Message = message
end
def deserialize(params)
unless params['Message'].nil?
@Message = PodState.new
@Message.deserialize(params['Message'])
end
end
end
# SyncPodState返回参数结构体
class SyncPodStateResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 标签
class Tag < TencentCloud::Common::AbstractModel
# @param TagKey: 标签键
# @type TagKey: String
# @param TagValue: 标签值
# @type TagValue: String
attr_accessor :TagKey, :TagValue
def initialize(tagkey=nil, tagvalue=nil)
@TagKey = tagkey
@TagValue = tagvalue
end
def deserialize(params)
@TagKey = params['TagKey']
@TagValue = params['TagValue']
end
end
# TerminateClusterNodes请求参数结构体
class TerminateClusterNodesRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 实例ID
# @type InstanceId: String
# @param CvmInstanceIds: 销毁资源列表
# @type CvmInstanceIds: Array
# @param NodeFlag: 销毁节点类型取值范围:
# MASTER
# TASK
# CORE
# ROUTER
# @type NodeFlag: String
# @param GraceDownFlag: 优雅缩容开关
# true:开启
# false:不开启
# @type GraceDownFlag: Boolean
# @param GraceDownTime: 优雅缩容等待时间,时间范围60到1800 单位秒
# @type GraceDownTime: Integer
attr_accessor :InstanceId, :CvmInstanceIds, :NodeFlag, :GraceDownFlag, :GraceDownTime
def initialize(instanceid=nil, cvminstanceids=nil, nodeflag=nil, gracedownflag=nil, gracedowntime=nil)
@InstanceId = instanceid
@CvmInstanceIds = cvminstanceids
@NodeFlag = nodeflag
@GraceDownFlag = gracedownflag
@GraceDownTime = gracedowntime
end
def deserialize(params)
@InstanceId = params['InstanceId']
@CvmInstanceIds = params['CvmInstanceIds']
@NodeFlag = params['NodeFlag']
@GraceDownFlag = params['GraceDownFlag']
@GraceDownTime = params['GraceDownTime']
end
end
# TerminateClusterNodes返回参数结构体
class TerminateClusterNodesResponse < TencentCloud::Common::AbstractModel
# @param FlowId: 缩容流程ID。
# @type FlowId: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :FlowId, :RequestId
def initialize(flowid=nil, requestid=nil)
@FlowId = flowid
@RequestId = requestid
end
def deserialize(params)
@FlowId = params['FlowId']
@RequestId = params['RequestId']
end
end
# TerminateInstance请求参数结构体
class TerminateInstanceRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 实例ID。
# @type InstanceId: String
# @param ResourceIds: 销毁节点ID。该参数为预留参数,用户无需配置。
# @type ResourceIds: Array
attr_accessor :InstanceId, :ResourceIds
def initialize(instanceid=nil, resourceids=nil)
@InstanceId = instanceid
@ResourceIds = resourceids
end
def deserialize(params)
@InstanceId = params['InstanceId']
@ResourceIds = params['ResourceIds']
end
end
# TerminateInstance返回参数结构体
class TerminateInstanceResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# TerminateTasks请求参数结构体
class TerminateTasksRequest < TencentCloud::Common::AbstractModel
# @param InstanceId: 实例ID。
# @type InstanceId: String
# @param ResourceIds: 待销毁节点的资源ID列表。资源ID形如:emr-vm-xxxxxxxx。有效的资源ID可通过登录[控制台](https://console.cloud.tencent.com/emr)查询。
# @type ResourceIds: Array
attr_accessor :InstanceId, :ResourceIds
def initialize(instanceid=nil, resourceids=nil)
@InstanceId = instanceid
@ResourceIds = resourceids
end
def deserialize(params)
@InstanceId = params['InstanceId']
@ResourceIds = params['ResourceIds']
end
end
# TerminateTasks返回参数结构体
class TerminateTasksResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 集群节点拓扑信息
class TopologyInfo < TencentCloud::Common::AbstractModel
# @param ZoneId: 可用区ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ZoneId: Integer
# @param Zone: 可用区信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Zone: String
# @param SubnetInfoList: 子网信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SubnetInfoList: Array
# @param NodeInfoList: 节点信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type NodeInfoList: Array
attr_accessor :ZoneId, :Zone, :SubnetInfoList, :NodeInfoList
def initialize(zoneid=nil, zone=nil, subnetinfolist=nil, nodeinfolist=nil)
@ZoneId = zoneid
@Zone = zone
@SubnetInfoList = subnetinfolist
@NodeInfoList = nodeinfolist
end
def deserialize(params)
@ZoneId = params['ZoneId']
@Zone = params['Zone']
unless params['SubnetInfoList'].nil?
@SubnetInfoList = []
params['SubnetInfoList'].each do |i|
subnetinfo_tmp = SubnetInfo.new
subnetinfo_tmp.deserialize(i)
@SubnetInfoList << subnetinfo_tmp
end
end
unless params['NodeInfoList'].nil?
@NodeInfoList = []
params['NodeInfoList'].each do |i|
shortnodeinfo_tmp = ShortNodeInfo.new
shortnodeinfo_tmp.deserialize(i)
@NodeInfoList << shortnodeinfo_tmp
end
end
end
end
# 变配资源规格
class UpdateInstanceSettings < TencentCloud::Common::AbstractModel
# @param Memory: 内存容量,单位为G
# @type Memory: Integer
# @param CPUCores: CPU核数
# @type CPUCores: Integer
# @param ResourceId: 机器资源ID(EMR测资源标识)
# @type ResourceId: String
# @param InstanceType: 变配机器规格
# @type InstanceType: String
attr_accessor :Memory, :CPUCores, :ResourceId, :InstanceType
def initialize(memory=nil, cpucores=nil, resourceid=nil, instancetype=nil)
@Memory = memory
@CPUCores = cpucores
@ResourceId = resourceid
@InstanceType = instancetype
end
def deserialize(params)
@Memory = params['Memory']
@CPUCores = params['CPUCores']
@ResourceId = params['ResourceId']
@InstanceType = params['InstanceType']
end
end
# 容器集群用户组信息
class UserAndGroup < TencentCloud::Common::AbstractModel
# @param UserName: 用户名
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UserName: String
# @param UserGroup: 用户组
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UserGroup: String
attr_accessor :UserName, :UserGroup
def initialize(username=nil, usergroup=nil)
@UserName = username
@UserGroup = usergroup
end
def deserialize(params)
@UserName = params['UserName']
@UserGroup = params['UserGroup']
end
end
# 添加的用户信息列表
class UserInfoForUserManager < TencentCloud::Common::AbstractModel
# @param UserName: 用户名
# @type UserName: String
# @param UserGroup: 用户所属的组
# @type UserGroup: String
# @param PassWord: 密码
# @type PassWord: String
# @param ReMark: 备注
# @type ReMark: String
attr_accessor :UserName, :UserGroup, :PassWord, :ReMark
def initialize(username=nil, usergroup=nil, password=nil, remark=nil)
@UserName = username
@UserGroup = usergroup
@PassWord = password
@ReMark = remark
end
def deserialize(params)
@UserName = params['UserName']
@UserGroup = params['UserGroup']
@PassWord = params['PassWord']
@ReMark = params['ReMark']
end
end
# 用户管理列表过滤器
class UserManagerFilter < TencentCloud::Common::AbstractModel
# @param UserName: 用户名
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UserName: String
attr_accessor :UserName
def initialize(username=nil)
@UserName = username
end
def deserialize(params)
@UserName = params['UserName']
end
end
# 用户管理中用户的简要信息
class UserManagerUserBriefInfo < TencentCloud::Common::AbstractModel
# @param UserName: 用户名
# @type UserName: String
# @param UserGroup: 用户所属的组
# @type UserGroup: String
# @param UserType: Manager表示管理员、NormalUser表示普通用户
# @type UserType: String
# @param CreateTime: 用户创建时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CreateTime: String
# @param SupportDownLoadKeyTab: 是否可以下载用户对应的keytab文件,对开启kerberos的集群才有意义
# @type SupportDownLoadKeyTab: Boolean
# @param DownLoadKeyTabUrl: keytab文件的下载地址
# 注意:此字段可能返回 null,表示取不到有效值。
# @type DownLoadKeyTabUrl: String
attr_accessor :UserName, :UserGroup, :UserType, :CreateTime, :SupportDownLoadKeyTab, :DownLoadKeyTabUrl
def initialize(username=nil, usergroup=nil, usertype=nil, createtime=nil, supportdownloadkeytab=nil, downloadkeytaburl=nil)
@UserName = username
@UserGroup = usergroup
@UserType = usertype
@CreateTime = createtime
@SupportDownLoadKeyTab = supportdownloadkeytab
@DownLoadKeyTabUrl = downloadkeytaburl
end
def deserialize(params)
@UserName = params['UserName']
@UserGroup = params['UserGroup']
@UserType = params['UserType']
@CreateTime = params['CreateTime']
@SupportDownLoadKeyTab = params['SupportDownLoadKeyTab']
@DownLoadKeyTabUrl = params['DownLoadKeyTabUrl']
end
end
# VPC 参数
class VPCSettings < TencentCloud::Common::AbstractModel
# @param VpcId: VPC ID
# @type VpcId: String
# @param SubnetId: Subnet ID
# @type SubnetId: String
attr_accessor :VpcId, :SubnetId
def initialize(vpcid=nil, subnetid=nil)
@VpcId = vpcid
@SubnetId = subnetid
end
def deserialize(params)
@VpcId = params['VpcId']
@SubnetId = params['SubnetId']
end
end
# VPC 参数
class VirtualPrivateCloud < TencentCloud::Common::AbstractModel
# @param VpcId: VPC ID
# @type VpcId: String
# @param SubnetId: Subnet ID
# @type SubnetId: String
attr_accessor :VpcId, :SubnetId
def initialize(vpcid=nil, subnetid=nil)
@VpcId = vpcid
@SubnetId = subnetid
end
def deserialize(params)
@VpcId = params['VpcId']
@SubnetId = params['SubnetId']
end
end
# Yarn 运行的Application信息
class YarnApplication < TencentCloud::Common::AbstractModel
# @param Id: 应用ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Id: String
# @param User: 用户
# 注意:此字段可能返回 null,表示取不到有效值。
# @type User: String
# @param Name: 应用名
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Name: String
# @param Queue: 队列
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Queue: String
# @param ApplicationType: 应用类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ApplicationType: String
# @param ElapsedTime: 运行时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ElapsedTime: String
# @param State: 状态
# 注意:此字段可能返回 null,表示取不到有效值。
# @type State: String
# @param FinalStatus: 最终状态
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FinalStatus: String
# @param Progress: 进度
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Progress: Integer
# @param StartedTime: 开始时间毫秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type StartedTime: Integer
# @param FinishedTime: 结束时间毫秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FinishedTime: Integer
# @param AllocatedMB: 申请内存MB
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AllocatedMB: Integer
# @param AllocatedVCores: 申请VCores
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AllocatedVCores: Integer
# @param RunningContainers: 运行的Containers数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type RunningContainers: Integer
# @param MemorySeconds: 内存MB*时间秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MemorySeconds: Integer
# @param VCoreSeconds: VCores*时间秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VCoreSeconds: Integer
# @param QueueUsagePercentage: 队列资源占比
# 注意:此字段可能返回 null,表示取不到有效值。
# @type QueueUsagePercentage: Float
# @param ClusterUsagePercentage: 集群资源占比
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ClusterUsagePercentage: Float
# @param PreemptedResourceMB: 预占用的内存
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PreemptedResourceMB: Integer
# @param PreemptedResourceVCores: 预占用的VCore
# 注意:此字段可能返回 null,表示取不到有效值。
# @type PreemptedResourceVCores: Integer
# @param NumNonAMContainerPreempted: 预占的非应用程序主节点容器数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type NumNonAMContainerPreempted: Integer
# @param NumAMContainerPreempted: AM预占用的容器数量
# 注意:此字段可能返回 null,表示取不到有效值。
# @type NumAMContainerPreempted: Integer
# @param MapsTotal: Map总数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MapsTotal: Integer
# @param MapsCompleted: 完成的Map数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MapsCompleted: Integer
# @param ReducesTotal: Reduce总数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ReducesTotal: Integer
# @param ReducesCompleted: 完成的Reduce数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ReducesCompleted: Integer
# @param AvgMapTime: 平均Map时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AvgMapTime: Integer
# @param AvgReduceTime: 平均Reduce时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AvgReduceTime: Integer
# @param AvgShuffleTime: 平均Shuffle时间毫秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AvgShuffleTime: Integer
# @param AvgMergeTime: 平均Merge时间毫秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AvgMergeTime: Integer
# @param FailedReduceAttempts: 失败的Reduce执行次数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FailedReduceAttempts: Integer
# @param KilledReduceAttempts: Kill的Reduce执行次数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type KilledReduceAttempts: Integer
# @param SuccessfulReduceAttempts: 成功的Reduce执行次数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SuccessfulReduceAttempts: Integer
# @param FailedMapAttempts: 失败的Map执行次数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FailedMapAttempts: Integer
# @param KilledMapAttempts: Kill的Map执行次数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type KilledMapAttempts: Integer
# @param SuccessfulMapAttempts: 成功的Map执行次数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SuccessfulMapAttempts: Integer
# @param GcTimeMillis: GC毫秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type GcTimeMillis: Integer
# @param VCoreMillisMaps: Map使用的VCore毫秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VCoreMillisMaps: Integer
# @param MbMillisMaps: Map使用的内存毫秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MbMillisMaps: Integer
# @param VCoreMillisReduces: Reduce使用的VCore毫秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VCoreMillisReduces: Integer
# @param MbMillisReduces: Reduce使用的内存毫秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MbMillisReduces: Integer
# @param TotalLaunchedMaps: 启动Map的总数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TotalLaunchedMaps: Integer
# @param TotalLaunchedReduces: 启动Reduce的总数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TotalLaunchedReduces: Integer
# @param MapInputRecords: Map输入记录数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MapInputRecords: Integer
# @param MapOutputRecords: Map输出记录数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MapOutputRecords: Integer
# @param ReduceInputRecords: Reduce输入记录数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ReduceInputRecords: Integer
# @param ReduceOutputRecords: Reduce输出记录数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ReduceOutputRecords: Integer
# @param HDFSBytesWritten: HDFS写入字节数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HDFSBytesWritten: Integer
# @param HDFSBytesRead: HDFS读取字节数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HDFSBytesRead: Integer
attr_accessor :Id, :User, :Name, :Queue, :ApplicationType, :ElapsedTime, :State, :FinalStatus, :Progress, :StartedTime, :FinishedTime, :AllocatedMB, :AllocatedVCores, :RunningContainers, :MemorySeconds, :VCoreSeconds, :QueueUsagePercentage, :ClusterUsagePercentage, :PreemptedResourceMB, :PreemptedResourceVCores, :NumNonAMContainerPreempted, :NumAMContainerPreempted, :MapsTotal, :MapsCompleted, :ReducesTotal, :ReducesCompleted, :AvgMapTime, :AvgReduceTime, :AvgShuffleTime, :AvgMergeTime, :FailedReduceAttempts, :KilledReduceAttempts, :SuccessfulReduceAttempts, :FailedMapAttempts, :KilledMapAttempts, :SuccessfulMapAttempts, :GcTimeMillis, :VCoreMillisMaps, :MbMillisMaps, :VCoreMillisReduces, :MbMillisReduces, :TotalLaunchedMaps, :TotalLaunchedReduces, :MapInputRecords, :MapOutputRecords, :ReduceInputRecords, :ReduceOutputRecords, :HDFSBytesWritten, :HDFSBytesRead
def initialize(id=nil, user=nil, name=nil, queue=nil, applicationtype=nil, elapsedtime=nil, state=nil, finalstatus=nil, progress=nil, startedtime=nil, finishedtime=nil, allocatedmb=nil, allocatedvcores=nil, runningcontainers=nil, memoryseconds=nil, vcoreseconds=nil, queueusagepercentage=nil, clusterusagepercentage=nil, preemptedresourcemb=nil, preemptedresourcevcores=nil, numnonamcontainerpreempted=nil, numamcontainerpreempted=nil, mapstotal=nil, mapscompleted=nil, reducestotal=nil, reducescompleted=nil, avgmaptime=nil, avgreducetime=nil, avgshuffletime=nil, avgmergetime=nil, failedreduceattempts=nil, killedreduceattempts=nil, successfulreduceattempts=nil, failedmapattempts=nil, killedmapattempts=nil, successfulmapattempts=nil, gctimemillis=nil, vcoremillismaps=nil, mbmillismaps=nil, vcoremillisreduces=nil, mbmillisreduces=nil, totallaunchedmaps=nil, totallaunchedreduces=nil, mapinputrecords=nil, mapoutputrecords=nil, reduceinputrecords=nil, reduceoutputrecords=nil, hdfsbyteswritten=nil, hdfsbytesread=nil)
@Id = id
@User = user
@Name = name
@Queue = queue
@ApplicationType = applicationtype
@ElapsedTime = elapsedtime
@State = state
@FinalStatus = finalstatus
@Progress = progress
@StartedTime = startedtime
@FinishedTime = finishedtime
@AllocatedMB = allocatedmb
@AllocatedVCores = allocatedvcores
@RunningContainers = runningcontainers
@MemorySeconds = memoryseconds
@VCoreSeconds = vcoreseconds
@QueueUsagePercentage = queueusagepercentage
@ClusterUsagePercentage = clusterusagepercentage
@PreemptedResourceMB = preemptedresourcemb
@PreemptedResourceVCores = preemptedresourcevcores
@NumNonAMContainerPreempted = numnonamcontainerpreempted
@NumAMContainerPreempted = numamcontainerpreempted
@MapsTotal = mapstotal
@MapsCompleted = mapscompleted
@ReducesTotal = reducestotal
@ReducesCompleted = reducescompleted
@AvgMapTime = avgmaptime
@AvgReduceTime = avgreducetime
@AvgShuffleTime = avgshuffletime
@AvgMergeTime = avgmergetime
@FailedReduceAttempts = failedreduceattempts
@KilledReduceAttempts = killedreduceattempts
@SuccessfulReduceAttempts = successfulreduceattempts
@FailedMapAttempts = failedmapattempts
@KilledMapAttempts = killedmapattempts
@SuccessfulMapAttempts = successfulmapattempts
@GcTimeMillis = gctimemillis
@VCoreMillisMaps = vcoremillismaps
@MbMillisMaps = mbmillismaps
@VCoreMillisReduces = vcoremillisreduces
@MbMillisReduces = mbmillisreduces
@TotalLaunchedMaps = totallaunchedmaps
@TotalLaunchedReduces = totallaunchedreduces
@MapInputRecords = mapinputrecords
@MapOutputRecords = mapoutputrecords
@ReduceInputRecords = reduceinputrecords
@ReduceOutputRecords = reduceoutputrecords
@HDFSBytesWritten = hdfsbyteswritten
@HDFSBytesRead = hdfsbytesread
end
def deserialize(params)
@Id = params['Id']
@User = params['User']
@Name = params['Name']
@Queue = params['Queue']
@ApplicationType = params['ApplicationType']
@ElapsedTime = params['ElapsedTime']
@State = params['State']
@FinalStatus = params['FinalStatus']
@Progress = params['Progress']
@StartedTime = params['StartedTime']
@FinishedTime = params['FinishedTime']
@AllocatedMB = params['AllocatedMB']
@AllocatedVCores = params['AllocatedVCores']
@RunningContainers = params['RunningContainers']
@MemorySeconds = params['MemorySeconds']
@VCoreSeconds = params['VCoreSeconds']
@QueueUsagePercentage = params['QueueUsagePercentage']
@ClusterUsagePercentage = params['ClusterUsagePercentage']
@PreemptedResourceMB = params['PreemptedResourceMB']
@PreemptedResourceVCores = params['PreemptedResourceVCores']
@NumNonAMContainerPreempted = params['NumNonAMContainerPreempted']
@NumAMContainerPreempted = params['NumAMContainerPreempted']
@MapsTotal = params['MapsTotal']
@MapsCompleted = params['MapsCompleted']
@ReducesTotal = params['ReducesTotal']
@ReducesCompleted = params['ReducesCompleted']
@AvgMapTime = params['AvgMapTime']
@AvgReduceTime = params['AvgReduceTime']
@AvgShuffleTime = params['AvgShuffleTime']
@AvgMergeTime = params['AvgMergeTime']
@FailedReduceAttempts = params['FailedReduceAttempts']
@KilledReduceAttempts = params['KilledReduceAttempts']
@SuccessfulReduceAttempts = params['SuccessfulReduceAttempts']
@FailedMapAttempts = params['FailedMapAttempts']
@KilledMapAttempts = params['KilledMapAttempts']
@SuccessfulMapAttempts = params['SuccessfulMapAttempts']
@GcTimeMillis = params['GcTimeMillis']
@VCoreMillisMaps = params['VCoreMillisMaps']
@MbMillisMaps = params['MbMillisMaps']
@VCoreMillisReduces = params['VCoreMillisReduces']
@MbMillisReduces = params['MbMillisReduces']
@TotalLaunchedMaps = params['TotalLaunchedMaps']
@TotalLaunchedReduces = params['TotalLaunchedReduces']
@MapInputRecords = params['MapInputRecords']
@MapOutputRecords = params['MapOutputRecords']
@ReduceInputRecords = params['ReduceInputRecords']
@ReduceOutputRecords = params['ReduceOutputRecords']
@HDFSBytesWritten = params['HDFSBytesWritten']
@HDFSBytesRead = params['HDFSBytesRead']
end
end
# 用于创建集群价格清单 不同可用区下价格详情
class ZoneDetailPriceResult < TencentCloud::Common::AbstractModel
# @param ZoneId: 可用区Id
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ZoneId: String
# @param NodeDetailPrice: 不同节点的价格详情
# @type NodeDetailPrice: Array
attr_accessor :ZoneId, :NodeDetailPrice
def initialize(zoneid=nil, nodedetailprice=nil)
@ZoneId = zoneid
@NodeDetailPrice = nodedetailprice
end
def deserialize(params)
@ZoneId = params['ZoneId']
unless params['NodeDetailPrice'].nil?
@NodeDetailPrice = []
params['NodeDetailPrice'].each do |i|
nodedetailpriceresult_tmp = NodeDetailPriceResult.new
nodedetailpriceresult_tmp.deserialize(i)
@NodeDetailPrice << nodedetailpriceresult_tmp
end
end
end
end
# 可用区配置信息
class ZoneResourceConfiguration < TencentCloud::Common::AbstractModel
# @param VirtualPrivateCloud: 私有网络相关信息配置。通过该参数可以指定私有网络的ID,子网ID等信息。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type VirtualPrivateCloud: :class:`Tencentcloud::Emr.v20190103.models.VirtualPrivateCloud`
# @param Placement: 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目等属性。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Placement: :class:`Tencentcloud::Emr.v20190103.models.Placement`
# @param AllNodeResourceSpec: 所有节点资源的规格
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AllNodeResourceSpec: :class:`Tencentcloud::Emr.v20190103.models.AllNodeResourceSpec`
# @param ZoneTag: 如果是单可用区,ZoneTag可以不用填, 如果是双AZ部署,第一个可用区ZoneTag选择master,第二个可用区ZoneTag选择standby,如果是三AZ部署,第一个可用区ZoneTag选择master,第二个可用区ZoneTag选择standby,第三个可用区ZoneTag选择third-party,取值范围:
# master
# standby
# third-party
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ZoneTag: String
attr_accessor :VirtualPrivateCloud, :Placement, :AllNodeResourceSpec, :ZoneTag
def initialize(virtualprivatecloud=nil, placement=nil, allnoderesourcespec=nil, zonetag=nil)
@VirtualPrivateCloud = virtualprivatecloud
@Placement = placement
@AllNodeResourceSpec = allnoderesourcespec
@ZoneTag = zonetag
end
def deserialize(params)
unless params['VirtualPrivateCloud'].nil?
@VirtualPrivateCloud = VirtualPrivateCloud.new
@VirtualPrivateCloud.deserialize(params['VirtualPrivateCloud'])
end
unless params['Placement'].nil?
@Placement = Placement.new
@Placement.deserialize(params['Placement'])
end
unless params['AllNodeResourceSpec'].nil?
@AllNodeResourceSpec = AllNodeResourceSpec.new
@AllNodeResourceSpec.deserialize(params['AllNodeResourceSpec'])
end
@ZoneTag = params['ZoneTag']
end
end
end
end
end