Topik ini menjawab pertanyaan umum (FAQ) terkait penggunaan CloudOps Orchestration Service (OOS).
Kesalahan izin Pengguna RAM: Pengguna tidak berwenang untuk melakukan aksi: (ListTemplates)
Aksi eksekusi tidak ditemukan meskipun memiliki sumber daya yang diperlukan
Apa yang harus dilakukan jika gagal membangun dan menerapkan aplikasi dari repositori kode Git?
Kesalahan operasi API DescribeInstances: SDK.UnknownServerError atau InvalidParameter
Kesalahan operasi Pengguna RAM: User has no permission to do the action: (ListTemplates)
Penyebab yang mungkin: Pengguna RAM tidak memiliki izin untuk memanggil operasi tersebut.
Solusi: Masuk ke Konsol RAM sebagai administrator atau menggunakan Akun Alibaba Cloud Anda. Berikan izin yang diperlukan kepada Pengguna RAM yang melaporkan kesalahan tersebut. Anda dapat memberikan izin pada operasi API tertentu atau semua operasi API. Misalnya,
"Action": "oos:*"memberikan izin pada semua operasi API OOS. Untuk informasi selengkapnya, lihat Kontrol akses.{ "Statement": [ { "Effect": "Allow", "Action": "oos:*", "Resource": "*" } ], "Version": "1" }
Kesalahan operasi Pengguna RAM: User has no permission to do the action: (PassRole)
Penyebab yang mungkin: Pengguna RAM tidak memiliki Izin PassRole untuk memanggil operasi CloudOps Orchestration Service.
Solusi: Masuk ke Konsol RAM dengan akun Alibaba Cloud atau akun administrator. Berikan Izin PassRole kepada pengguna RAM. Untuk informasi lebih lanjut, lihat Pengendalian akses.
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": "ram:PassRole", "Resource": "*" } ] }
Kesalahan eksekusi templat: Assumes role failed. Code: EntityNotExist.Role, msg: The role not exists: acs:ram::111111:role/OOSServiceRole
Penyebab yang mungkin: Anda belum membuat Peran RAM default untuk layanan OOS Anda untuk mengakses sumber daya Alibaba Cloud Anda.
Solusi: Masuk ke Konsol RAM dengan akun Alibaba Cloud atau akun administrator. Buat Peran RAM default OOSServiceRole untuk layanan OOS Anda. Untuk informasi lebih lanjut, lihat Berikan izin RAM ke OOS.
Kesalahan eksekusi templat: Assumes role failed. Code: NoPermission, msg: You are not authorized to do this action. You should be authorized by RAM
Penyebab yang mungkin: Anda belum melampirkan kebijakan kepercayaan yang diperlukan ke Peran RAM OOSServiceRole untuk layanan OOS Anda.
Solusi: Masuk ke Konsol RAM menggunakan Akun Alibaba Cloud atau akun administrator dan tambahkan peran RAM OOSServiceRole. Untuk informasi selengkapnya, lihat Atur izin RAM untuk OOS.
Masuk ke Konsol RAM dan masukkan
OOSServiceNamedi kotak pencarian peran.
Klik Trust Policy.

Ubah kebijakan.

Gunakan konten berikut untuk kebijakan:
{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "oos.aliyuncs.com" ] } } ], "Version": "1" }
Kesalahan eksekusi templat: Code: Forbidden.RAM, Message: User not authorized to operate on the specified resource, or this API doesn't support RAM
Penyebab yang mungkin: Pengguna RAM atau Peran RAM tidak memiliki izin untuk mengakses sumber daya yang ditentukan.
Solusi: Berikan izin yang diperlukan kepada pengguna RAM atau Peran RAM. Untuk informasi lebih lanjut, lihat Kueri kebijakan RAM yang diperlukan untuk eksekusi template, Berikan izin kepada pengguna RAM, dan Berikan izin kepada Peran RAM.
Kesalahan peningkatan bandwidth sementara: code: InvalidAccountStatus.NotEnoughBalance message: Your account does not have enough balance
Kemungkinan penyebab: Saldo akun tidak mencukupi untuk membayar pesanan baru.
Solusi: Isi ulang akun Anda dan coba lagi.
Galat peningkatan bandwidth sementara: code: InvalidBandwidth.ValueNotSupported message: Instance upgrade bandwidth of temporary not allow less then existed
Penyebab yang mungkin: Bandwidth yang ditentukan dalam tugas peningkatan bandwidth sementara lebih rendah daripada bandwidth saat ini.
Solusi:
Di halaman Gambaran Umum konsol OOS, cari tugas peningkatan bandwidth sementara berdasarkan ID Instance Elastic Compute Service (ECS). Periksa apakah ada tugas peningkatan duplikat.
Jika ada tugas peningkatan duplikat, hapus tugas tersebut.
Jika tidak ada tugas peningkatan ganda semacam itu, buka Konsol ECS. Di panel navigasi sebelah kiri, klik Instances. Pada halaman Instance, klik nama atau ID instans yang ingin Anda kueri. Lihat log peningkatan pada tab Operation Records.
Kesalahan peningkatan bandwidth sementara: code: OperationDenied.UnpaidOrder message: The specified instance has unpaid order
Penyebab yang mungkin: Instance ECS yang ingin Anda kelola memiliki satu atau lebih tagihan yang belum dibayar.
Solusi: Selesaikan pembayaran untuk pesanan tersebut.
Kesalahan umum eksekusi perintah: runCommand loop task fail because failures exceeded MaxErrors -> runCommand execution failed, checkInvocationResult Invocation.InvocationResults.InvocationResult[].ExitCode expect in [0] but is 1
Penyebab yang mungkin: Kode keluar dari perintah Cloud Assistant bukan 0.
Solusi: Pecahkan masalah kesalahan dengan melihat output dan log dari eksekusi anak. Untuk informasi lebih lanjut, lihat Lihat detail eksekusi.
Apa yang harus saya lakukan jika saya membuat eksekusi tetapi tidak dapat menemukannya?
Penyebab yang mungkin: Eksekusi berada di wilayah lain.
Solusi: Lihat eksekusi di semua wilayah di halaman Gambaran Umum.
Bagaimana cara memecahkan masalah kesalahan perintah?
Apa yang harus saya lakukan jika gagal membangun dan menerapkan aplikasi dari repositori kode Git?
Penyebab yang mungkin: Kesalahan kode dan kegagalan instalasi dependensi. Anda dapat melihat log untuk mendapatkan penyebab kegagalan pembuatan dan penerapan aplikasi.
Solusi:
Kegagalan pembuatan
CatatanJika Anda gagal membangun aplikasi dari repositori kode Git, tidak ada Instance ECS yang dibuat dan Anda tidak akan dikenakan biaya.
Lihat log untuk mendapatkan pesan kesalahan tentang kegagalan pembuatan.

Ubah kode atau tambahkan file konfigurasi.
Ubah kode atau tambahkan file konfigurasi berdasarkan bahasa pemrograman repositori kode Anda, dan kirimkan ke repositori kode. Untuk informasi lebih lanjut, lihat Konfigurasikan aplikasi berdasarkan bahasa pemrograman tertentu.
Hapus grup aplikasi yang gagal dibangun dan buat grup aplikasi baru.
Kegagalan penerapan
Lihat log untuk mendapatkan pesan kesalahan tentang kegagalan penerapan.
Perbaiki masalah dan terapkan aplikasi lagi.

Tidak dapat mengakses layanan setelah penerapan aplikasi berhasil
Kecualikan penundaan startup aplikasi.
Setelah aplikasi diterapkan, tunggu sejenak untuk mengakses aplikasi lagi. Jika Anda masih tidak dapat mengakses layanan, lanjutkan ke langkah berikutnya.
Masuk ke instance ECS dan jalankan perintah berikut untuk memeriksa apakah layanan aplikasi telah dimulai.
sudo systemctl status aliyun-applicationmanagerJika layanan telah dimulai, lanjutkan ke langkah berikutnya.
Jika layanan belum dimulai dengan benar, periksa log layanan sistem untuk menemukan penyebab kegagalan perintah
docker run.
Lihat log kontainer
# Temukan kontainer Docker. sudo docker ps -a | grep applicationmanager # Lihat log kontainer sudo docker logs applicationmanagerJika kontainer Docker tidak dimulai, ubah kode atau tambahkan file konfigurasi berdasarkan bahasa pemrograman repositori kode, dan kirimkan kode ke repositori kode. Untuk informasi lebih lanjut, lihat Konfigurasikan aplikasi berdasarkan bahasa pemrograman tertentu.
Di bagian Quick Actions dari tab Overview, klik Update Application. Kemudian, gunakan kode yang diperbarui untuk menerapkan aplikasi lagi.
Skenario umum
Untuk membangun dan menerapkan aplikasi dengan cepat dan berhasil, kami sarankan Anda men-debug Buildpacks build pada mesin lokal. Untuk informasi lebih lanjut, lihat Debug Buildpacks.
Jika Anda tidak dapat menyelesaikan masalah menggunakan metode-metode ini, kirim tiket atau bergabung dengan grup DingTalk untuk dukungan manajemen aplikasi (ID:
10880003624) untuk memberikan masukan.
Kesalahan operasi API DescribeInstances: SDK.UnknownServerError atau InvalidParameter
Penyebab: Jika Anda meneruskan lebih dari 100 ID instans ke operasi API DescribeInstances, kesalahan InvalidParameter atau SDK.UnknownServerError (414 Request-URI Too Large) akan dilaporkan.
Solusi:
- Name: getInstanceDescribe Action: ACS::ExecuteAPI Description: en: Query instance type Properties: Service: ECS API: DescribeInstances Parameters: InstanceIds: Fn::Jq: - All - .[].InstanceId - '{{ getInstance.instanceIds }}' Outputs: instanceIds: Type: List ValueSelector: Instances.Instance[].InstanceId- Name: getInstanceDescribe Description: en: Views the ECS instances. Action: ACS::SelectTargets Properties: ResourceType: ALIYUN::ECS::Instance Filters: - Type: ResourceIds ResourceIds: Fn::Jq: - All - .[].InstanceId - '{{ getInstance.instanceIds }}' Outputs: instanceIds: Type: List ValueSelector: Instances.Instance[].InstanceId
Gunakan selectTargets. Ganti Blok Kode 1 dengan Blok Kode 2.
Solusi untuk mengeluarkan secara literal "table {{.Name}}\t{{.MemUsage}}" ketika konten skrip menggunakan format parameter OOS
Penyebab: Anda ingin menjalankan perintah berikut apa adanya:
docker stats --no-stream --format "table {{.Name}}\t{{.MemUsage}}" | sort -k2 -hr | head -n 6
Mesin templat menganggap format {{}} dalam "table {{.Name}}\t{{.MemUsage}}" sebagai variabel. Hal ini menyebabkan masalah penguraian.
Solusi: Ubah perintah tersebut sebagai berikut:
left="{{" right="}}" docker stats --no-stream --format "table ${left}.Name${right} ${left}.MemUsage${right}" | sort -k2 -hr | head -n 6
Kesalahan perintah Asisten Cloud: 414 Request-URI Too Large
Penyebab: Perintah terlalu panjang. Panjang maksimum perintah Asisten Cloud setelah dikodekan Base64 adalah 24 KB.
Untuk informasi selengkapnya, lihat RunCommand - Buat dan jalankan perintah Asisten Cloud.
Solusi: Tempatkan perintah tersebut dalam objek Object Storage Service (OSS). Kemudian, gunakan ossutil untuk mengunduh dan menjalankan objek tersebut.