Python サンプルコード

クラスター一覧の照会

#! /usr/bin/python
from aliyunsdkcore import client
from aliyunsdkemr.request.v20160408 import ListClustersRequest
clt = client.AcsClient('SFAW************','Nc2nZ6dQoiqck0*************','cn-hangzhou') # set acessId and accessKey
request = ListClustersRequest.ListClustersRequest()
request.set_accept_format('xml') # xml or json
# You can set filter conditions to obtain clusters in the RUNNING or IDLE state. state パラメーターは省略可能です。 このパラメーターを指定しない選択をすることができます。
request.add_query_param('StatusList.  1', 'RUNNING')
request.add_query_param('StatusList. 2', 'IDLE')
result = clt.do_action(request)
print result

Create a cluster

#! /usr/bin/env python
from aliyunsdkcore import client
from aliyunsdkemr.request.v20160408 import CreateClusterRequest
clt = client.AcsClient('SFAW************','Nc2nZ6dQoiqck0*************','cn-hangzhou') # set acessId and accessKey
request = CreateClusterRequest.CreateClusterRequest()
request.set_Name("pydemo")
request.set_ZoneId("cn-hangzhou-b")
request.set_LogEnable(False)
request.set_SecurityGroupId("sg-********")
request.set_IsOpenPublicIp(True)
request.set_ChargeType("PostPaid")
request.set_EmrVer("EMR-1.3.0")
request.set_ClusterType("HADOOP")
request.set_IoOptimized(True)
request.set_InstanceGeneration("ecs-2")
# set EcsOrder
request.add_query_param('EcsOrder. 1. NodeCount', '1')
request.add_query_param('EcsOrder. 1. NodeType', 'MASTER')
request.add_query_param('EcsOrder. 1. InstanceType', 'ecs.n1.large')
request.add_query_param('EcsOrder. 1. DiskType', 'CLOUD_EFFICIENCY')
request.add_query_param('EcsOrder. 1. DiskCapacity', '80')
request.add_query_param('EcsOrder. 1. DiskCount', '1')
request.add_query_param('EcsOrder. 1. Index', '1')
request.add_query_param('EcsOrder. 2. NodeCount', '3')
request.add_query_param('EcsOrder. 2. NodeType', 'CORE')
request.add_query_param('EcsOrder. 2. InstanceType', 'ecs.n1.large')
request.add_query_param('EcsOrder. 2. DiskType', 'CLOUD_EFFICIENCY')
request.add_query_param('EcsOrder. 2. DiskCapacity', '80')
request.add_query_param('EcsOrder. 2. DiskCount', '4')
request.add_query_param('EcsOrder. 2. Index', '2')
request.set_accept_format('json')
result = clt.do_action(request)
print result
重要 すべての SDK は、さまざまなAlibaba Cloud サービス用に自動生成されます。 特定の使用事例に適用するには SDK のオリジナルコードの変更が必要となる場合があります。 たとえば、現在の Python SDK では、リクエストパラメーターとして List を使用する場合、前のサンプルコードを参照する必要があります。 リクエストパラメーターに基本データ型の値を含む List を指定する場合は、「クラスター一覧の照会」で StatusList パラメーターの設定をご参照ください。 List 指定時にリクエストパラメーターのオブジェクトを記述する場合は、「クラスターの作成」セクションの EcsOrder パラメーターの設定をご参照ください。 BootstrapAction など List をリクエストパラメーターとして使用する Python API の場合、Listのタイプに従って、直前の文で説明したのと同じ箇所を参照できます。 List を適正に使用できる Java SDK のご使用を推奨します。