Membuat dan menjalankan perintah Asisten Cloud pada satu atau beberapa Instance ECS. Operasi ini mendukung skrip Shell, PowerShell, dan Bat, serta menyediakan fitur seperti eksekusi terjadwal, parameter kustom, dan eksekusi perintah di dalam Kontainer pada Instans.
Deskripsi operasi
Ini adalah operasi asinkron. Setelah permintaan dikirim, Anda dapat memanggil DescribeInvocations atau DescribeInvocationResults dengan ID perintah atau ID pemanggilan yang dikembalikan untuk mengkueri hasil eksekusi.
Sebelum memulai
Instans target harus dalam status Berjalan (
Running). Anda dapat memanggil DescribeInstances untuk mengkueri status Instans.- Instans target harus memiliki Agen Asisten Cloud yang terinstal. Anda dapat menginstalnya dengan memanggil InstallCloudAssistant dan mengkueri status instalasi dengan memanggil DescribeCloudAssistantStatus.
Catatan
Instance ECS yang dibuat dari image publik setelah 1 Desember 2017 memiliki Agen Asisten Cloud yang terinstal secara default.
Untuk menjalankan perintah PowerShell, pastikan modul PowerShell telah dikonfigurasi pada sistem operasi Windows Instance ECS target.
Catatan penting
-
Dalam satu Wilayah, Anda dapat menyimpan 500 hingga 50.000 perintah Asisten Cloud. Anda juga dapat meminta Tingkatkan Kuota. Untuk informasi lebih lanjut, lihat Manajemen Kuota.
-
Agen Asisten Cloud harus berada pada versi berikut atau yang lebih baru untuk mendukung fitur baru pada Tugas terjadwal (eksekusi pada interval tetap, eksekusi satu kali pada pengatur waktu tertentu, dan penentuan tahun atau zona untuk eksekusi terjadwal berbasis Ekspresi cron). Jika kode kesalahan
ClientNeedUpgradedikembalikan, lihat Peningkatan atau menonaktifkan Peningkatan untuk Agen Asisten Cloud untuk memperbarui Agen ke versi terbaru.- Linux: 2.2.3.282 - Windows: 2.1.3.282 -
Saat Anda menjalankan Tugas terjadwal berbasis Ekspresi cron dengan zona yang ditentukan, waktu eksekusi terjadwal didasarkan pada zona yang ditentukan. Saat Anda tidak menentukan zona, waktu eksekusi terjadwal didasarkan pada zona sistem Instance ECS, dan waktu eksekusi ditentukan oleh pengatur waktu sistem Instans. Pastikan pengatur waktu atau zona Instance ECS sesuai dengan ekspektasi Anda. Untuk informasi lebih lanjut tentang zona, lihat Mengonfigurasi zona dan layanan NTP untuk Instans Linux atau Mengonfigurasi layanan NTP untuk Instans Windows.
Coba sekarang
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
ecs:RunCommand |
update |
*Instance.
|
|
None |
Parameter permintaan
|
Parameter |
Type |
Required |
Description |
Example |
| RegionId |
string |
Yes |
ID wilayah. Anda dapat memanggil DescribeRegions untuk mengkueri daftar wilayah terbaru. |
cn-hangzhou |
| ResourceGroupId |
string |
No |
ID kelompok sumber daya untuk eksekusi perintah. Saat parameter ini ditentukan:
|
rg-bp67acfmxazb4p**** |
| Name |
string |
No |
Nama perintah. Semua set karakter didukung. Nama dapat memiliki panjang hingga 128 karakter. |
testName |
| Description |
string |
No |
Deskripsi perintah. Semua set karakter didukung. Deskripsi dapat memiliki panjang hingga 512 karakter. |
testSkrip |
| Type |
string |
Yes |
Tipe perintah. Nilai valid:
|
RunShellScript |
| CommandContent |
string |
Yes |
Konten perintah. Konten perintah dapat berupa teks biasa atau dienkode Base64. Perhatikan hal-hal berikut:
|
ZWNobyAxMjM= |
| WorkingDir |
string |
No |
Direktori kerja perintah pada Instance ECS. Nilai dapat memiliki panjang hingga 200 karakter. Nilai default:
|
/home/user |
| Timeout |
integer |
No |
Periode pengatur waktu untuk eksekusi perintah. Unit: detik. Saat perintah tidak dapat Berjalan karena masalah proses, modul yang hilang, atau Agen Asisten Cloud yang hilang, pengatur waktu tunggu akan terjadi. Saat pengatur waktu tunggu terjadi, proses perintah akan dihentikan secara paksa. Nilai default: 60. |
3600 |
| EnableParameter |
boolean |
No |
Apakah akan menyertakan parameter kustom dalam perintah. Nilai default: false. |
false |
| RepeatMode |
string |
No |
Mode eksekusi perintah. Nilai valid:
Nilai default:
Catatan penting:
|
Once |
| Timed |
boolean |
No |
[Tidak digunakan lagi] Parameter ini tidak digunakan lagi. Menentukan parameter ini tidak memiliki efek. |
true |
| Frequency |
string |
No |
Jadwal untuk menjalankan perintah. Tiga metode penjadwalan didukung: eksekusi pada interval tetap (berdasarkan ekspresi laju), eksekusi satu kali pada pengatur waktu tertentu, dan eksekusi terjadwal berbasis jam (berdasarkan Ekspresi cron).
|
0 */20 * * * ? |
| Parameters |
object |
No |
Pasangan kunci-nilai parameter kustom yang akan diteruskan saat perintah berisi parameter kustom. Misalnya, jika konten perintah adalah Jumlah parameter kustom berkisar dari 0 hingga 10. Perhatikan hal-hal berikut:
Nilai default: kosong, yang menonaktifkan parameter kustom. |
{"name":"Jack", "accessKey":"LTAI*************"} |
| KeepCommand |
boolean |
No |
Apakah akan menyimpan perintah setelah eksekusi. Nilai valid:
Nilai default: false. |
false |
| ContentEncoding |
string |
No |
Metode pengodean konten perintah (
Nilai default: PlainText. Jika nilai tidak valid ditentukan, nilai tersebut diperlakukan sebagai PlainText. |
Base64 |
| Username |
string |
No |
Nama pengguna untuk perintah Berjalan pada Instance ECS. Nilai dapat memiliki panjang hingga 255 karakter.
Anda juga dapat menentukan pengguna lain yang ada pada Instans untuk menjalankan perintah. Menjalankan Asisten Cloud sebagai pengguna biasa lebih aman. Untuk informasi lebih lanjut, lihat Mengonfigurasi pengguna biasa untuk menjalankan Asisten Cloud. |
test |
| WindowsPasswordName |
string |
No |
Nama kata sandi untuk pengguna yang mengeksekusi perintah pada instans Windows. Nama dapat memiliki panjang hingga 255 karakter. Jika Anda ingin mengeksekusi perintah sebagai pengguna non-default (System) pada instans Windows, Anda harus menentukan Catatan
Anda tidak perlu menentukan parameter ini jika Anda mengeksekusi perintah sebagai pengguna root pada instans Linux atau pengguna System pada instans Windows. |
axtSecretPassword |
| InstanceId |
array |
No |
Array ID Instance ECS. Panjang array: 1 hingga 100. Jika salah satu Instans yang ditentukan tidak memenuhi kondisi untuk mengeksekusi perintah, Anda harus memilih ulang Instans tersebut. Anda juga dapat meminta Tingkatkan Kuota di Pusat Kuota (nama Kuota: Jumlah maksimum Instans yang dapat mengeksekusi perintah). |
i-bp185dy2o3o6neg**** |
|
string |
No |
ID Instans ECS. |
i-bp185dy2o3o6neg**** |
|
| Tag |
array<object> |
No |
Tag. Panjang array: 0 hingga 20. |
|
|
object |
No |
Tag. |
||
| Key |
string |
No |
Kunci tag yang digunakan saat Anda mengeksekusi perintah. Jika nilai ini ditentukan, nilai tersebut tidak boleh berupa string kosong. Saat Anda menggunakan satu tag untuk memfilter Sumber daya, jumlah Sumber daya di bawah tag tersebut tidak boleh melebihi 1.000. Saat Anda menggunakan beberapa tag untuk memfilter Sumber daya, jumlah Sumber daya yang dilampirkan ke semua tag yang ditentukan tidak boleh melebihi 1.000. Jika jumlah Sumber daya melebihi 1.000, gunakan operasi ListTagResources untuk mengkueri Sumber daya. Kunci tag dapat memiliki panjang hingga 64 karakter dan tidak boleh dimulai dengan |
TestKey |
| Value |
string |
No |
Nilai tag untuk eksekusi perintah. Nilai dapat berupa string kosong. Nilai tag dapat memiliki panjang hingga 128 karakter dan tidak boleh mengandung |
TestValue |
| ContainerId |
string |
No |
ID Kontainer. Hanya string heksadesimal 64-bit yang didukung. Anda dapat menggunakan awalan Catatan penting:
Catatan
Hanya skrip Shell yang didukung di dalam Kontainer Linux. Anda tidak dapat menggunakan format seperti |
ab141ddfbacfe02d9dbc25966ed971536124527097398d419a6746873fea**** |
| ContainerName |
string |
No |
Nama kontainer. Catatan penting:
Catatan
Hanya skrip Shell yang didukung di dalam kontainer Linux. Anda tidak dapat menggunakan format seperti |
test-Kontainer |
| ClientToken |
string |
No |
Token Klien yang digunakan untuk memastikan idempotensi permintaan. Anda dapat menggunakan Klien untuk menghasilkan token, tetapi pastikan token tersebut unik di antara permintaan yang berbeda. ClientToken hanya dapat berisi karakter ASCII dan tidak boleh melebihi panjang 64 karakter. Untuk informasi lebih lanjut, lihat Cara memastikan idempotensi. |
123e4567-e89b-12d3-a456-426655440000 |
| OssOutputDelivery |
string |
No |
Konfigurasi pengiriman OSS untuk output eksekusi perintah.
|
oss://testBucket/testPrefix |
| ResourceTag |
array<object> |
No |
Tag yang digunakan untuk memfilter instans. Panjang array: 0 hingga 20. Anda dapat menjalankan perintah secara batch pada instans yang memiliki tag yang sama tanpa menentukan InstanceId. |
|
|
object |
No |
Tag yang digunakan untuk memfilter instans. Anda dapat menjalankan perintah secara batch pada instans yang memiliki tag yang sama tanpa menentukan InstanceId. |
||
| Key |
string |
No |
Kunci tag yang digunakan untuk memfilter Instans. Catatan penting:
|
TestKey |
| Value |
string |
No |
Nilai tag yang digunakan untuk memfilter instans. Catatan penting:
|
TestValue |
| TerminationMode |
string |
No |
Mode untuk menghentikan Tugas (penghentian manual atau interupsi pengatur waktu). Nilai valid:
|
ProcessTree |
| Launcher |
string |
No |
Program bootstrap untuk eksekusi skrip. Nilai tidak boleh melebihi panjang 1 KB. |
python3 -u {{ACS::ScriptFileName|Ext(".py")}} |
Elemen respons
|
Element |
Type |
Description |
Example |
|
object |
|||
| CommandId |
string |
ID perintah. |
c-7d2a745b412b4601b2d47f6a768d**** |
| InvokeId |
string |
ID pemanggilan. |
t-7d2a745b412b4601b2d47f6a768d**** |
| RequestId |
string |
ID permintaan. |
473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** |
Contoh
Respons sukses
JSONformat
{
"CommandId": "c-7d2a745b412b4601b2d47f6a768d****",
"InvokeId": "t-7d2a745b412b4601b2d47f6a768d****",
"RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}
Kode kesalahan
|
HTTP status code |
Error code |
Error message |
Description |
|---|---|---|---|
| 400 | RegionId.ApiNotSupported | The api is not supported in this region. | Pemanggilan API tidak didukung di wilayah tertentu. Periksa apakah nilai parameter RegionId benar. |
| 400 | ResourceBusy.SlrCreation | The ServiceLinkedRole is still being created or has not taken effect yet. Please try again later. | |
| 400 | MissingParam.InstanceId | The parameter instanceId is missing or empty. | ID instans kosong. |
| 400 | NumberExceed.Tags | Ensure the number of tag parameters is not greater than 20. | Jumlah tag melebihi batas maksimum. Anda dapat menentukan hingga 20 tag untuk operasi ini. |
| 400 | InvalidTagValue.Malformed | The specified Tag.n.Value is not valid. | Parameter nilai tag yang ditentukan tidak valid. |
| 400 | Duplicate.TagKey | The Tag.N.Key contain duplicate key. | Terdapat kunci duplikat dalam tag. Pastikan semua kunci unik. |
| 400 | InvalidTagKey.Malformed | The specified Tag.n.Key is not valid. | Parameter kunci tag yang ditentukan tidak valid. |
| 400 | MissingParameter.TagKey | You must specify Tag.N.Key. | Tentukan kunci tag. |
| 400 | InvalidContainerId.Malformed | The specified parameter ContainerId is not valid. | ID kontainer yang ditentukan tidak valid. |
| 400 | InvalidContainerName.Malformed | The specified parameter ContainerName is not valid. | Nama kontainer yang ditentukan tidak valid. |
| 400 | InvalidClientToken.Malformed | The specified parameter clientToken is not valid. | Parameter idempoten yang ditentukan tidak valid. |
| 400 | CmdParam.EmptyKey | Command parameters can not be empty. | |
| 400 | CmdParam.InvalidParamName | A command parameter name is invalid. | |
| 400 | CmdContent.DecodeError | The CommandContent can not be base64 decoded. | Nilai parameter CommandContent tertentu tidak dapat didekode Base64. Periksa apakah nilai parameter benar. |
| 400 | InvalidInstance.NotMatch | The specified instance type does not match the command. | |
| 400 | MissingParam.Frequency | The frequency must be specified when you create a timed task. | |
| 400 | InvalidParam.Frequency | The specified frequency is invalid. | |
| 400 | ParameterKey.Duplicate | The parameter may not contain duplicate keys. | Nama parameter tidak boleh duplikat. Verifikasi nama dan coba lagi. |
| 400 | Parameter.NotMatched | The parameters of creation do not match those of invocation. | Parameter kustom yang diteruskan tidak cocok dengan parameter kustom yang didefinisikan saat perintah dibuat. |
| 400 | WindowsPasswordName.Missed | WindowsPasswordName must be specified when you create a Windows task. | |
| 400 | Parameter.Disabled | Parameters should not be passed when CreateCommand.EnableParameter is false. | Jangan meneruskan parameter kustom ketika fitur parameter kustom dari perintah dinonaktifkan. |
| 400 | InvalidParameter.WorkingDir | The specified parameter WorkingDir is not valid. | Parameter WorkingDir yang ditentukan tidak valid. |
| 400 | NumberExceed.ResourceTags | The maximum number of ResourceTags is exceeded. | |
| 400 | MissingParameter.ResourceTagKey | You must specify ResourceTag.N.Key. | |
| 400 | InvalidResourceTagKey.Malformed | The specified ResourceTag key is not valid. | |
| 400 | InvalidResourceTagValue.Malformed | The specified ResourceTag value is not valid. | |
| 400 | Duplicate.ResourceTagKey | The ResourceTag contains duplicate keys. | |
| 400 | InvalidResourceTag.InstanceNotFound | InstanceIds are not found by the specified ResourceTag. | |
| 400 | InvalidResourceTag.ConflictWithInstanceIds | The specified param ResourceTag conflicts with InstanceId. | |
| 400 | InvalidOssOutputDelivery.BucketInOtherRegion | The OSS bucket specified in the parameter OssOutputDelivery is in another region. | Bucket OSS yang ditentukan dalam parameter OssOutputDelivery berada di wilayah yang berbeda. |
| 400 | InvalidParameter.OssOutputDelivery | The specified parameter OssOutputDelivery is not valid. | Parameter OssOutputDelivery yang ditentukan tidak valid. |
| 400 | InvalidOssOutputDelivery.KeyPrefixMalformed | The prefix of the OSS key specified in the parameter OssOutputDelivery is not valid. | Awalan yang ditentukan dalam parameter OssOutputDelivery tidak valid. |
| 500 | InternalError.Dispatch | An error occurred when you dispatched the request. | Terjadi kesalahan saat mengirim permintaan. Coba lagi nanti. |
| 403 | InvalidParameterCharacter | The specified parameter %s contains illegal characters. | |
| 403 | InvalidOssOutputDelivery.BucketAccessDenied | The error message returned by the OSS API is: %s | |
| 403 | CmdContent.ExceedLimit | The length of the command content exceeds the upper limit. | Konten perintah Anda terlalu panjang. Sederhanakan konten perintah Anda. |
| 403 | CmdName.ExceedLimit | The length of the command name exceeds the upper limit. | Panjang nama perintah melebihi batas maksimum. |
| 403 | CmdDesc.ExceedLimit | The length of the command description exceeds the upper limit. | Panjang deskripsi perintah melebihi batas atas. |
| 403 | CmdCount.ExceedQuota | The total number of commands in the current region exceeds the quota. | Jumlah perintah Asisten Cloud di wilayah saat ini telah melebihi batas. |
| 403 | CmdParamCount.ExceedLimit | You've reached the limit on the count of command parameters. | |
| 403 | CmdParamName.ExceedLimit | The length of the command parameter name exceeds the limit. | Nama parameter kustom Anda melebihi batas panjang. |
| 403 | InstanceIds.ExceedLimit | The number of instance IDs exceeds the upper limit. | Jumlah instans target melebihi batas atas. |
| 403 | Invocation.ExceedQuota | The invocation quota in the current region has been reached for today. | Jumlah eksekusi perintah di wilayah saat ini telah mencapai kuota harian. |
| 403 | ParameterCount.ExceedLimit | The number of command parameters exceeds the maximum number that can be set. | Jumlah parameter melebihi batas maksimum yang diizinkan. |
| 403 | ParameterKey.ExceedLimit | The length of the specified parameter key exceeds the maximum length that can be set. | Panjang kunci parameter yang ditentukan melebihi panjang maksimum yang diizinkan. |
| 403 | ParameterType.NotSupported | The type of parameter value is not supported. | |
| 403 | Username.ExceedLimit | The length of the username exceeds the upper limit. | Panjang nama pengguna melebihi batas atas. |
| 403 | WindowsPasswordName.ExceedLimit | The length of the WindowsPasswordName exceeds the upper limit. | Panjang parameter WindowsPasswordName yang ditentukan melebihi batas atas. |
| 403 | ParameterStore.NotSupported | Parameter Store is not supported in this region. | |
| 403 | TemporaryAccessKey.Error | The temporary accessKey is invalid. | |
| 403 | ParameterStore.InvalidParameters | The parameter is invalid in Parameter Store. | Parameter yang ditentukan oleh {{oos:?}} dalam konten perintah tidak ditemukan. |
| 403 | ParameterStore.NoPermission | You have no access to Parameter Store. | |
| 403 | OperationDenied.BidOwnResource | Bid user can not own resource. | |
| 403 | Operation.Forbidden | The operation is not permitted. | Operasi tidak diizinkan. |
| 403 | IdempotentParameterMismatch | The specified parameter has changed while using an already used clientToken. | Parameter permintaan tidak cocok dengan permintaan yang memiliki ClientToken yang sama. |
| 403 | IdempotentProcessing | The previous idempotent request(s) is still processing. | Permintaan idempoten sebelumnya masih diproses. Coba lagi nanti. |
| 403 | InvalidStatus.ResourceGroup | You cannot perform an operation on a resource group that is being created or deleted. | Operasi tidak diizinkan saat kelompok sumber daya sedang dibuat atau dihapus. |
| 403 | InvalidParameterCharacter.CommandName | The command Name contains illegal characters. | Nama perintah berisi karakter yang tidak valid. |
| 403 | InvalidParameterCharacter.CommandDescription | The command Description contains illegal characters. | Deskripsi perintah berisi karakter yang tidak valid. |
| 403 | InvalidParameterCharacter.CommandWorkingDir | The command WorkingDir contains illegal characters. | Jalur eksekusi perintah berisi karakter yang tidak valid. |
| 403 | InvalidLauncher.LengthLimitExceeded | The length of the parameter Launcher exceeds the limit of 1 KB characters. | Panjang parameter Launcher melebihi batas 1 KB. |
| 403 | InvalidParameterCharset.Parameters | The parameter Parameters contains illegal charset. | Parameter command berisi karakter yang tidak valid. |
| 403 | CreateServiceLinkedRole.NoPermission | You do not have permission to create ServiceLinkedRole for output delivery. | Anda tidak memiliki izin untuk membuat peran terkait layanan. |
| 403 | InvalidTimeout.ExceedLimit | The specified parameter Timeout exceeds the upper limit. | |
| 404 | InvalidCmdType.NotFound | The specified command type does not exist. | |
| 404 | InvalidRepeatMode.NotFound | The specified repeat mode does not exist. | Mode eksekusi perintah yang ditentukan tidak ada. |
| 404 | InvalidRegionId.NotFound | The RegionId provided does not exist in our records. | RegionId yang ditentukan tidak ada. Periksa apakah produk tersedia di wilayah ini. |
| 404 | InvalidInstance.NotFound | The specified instance does not exist. | Instans yang ditentukan tidak ada. |
| 404 | InvalidCmdId.NotFound | The specified command ID does not exist. | Parameter CommandId tertentu tidak valid. Periksa apakah nilai parameter benar. Anda dapat memanggil DescribeCommands untuk mengkueri semua nilai CommandId yang tersedia. |
| 404 | InvalidResourceGroup.NotFound | The ResourceGroup provided does not exist in our records. | Kelompok sumber daya tidak ditemukan dalam catatan. |
| 404 | InvalidTerminationMode.NotFound | The specified parameter TerminationMode does not exist. | Parameter TerminationMode yang ditentukan tidak ada. |
| 404 | InvalidOssOutputDelivery.BucketNotFound | The OSS bucket specified in the parameter OssOutputDelivery does not exist. | Bucket yang ditentukan dalam parameter OssOutputDelivery tidak ada. |
Lihat Error Codes untuk daftar lengkap.
Catatan rilis
Lihat Release Notes untuk daftar lengkap.