AWS CLI, ikinci kez çalıştırıldığında “Kimlik bilgileri bulunamıyor” atar


9

Bir kullanıcı veri komut dosyası kullanarak başlangıçta AWS CLI (1.8.7) kullanarak bir EC2 örneği için S3 bazı dosyaları indirmeye çalışıyorum. Bu örnekte, uygun izinlere sahip bir IAM Rol ve Örnek Profili vardır. Bazen CLI, "Kimlik bilgileri bulunamıyor" hatasıyla başarısız olur. Sık sık olur (her seferinde değil), ancak her zaman çalışan ayrı bir S3 komutundan sonra olur . İşte betiğin çıktısı:

++ date +%r
03:24:10 AM
++ aws s3 cp s3://non-public-bucket-1/15mb-zip-file.zip ./15mb-zip-file.zip
Completed 1 of 1 part(s) with 1 file(s) remaining^Mdownload: s3://non-public-bucket-1/15mb-zip-file.zip to 15mb-zip-file.zip
++ date +%r
03:24:14 AM
++ unzip 15mb-zip-file.zip

# Snip

++ date +%r
03:26:01 AM
++ curl http://169.254.169.254/latest/meta-data/instance-id
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    10  100    10    0     0  13831      0 --:--:-- --:--:-- --:--:-- 10000
i-12345678++ date +%r
03:26:01 AM
++ aws s3 cp s3://non-public-bucket-2/my-small-text-file.json ./output.json
download failed: s3://non-public-bucket-2/my-small-text-file.json to output.json Unable to locate credentials

++ date +%r
03:26:34 AM

Buna neyin sebep olabileceği hakkında bir fikrin var mı?

Edit: Bu bir Amazon Linux sunucusudur.


Dosyaları getirmeye çalışmadan önce 10 saniyelik bir gecikme koymayı denediniz mi? Belki de komut ilk kez çalıştırıldığında IAM kimlik bilgileri henüz mevcut değildir.
EEAA

Ubuntu 16.04 LTS ile aynı sorunu yaşıyorum.
sj26

Yanıtlar:


3

Aynı sorunu yaşadım, hatta desteğe başvurdum ve bir cevap veremediler. Kimlik bilgilerini çevresel değişkenlere vermek aws s3 ...komutlar için çalışmaz . aws configureUtil'i kullanmanız veya bunun ~/.aws/configgibi bir dosya oluşturmanız gerekir :

[default]
aws_access_key_id=foo
aws_secret_access_key=bar
region=us-west-2

Lütfen http://docs.aws.amazon.com/cli/latest/topic/config-vars.html adresindeki AWS belgelerine başvurun.

Sadece Kullanıcı Verileri üzerinden EC2 lansmanında çevre dışa aktarma işlemlerini yürütmekle kalmayıp, aynı zamanda tamamen dağıtılmış çalışan bir örnek üzerinde komut satırından lansman yapmayı da bulamadım.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.