# 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 # 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 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 # 集群实例信息 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 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 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) @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 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'] 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: 实例标签。 # @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 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 # CreateInstance请求参数结构体 class CreateInstanceRequest < TencentCloud::Common::AbstractModel # @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。
  • #
  • 9:表示EMR-V2.2.0。
  • #
  • 11:表示CLICKHOUSE-V1.0.0。
  • #
  • 13:表示DRUID-V1.0.0。
  • #
  • 15:表示EMR-V2.2.1。
  • #
  • 16:表示EMR-V2.3.0。
  • #
  • 17:表示CLICKHOUSE-V1.1.0。
  • #
  • 19:表示EMR-V2.4.0。
  • #
  • 20:表示EMR-V2.5.0。
  • #
  • 22:表示CLICKHOUSE-V1.2.0。
  • #
  • 24:表示EMR-TianQiong-V1.0.0。
  • #
  • 25:表示EMR-V3.1.0。
  • #
  • 26:表示DORIS-V1.0.0。
  • #
  • 27:表示KAFKA-V1.0.0。
  • #
  • 28:表示EMR-V3.2.0。
  • #
  • 29:表示EMR-V2.5.1。
  • #
  • 30:表示EMR-V2.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: 客户端Token。 # @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_NEW_META:表示集群默认创建
  • #
  • EMR_EXIT_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 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 # 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 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 attr_accessor :InstanceId, :NodeFlag, :Offset, :Limit, :HardwareResourceType, :SearchFields def initialize(instanceid=nil, nodeflag=nil, offset=nil, limit=nil, hardwareresourcetype=nil, searchfields=nil) @InstanceId = instanceid @NodeFlag = nodeflag @Offset = offset @Limit = limit @HardwareResourceType = hardwareresourcetype @SearchFields = searchfields end def deserialize(params) @InstanceId = params['InstanceId'] @NodeFlag = params['NodeFlag'] @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 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 # 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。该参数可以通过调用 [DescribeProject](https://cloud.tencent.com/document/api/378/4400) 的返回值中的 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 # 磁盘组。 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 # 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 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 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) @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 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'] 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 # 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 # InquirePriceRenewEmr请求参数结构体 class InquirePriceRenewEmrRequest < TencentCloud::Common::AbstractModel # @param TimeSpan: 实例续费的时长。需要结合TimeUnit一起使用。1表示续费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 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 # InquiryPriceRenewInstance请求参数结构体 class InquiryPriceRenewInstanceRequest < TencentCloud::Common::AbstractModel # @param TimeSpan: 实例续费的时长。需要结合TimeUnit一起使用。1表示续费1一个月 # @type TimeSpan: Integer # @param ResourceIds: 待续费节点的资源ID列表。资源ID形如:emr-vm-xxxxxxxx。有效的资源ID可通过登录[控制台](https://console.cloud.tencent.com/emr/static/hardware)查询。 # @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 RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :OriginalCost, :DiscountCost, :Unit, :PriceSpec, :RequestId def initialize(originalcost=nil, discountcost=nil, unit=nil, pricespec=nil, requestid=nil) @OriginalCost = originalcost @DiscountCost = discountcost @Unit = unit @PriceSpec = pricespec @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 @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 attr_accessor :TimeUnit, :TimeSpan, :UpdateSpec, :PayMode, :Placement, :Currency def initialize(timeunit=nil, timespan=nil, updatespec=nil, paymode=nil, placement=nil, currency=nil) @TimeUnit = timeunit @TimeSpan = timespan @UpdateSpec = updatespec @PayMode = paymode @Placement = placement @Currency = currency 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'] 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 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 # 实例预付费参数,只有在付费类型为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: 是否自动续费,默认为否。 # @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 attr_accessor :Name, :ActionOnFailure, :JobState def initialize(name=nil, actiononfailure=nil, jobstate=nil) @Name = name @ActionOnFailure = actiononfailure @JobState = jobstate end def deserialize(params) @Name = params['Name'] @ActionOnFailure = params['ActionOnFailure'] @JobState = params['JobState'] end end # 登录设置 class LoginSettings < TencentCloud::Common::AbstractModel # @param Password: Password # @type Password: String # @param PublicKeyId: Public Key # @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 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 # 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 MultiDisk < TencentCloud::Common::AbstractModel # @param DiskType: 云盘类型 #
  • CLOUD_SSD:表示云SSD。
  • #
  • CLOUD_PREMIUM:表示高效云盘。
  • #
  • CLOUD_HSSD:表示增强型SSD云硬盘。
  • # @type DiskType: String # @param Volume: 云盘大小 # @type Volume: Integer # @param Count: 该类型云盘个数 # @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 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 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 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) @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 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'] 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 # 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 ProjectId: 实例所属项目ID。该参数可以通过调用 DescribeProject 的返回值中的 projectId 字段来获取。填0为默认项目。 # @type ProjectId: Integer # @param Zone: 实例所属的可用区,例如ap-guangzhou-1。该参数也可以通过调用 DescribeZones 的返回值中的Zone字段来获取。 # @type Zone: String attr_accessor :ProjectId, :Zone def initialize(projectid=nil, zone=nil) @ProjectId = projectid @Zone = zone end def deserialize(params) @ProjectId = params['ProjectId'] @Zone = params['Zone'] 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 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 attr_accessor :Path, :Args, :Bucket, :Region, :Domain, :RunOrder, :WhenRun, :CosFileName, :CosFileURI, :CosSecretId, :CosSecretKey, :AppId 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) @Path = path @Args = args @Bucket = bucket @Region = region @Domain = domain @RunOrder = runorder @WhenRun = whenrun @CosFileName = cosfilename @CosFileURI = cosfileuri @CosSecretId = cossecretid @CosSecretKey = cossecretkey @AppId = appid 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'] 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 # 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 # 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: 客户端Token。 # @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 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 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) @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 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'] 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 SearchItem < TencentCloud::Common::AbstractModel # @param SearchType: 支持搜索的类型 # @type SearchType: String # @param SearchValue: 支持搜索的值 # @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 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 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. CANCEL_AND_WAIT 执行失败时阻塞等待。 # 3. 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 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 # 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/static/hardware)查询。 # @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 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 end end end