Elastic Compute Service (ECS) örneklerinde Cloud Assistant komutunu tetikler.
Kullanım notları
-
Cloud Assistant komutunu çalıştırmak istediğiniz ECS örneklerinin aşağıdaki gereksinimleri karşılaması gerekir. Birden fazla ECS örneği belirtilirse ve bunlardan biri komutun çalıştırılması için gereken koşulları karşılamazsa çağrı başarısız olur. Gereksinimleri karşılayan örnekleri belirtip InvokeCommand işlemini yeniden çağırmanız gerekir.
Örnekler Çalışıyor (
Running) durumunda olmalıdır. Örnek durumlarını sorgulamak için DescribeInstances işlemini çağırabilirsiniz.Örneklere Cloud Assistant Agent yüklü olmalıdır. Daha fazla bilgi için bkz. Cloud Assistant Agent'ı yükleme.
Örneklerde PowerShell komutlarını çalıştırmadan önce, örneklerde PowerShell modülünün yapılandırıldığından emin olun.
Komut, örneklerde yalnızca bir kez çalıştırılabilir.
-
Komut, örneklerde bir programa göre birden çok kez çalıştırılabilir.
Program, Frequency parametresiyle belirtilir. Komutun her çalıştırılmasının sonuçları, sonraki çalıştırmayı etkilemez.
-
Bir cron ifadesi kullanarak program belirtmek istiyorsanız, iş ihtiyaçlarınıza göre bir saat dilimi belirtebilirsiniz. Saat dilimi belirtmezseniz program, örneğin sistem saati tarafından belirlenir. Örneğin saatinin veya saat diliminin iş ihtiyaçlarınızı karşıladığından emin olun. Saat dilimleri hakkında daha fazla bilgi için bkz. CentOS 6 çalıştıran ECS örnekleri için NTP hizmetini yapılandırma veya Windows örnekleri için NTP hizmetini yapılandırma.
Zamanlanmış görevlerin beklendiği gibi çalışmasını sağlamak için Cloud Assistant Agent sürümünün aşağıdakilerden eski olmadığından emin olun. Bir komutu oran ifadesine göre sabit bir aralıkla çalışacak şekilde, belirtilen bir zamanda yalnızca bir kez çalışacak şekilde veya bir cron ifadesine göre belirlenen zamanlarda çalışacak şekilde yapılandırabilirsiniz. ClientNeedUpgrade hata kodu döndürülürse, Cloud Assistant Agent'ı en son sürüme yükseltmeniz gerekir. Daha fazla bilgi için bkz. Cloud Assistant Agent'ı güncelleme veya güncellemeleri devre dışı bırakma.
Linux: 2.2.3.282
Windows: 2.1.3.282
Komutlar; örnek durumu anormallikleri, ağ anormallikleri veya Cloud Assistant Agent üzerindeki anormallikler nedeniyle çalıştırılamayabilir. Bir komut çalıştırılamazsa yürütme bilgisi oluşturulmaz. Daha fazla bilgi için bkz. Çalıştırma sonuçlarını kontrol etme ve yaygın sorunları giderme.
Komutu oluştururken özel parametre özelliğini etkinleştirirseniz, komutu çalıştırmak için özel parametreleri (
Parameters) belirtmeniz gerekir.Özellikle yeni örneklerde, bir komutu çalıştırmadan önce DescribeCloudAssistantStatus işlemini çağırarak örneklerde yüklü olan Cloud Assistant Agent durumunu sorgulamanız ve CloudAssistantStatus dönüş değerinin true olduğundan emin olmanız önerilir.
Hata ayıklama
İstek parametreleri
| Parameter | Type | Required | Example | Description |
| Action | String | Yes | InvokeCommand | Gerçekleştirmek istediğiniz işlem. Değeri InvokeCommand olarak ayarlayın. |
| RegionId | String | Yes | cn-hangzhou | Komutun bölge kimliği. En güncel bölge listesini sorgulamak için DescribeRegions işlemini çağırabilirsiniz. |
| ResourceGroupId | String | No | rg-bp67acfmxazb4p**** | Komut yürütmelerinin atanacağı kaynak grubunun kimliği. Bu parametreyi ayarlarken aşağıdaki hususlara dikkat edin:
|
| CommandId | String | Yes | c-e996287206324975b5fbe1d**** | Komut kimliği. Kullanılabilir tüm komut kimliklerini sorgulamak için DescribeCommands işlemini çağırabilirsiniz. Not Ortak Cloud Assistant komutları adlarına göre çalıştırılabilir. Daha fazla bilgi için bkz. Ortak Cloud Assistant komutlarını görüntüleme ve çalıştırma. |
| RepeatMode | String | No | Once | Komutun nasıl çalıştırılacağını belirtir. Geçerli değerler:
Varsayılan değer:
Aşağıdaki hususlara dikkat edin:
|
| Timed | Boolean | No | true | Not Bu parametre etkili değildir ve artık kullanılmamaktadır. |
| Frequency | String | No | 0 */20 * * * ? | Komutun çalıştırılacağı program. Bir komutu oran ifadesine göre sabit bir aralıkla, belirtilen bir zamanda yalnızca bir kez veya bir cron ifadesine göre belirlenen zamanlarda çalışacak şekilde yapılandırabilirsiniz.
|
| Parameters | Map | No | {"name":"Jack", "accessKey":"LTAIdyv******aRY"} | Özel parametre özelliği etkinleştirildiğinde iletilecek özel parametrelerin anahtar-değer çiftleri. Özel parametre sayısı: 0 ila 10.
Özel parametre özelliğini devre dışı bırakmak istiyorsanız bu parametreyi boş bırakabilirsiniz. |
| Username | String | No | test | Örneklerde komutu çalıştırmak için kullanılacak kullanıcı adı. Kullanıcı adının uzunluğu en fazla 255 karakter olabilir.
Komutu çalıştırmak için örneklerde zaten var olan diğer kullanıcı adlarını da belirtebilirsiniz. Güvenlik amacıyla Cloud Assistant komutlarını normal bir kullanıcı olarak çalıştırmanızı öneririz. Daha fazla bilgi için bkz. Cloud Assistant komutlarını çalıştırmak üzere normal bir kullanıcı yapılandırma. |
| WindowsPasswordName | String | No | axtSecretPassword | Windows örneklerinde komutu çalıştırmak için kullanılacak parolanın adı. Adın uzunluğu en fazla 255 karakter olabilir. Windows örneklerinde komutu çalıştırmak için varsayılan System kullanıcısını kullanmak istemiyorsanız hem WindowsPasswordName hem de Not Linux örnekleri için root kullanıcı adını veya Windows örnekleri için System kullanıcı adını kullanarak komutu çalıştırıyorsanız WindowsPasswordName belirtmeniz gerekmez. |
| InstanceId.N | String | No | i-bp185dy2o3o6n**** | Komutun çalıştırılacağı N numaralı örneğin kimliği. Her istekte en fazla 50 örnek kimliği belirtebilirsiniz. N için geçerli değerler: 1 ila 50. |
| ContainerId | String | No | ab141ddfbacfe02d9dbc25966ed971536124527097398d419a6746873fea**** | Konteyner kimliği. Yalnızca 64 bitlik onaltılık dizeler desteklenir. Konteyner çalışma zamanlarını belirtmek için Aşağıdaki hususlara dikkat edin:
|
| ContainerName | String | No | test-container | Konteyner adı. Aşağıdaki hususlara dikkat edin:
|
| Timeout | Long | No | 60 | Komut yürütmesi için zaman aşımı süresi. Birim: saniye.
|
| Tag.N.Key | String | No | TestKey | Komut görevine eklenecek N etiketinin anahtarı. N için geçerli değerler: 1 ila 20. Etiket anahtarı boş dize olamaz. Kaynakları sorgulamak için tek bir etiket belirtilirse yanıtta bu etiket eklenmiş en fazla 1.000 kaynak görüntülenebilir. Kaynakları sorgulamak için birden çok etiket belirtilirse yanıtta tüm bu etiketler eklenmiş en fazla 1.000 kaynak görüntülenebilir. Belirtilen etiketlere sahip 1.000'den fazla kaynağı sorgulamak için ListTagResources işlemini çağırın. Etiket anahtarının uzunluğu en fazla 64 karakter olabilir ve |
| Tag.N.Value | String | No | TestValue | Komut görevine eklenecek N etiketinin değeri. N için geçerli değerler: 1 ila 20. Etiket değeri boş dize olabilir. Etiket değerinin uzunluğu en fazla 128 karakter olabilir ve |
| ClientToken | String | No | 123e4567-e89b-12d3-a456-42665544**** | İsteğin yinelenebilirliğini sağlamak için kullanılan istemci belirteci. Belirteci istemci oluşturabilir ancak farklı istekler arasında benzersiz olduğundan emin olmanız gerekir. Belirteç yalnızca ASCII karakterler içerebilir ve uzunluğu 64 karakteri aşamaz. Daha fazla bilgi için bkz. Yinelenebilirliğin nasıl sağlanacağı. |
Yanıt parametreleri
|
Parameter |
Type |
Example |
Description |
|
InvokeId |
String |
t-7d2a745b412b4601b2d47f6a768d**** |
Komut görevinin kimliği. |
|
RequestId |
String |
473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** |
İstek kimliği. |
Örnekler
Örnek istekler
http(s)://ecs.aliyuncs.com/?Action=InvokeCommand
&CommandId=c-e996287206324975b5fbe1d****
&InstanceId.1=i-bp185dy2o3o6n****
&RegionId=cn-hangzhou
&Timed=true
&Frequency=0 */20 * * * *
&Parameters={"name":"Jack", "accessKey":"LTAIdyv******aRY"}
&Username=root
&<Common request parameters>
Başarılı yanıt örnekleri
XML biçimi
HTTP/1.1 200 OK
Content-Type:application/xml
<InvokeCommandResponse>
<InvokeId>t-7d2a745b412b4601b2d47f6a768d****</InvokeId>
<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</InvokeCommandResponse>
JSON biçimi
HTTP/1.1 200 OK
Content-Type:application/json
{
"InvokeId" : "t-7d2a745b412b4601b2d47f6a768d****",
"RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}
Hata kodları
|
HTTP status code |
Error code |
Error message |
Description |
|
400 |
RegionId.ApiNotSupported |
The api is not supported in this region. |
Bu işlem belirtilen bölgede gerçekleştirilemez. RegionId parametresinin geçerli olup olmadığını kontrol edin. |
|
400 |
MissingParam.InstanceId |
The parameter instanceId is missing or empty. |
InstanceId.N gereklidir. |
|
400 |
InvalidContainerId.Malformed |
The specified parameter ContainerId is not valid. |
Geçersiz ContainerId değeri. |
|
400 |
InvalidContainerName.Malformed |
The specified parameter ContainerName is not valid. |
Geçersiz ContainerName değeri. |
|
400 |
InvalidClientToken.Malformed |
The specified parameter clientToken is not valid. |
Geçersiz ClientToken değeri. |
|
400 |
InvalidInstance.NotMatch |
The specified instance type does not match the command. |
Belirtilen komut belirtilen örnekte çalıştırılamaz. Örneğin durumunun Cloud Assistant komutunu çalıştırmak için gerekli koşulları karşılayıp karşılamadığını kontrol edin. |
|
400 |
MissingParam.Frequency |
The frequency must be specified when you create a timed task. |
Zamanlanmış bir komut görevi oluştururken Frequency parametresi gereklidir. |
|
400 |
InvalidParam.Frequency |
The specified frequency is invalid. |
Geçersiz Frequency değeri. Belirtilen Frequency değerinin geçerli olup olmadığını kontrol edin. |
|
400 |
Parameter.MissingValue |
The parameter value of this command is required. |
Parametre gereklidir. |
|
400 |
Parameter.Disabled |
Parameters cannot be passed in when the command customization function is disabled. |
Özel parametre özelliği devre dışı bırakıldığında Parameters parametresi belirtilmiştir. |
|
400 |
InvalidParameter.Parameters |
The specified parameter Parameters is not valid. |
Geçersiz Parameters değeri. |
|
403 |
InstanceIds.ExceedLimit |
The number of instance IDs exceeds the upper limit. |
Maksimum örnek kimliği sayısı aşıldı. |
|
403 |
Invocation.ExceedQuota |
The invocation quota in the current region has been reached for today. |
Mevcut bölgedeki günlük maksimum komut çalıştırma sayısı aşıldı. |
|
403 |
ParameterCount.ExceedLimit |
The maximum number of parameters is exceeded. |
Belirtilen özel parametrelerin maksimum sayısı aşıldı. |
|
403 |
ParameterKey.ExceedLimit |
The maximum length of a parameter name is exceeded. |
Özel parametre anahtarı 64 karakter uzunluk sınırını aşıyor. |
|
403 |
CmdContent.ExceedLimit |
The maximum length of a command is exceeded. |
Komutun maksimum uzunluğu aşıldı. Komutunuzu kısaltın. |
|
403 |
ParameterKey.Duplicate |
Parameter names cannot be duplicated. |
Aynı ada sahip bir parametre zaten var. Parametre adları benzersiz olmalıdır. |
|
403 |
Parameter.NotMatched |
The passed-in parameters do not match the parameters defined when you created the command. |
İletilen özel parametreler, komut oluşturulurken belirtilenlerle eşleşmiyor. |
|
403 |
ParameterType.NotSupported |
The type of parameter value is not supported. |
Geçersiz özel parametre türü. |
|
403 |
Username.ExceedLimit |
The length of the username exceeds the upper limit. |
Kullanıcı adının maksimum uzunluğu aşıldı. |
|
403 |
WindowsPasswordName.ExceedLimit |
The length of the WindowsPasswordName exceeds the upper limit. |
WindowsPasswordName maksimum uzunluğu aşıldı. |
|
403 |
WindowsPasswordName.Missed |
WindowsPasswordName must be specified when you create a Windows task. |
WindowsPasswordName gereklidir. |
|
403 |
ParameterStore.InvalidParameters |
The parameter is invalid in Parameter Store. |
{{oos:?}} biçimindeki özel parametre bulunamadı. |
|
403 |
Operation.Forbidden |
The operation is not permitted. |
İşlem desteklenmiyor. |
|
403 |
IdempotentParameterMismatch |
The specified parameter has changed while using an already used clientToken. |
İstemci belirteci zaten kullanımda. |
|
403 |
IdempotentProcessing |
The previous idempotent request(s) is still processing. |
Önceki bir yinelenebilir istek işleniyor. Daha sonra tekrar deneyin. |
|
404 |
InvalidRepeatMode.NotFound |
The specified repeat mode does not exist. |
Geçersiz RepeatMode değeri. |
|
404 |
InvalidInstance.NotFound |
The specified instance does not exist. |
Belirtilen örnek bulunamadı. |
|
404 |
InvalidCmdId.NotFound |
The specified command ID does not exist. |
Geçersiz CommandId değeri. Kullanılabilir tüm komut kimliklerini sorgulamak için DescribeCommands işlemini çağırabilirsiniz. |
|
404 |
InvalidResourceGroup.NotFound |
The ResourceGroup provided does not exist in our records. |
Kaynak grubu kimliği bulunamadı. |
|
500 |
InternalError.Dispatch |
An error occurred when you dispatched the request. |
İstek gönderilirken bir hata oluştu. Daha sonra tekrar deneyin. |
Hata kodlarının listesi için bkz. Hizmet hata kodları.