View a markdown version of this page

Memecahkan masalah Amazon ECS Service Connect dengan berbagi AWS Cloud Map ruang nama - Amazon Elastic Container Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memecahkan masalah Amazon ECS Service Connect dengan berbagi AWS Cloud Map ruang nama

Gunakan informasi berikut untuk memecahkan masalah dengan ruang nama bersama AWS Cloud Map dan Koneksi Layanan. Untuk informasi selengkapnya tentang menemukan pesan kesalahan, lihat pemec ahan masalah Amazon ECS.

Pesan kesalahan yang terkait dengan masalah izin muncul karena izin yang hilang, atau jika akses ke namespace dicabut.

penting

Anda harus menggunakan izin AWSRAMPermissionCloudMapECSFullPermission terkelola untuk berbagi namespace agar Service Connect berfungsi dengan baik dengan namespace.

Pesan kesalahan muncul dalam salah satu format berikut:

Terjadi kesalahan (ClientException) saat memanggil operasi < OperationName >: User: arn:aws:iam: :user/ tidak ber <account-id><user-name>wenang untuk melakukan: < > ActionName pada resource: < > ResourceArn karena tidak ada kebijakan berbasis sumber daya yang mengizinkan tindakan < > ActionName

Skenario berikut dapat menghasilkan pesan kesalahan dalam format ini:

Kegagalan pembuatan atau pembaruan cluster

Masalah ini terjadi ketika operasi Amazon ECS seperti CreateCluster atau UpdateCluster gagal karena AWS Cloud Map izin yang hilang. Operasi memerlukan izin untuk AWS Cloud Map tindakan berikut:

  • servicediscovery:GetNamespace

Pastikan undangan berbagi sumber daya telah diterima di akun konsumen dan bahwa ARN namespace yang benar digunakan dalam konfigurasi Service Connect.

Pembuatan layanan atau kegagalan pembaruan

Masalah ini terjadi ketika operasi Amazon ECS seperti CreateService atau UpdateService gagal karena AWS Cloud Map izin yang hilang. Operasi memerlukan izin untuk AWS Cloud Map tindakan berikut:

  • servicediscovery:CreateService

  • servicediscovery:GetNamespace

  • servicediscovery:GetOperation(untuk membuat AWS Cloud Map layanan baru)

  • servicediscovery:GetService(untuk ketika AWS Cloud Map layanan sudah ada)

Pastikan undangan berbagi sumber daya telah diterima di akun konsumen dan bahwa ARN namespace yang benar digunakan dalam konfigurasi Service Connect.

ListServicesByNamespaceoperasi gagal

Masalah ini terjadi ketika ListServicesByNamespace operasi Amazon ECS gagal. Operasi memerlukan izin untuk AWS Cloud Map tindakan berikut:

  • servicediscovery:GetNamespace

Untuk menyelesaikan masalah ini:

  • Verifikasi bahwa akun konsumen memiliki servicediscovery:GetNamespace izin.

  • Gunakan namespace ARN saat memanggil API, bukan nama.

  • Pastikan pembagian sumber daya aktif dan undangan telah diterima.

Pengguna: <iam-user>tidak berwenang untuk melakukan: < ActionName > pada resource: < ResourceArn > dengan penolakan eksplisit dalam kebijakan berbasis identitas.

Skenario berikut dapat menghasilkan pesan kesalahan dalam format ini:

Penghapusan layanan gagal dan terjebak dalam DRAINING keadaan

Masalah ini terjadi ketika DeleteService operasi Amazon ECS gagal karena servicediscovery:DeleteService izin yang hilang saat akses ke namespace dicabut. Layanan mungkin tampak berhasil dihapus pada awalnya tetapi akan macet dalam DRAINING keadaan. Pesan kesalahan muncul sebagai acara layanan Amazon ECS.

Untuk mengatasi masalah ini, pemilik namespace harus berbagi namespace dengan akun konsumen untuk memungkinkan penghapusan layanan selesai.

Tugas dalam layanan gagal dijalankan

Masalah ini terjadi ketika tugas gagal dimulai karena izin yang hilang. Pesan kesalahan muncul sebagai kesalahan tugas yang dihentikan. Untuk informasi selengkapnya, lihat Selesaikan kesalahan tugas yang dihentikan Amazon ECS.

Tind AWS Cloud Map akan berikut diperlukan untuk menjalankan tugas:

  • servicediscovery:GetOperation

  • servicediscovery:RegisterInstance

Pastikan akun konsumen memiliki izin yang diperlukan dan namespace bersama dapat diakses.

Tugas gagal berhenti dengan bersih atau terjebak dalam DEACTIVATING keadaan DEPROVISIONING

Masalah ini terjadi ketika tugas gagal membatalkan pendaftaran dari AWS Cloud Map layanan selama shutdown karena izin yang hilang. Kesalahan muncul sebagai statusReason lampiran tugas yang dapat dipulihkan kembali menggunakan API. DescribeTasks Untuk informasi selengkapnya, lihat DescribeTasks Referensi API Layanan Kontainer Amazon Elastic.

Tind AWS Cloud Map akan berikut diperlukan untuk menghentikan tugas:

  • servicediscovery:DeregisterInstance

  • servicediscovery:GetOperation

Jika akses ke namespace bersama dicabut, tugas dapat tetap dalam DEPROVISIONING status DEACTIVATING atau sampai akses namespace dipulihkan. Minta pemilik namespace untuk mengembalikan akses ke namespace.