Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memecahkan masalah kesalahan akses dan AWS CodeCommit
Informasi berikut dapat membantu Anda memecahkan masalah kesalahan akses saat terhubung dengan repositori AWS CodeCommit .
Topik
Kesalahan akses: Saya diminta untuk nama pengguna dan kata sandi ketika saya terhubung ke CodeCommit repositori dari Windows
Masalah: Saat Anda mencoba menggunakan Git untuk berkomunikasi dengan CodeCommit repositori, Anda melihat kotak dialog yang meminta Anda untuk nama pengguna dan kata sandi Anda.
Perbaikan yang mungkin dilakukan: Hal ini mungkin sistem manajemen kredensial bawaan untuk Windows. Tergantung konfigurasi Anda, lakukan salah satu hal berikut ini:
-
Jika Anda menggunakan HTTPS dengan kredensial Git, berarti kredensial Git Anda belum disimpan dalam sistem. Berikan kredensial Git dan lanjutkan. Anda tidak akan diminta lagi. Untuk informasi selengkapnya, lihat Untuk pengguna HTTPS menggunakan kredensials Git.
Jika Anda menggunakan HTTPS dengan pembantu kredensi untuk AWS CodeCommit, itu tidak kompatibel dengan sistem manajemen kredensia Windows. Pilih Batalkan.
Hal ini mungkin juga merupakan indikasi bahwa Anda menginstal Pengelola Kredensial Git ketika Anda menginstal Git untuk Windows. Git Credential Manager tidak kompatibel dengan pembantu kredensi untuk diser CodeCommit takan dalam. AWS CLI Pertimbangkan untuk menghapus Pengelola Kredensial Git. Anda juga dapat menginstal dan mengonfigurasi git-remote-codecommit sebagai alternatif untuk menggunakan pembantu kredensi untuk CodeCommit.
Lihat informasi selengkapnya di Langkah-langkah pengaturan untuk koneksi HTTPS ke AWS CodeCommit dengan git-remote-codecommit, Untuk koneksi HTTPS di Windows dengan pembantu AWS CLI kredensi, dan Git untuk Windows: Saya menginstal Git untuk Windows, tetapi akses saya ke repositori saya ditolak (403).
Kesalahan akses: Kunci publik ditolak saat menghubungkan ke CodeCommit repositori
Masalah: Saat Anda mencoba menggunakan titik akhir SSH untuk berkomunikasi dengan CodeCommit repositori, pesan kesalahan muncul yang berisi frasa tersebutError: public key denied.
Perbaikan yang mungkin dilakukan: Alasan paling umum untuk kesalahan ini adalah bahwa Anda belum menyelesaikan setup untuk koneksi SSH. Mengkonfigurasi pasangan kunci SSH publik dan privat, dan kemudian mengaitkan kunci publik dengan pengguna IAM Anda. Untuk informasi lebih lanjut tentang mengkonfigurasi SSH, lihat Untuk koneksi SSH di Linux, macOS, atau Unix dan Untuk koneksi SSH pada Windows.
Kesalahan akses: Pesan “Tingkat Terlampaui” atau “429" saat menghubungkan ke repositori CodeCommit
Masalah: Saat Anda mencoba berkomunikasi dengan CodeCommit repositori, muncul pesan yang mengatakan “Tingkat Terlampaui” atau dengan kode kesalahan “429". Komunikasi menjadi lambat secara signifikan atau gagal.
Penyebab: Semua panggilan ke CodeCommit, baik dari aplikasi AWS CLI, klien Git, atau Konsol Manajemen AWS, tunduk pada jumlah permintaan maksimum per detik dan permintaan aktif keseluruhan. Anda tidak dapat melebihi tarif permintaan maksimum yang diizinkan untuk akun Amazon Web Services di mana pun Wilayah AWS. Jika permintaan melebihi tingkat maksimum, maka Anda akan menerima kesalahan dan panggilan lebih lanjut sementara akan diperlambat untuk akun Amazon Web Services Anda. Selama periode pelambatan, koneksi Anda melambat dan mungkin gagal. CodeCommit
Kemungkinan perbaikan: Ambil langkah-langkah untuk mengurangi jumlah koneksi atau panggilan ke CodeCommit atau untuk menyebarkan permintaan. Beberapa pendekatan yang bisa dipertimbangkan:
-
Menerapkan jitter dalam permintaan, terutama dalam permintaan polling berkala
Jika Anda memiliki aplikasi yang melakukan polling CodeCommit secara berkala dan aplikasi ini berjalan di beberapa instans Amazon EC2, perkenalkan jitter (jumlah penundaan acak) sehingga instans Amazon EC2 yang berbeda tidak melakukan polling pada detik yang sama. Kami merekomendasikan nomor acak dari 0 sampai 59 detik untuk secara merata mendistribusikan mekanisme pengumpulan dalam jangka waktu satu menit.
-
Gunakan arsitektur berbasis peristiwa daripada polling
Daripada pengumpulan, gunakan arsitektur berbasis peristiwa sehingga panggilan hanya dibuat ketika suatu peristiwa terjadi. Pertimbangkan untuk menggunakan CloudWatch notifikasi Acara untuk AWS CodeCommit acara untuk memicu alur kerja Anda.
-
Terapkan percobaan ulang kesalahan dan backoff eksponensial untuk API dan tindakan Git otomatis
Percobaan ulang kesalahan dan backoff eksponensial dapat membantu membatasi laju panggilan. Masing-masing SDK AWS menerapkan logika coba ulang otomatis dan algoritme backoff eksponensial. Untuk push Git otomatis dan pull Git, Anda mungkin perlu menerapkan logika percobaan ulang Anda sendiri. Untuk informasi selengkapnya, lihat Percobaan Ulang Kesalahan dan Backoff Eksponensial di. AWS
-
Minta CodeCommit kenaikan kuota layanan di Pusat AWS Dukungan
Untuk menerima peningkatan kuota layanan, Anda harus mengonfirmasi bahwa Anda telah mengikuti saran yang diberikan di sini, termasuk penerapan pengulangan kesalahan atau metode backoff eksponensial. Dalam permintaan Anda, Anda juga harus memberikan akun Amazon Web Services Wilayah AWS, dan jangka waktu yang dipengaruhi oleh masalah pelambatan.