S3 Hatası: İstek zamanı ile şimdiki zaman arasındaki fark çok büyük


119

Ben hata var isteği zaman ve şimdiki zaman arasındaki fark çok büyük olduğunda çağrı yöntemi amazons3.ListObjects

ListObjectsRequest request = new ListObjectsRequest() {
    BucketName = BucketName, Prefix = fullKey 
}; 
using (ListObjectsResponse response = s3Client.ListObjects(request))
{
    bool result = response.S3Objects.Count > 0;

    return result;
}

Ne olabilir?

Yanıtlar:


160

Yerel kutunuzdaki saat, şu anki saatle senkronize değil. Sistem saatinizi senkronize edin ve sorun ortadan kalkacaktır.


Doğru. Hata mesajından anlaşıldı. Yerel saati uzak bir makinede veya bulutta nasıl bulacağınızı merak ediyorsanız, geçerli saati bulmak için interneti kullanın. timeanddate.com :)
user_v

1
Ben de aynı hatayla karşılaştım. Lütfen bana senkronizasyonun nasıl gerçekleştirileceğini söyle
Stas

38
Hata mesajlarının daha doğrudan olduğu günü hayal ediyorum, "Sunucu saatiniz yanlış ayarlanmış" benim için sorun olmaz.
adamdport

2
Saat dilimi ayarı önemli olmamalıdır. Önemli olan şu anda ayarlanmış olan zamanın doğruluğu.
Mark At Ramp51

1
Avustralya'da gün ışığından tasarruf etmeye başladık (1 saat ileride) ve şimdi bu hata atılıyor. Saatim doğru. AWS'de bir hata gibi görünüyor.
Luke

74

Vagrant kullananlar için a follow vagrant haltby vagrant upbenim için çalıştı.


62

Saat senkronize değil.

Tekrar çalışmasını sağlamak için bu yazıdaki adımları takip ettim , ancak aşağıdaki komutu da çalıştırmam gerekiyordu.

sudo ntpdate ntp.ubuntu.com
sudo apt-get install ntp

Herhangi bir zamanda NTP soketinin hala kullanımda olduğunu belirten bir mesaj alırsanız, onu durdurun sudo /etc/init.d/ntp stopve komutunuzu yeniden çalıştırın.


3
Teşekkürler! Bir cazibe gibi çalıştı. :)
NightMICU

Yaşasın, bu sorunumu çözdü. Eğer yoksa apt-get , kullanım yum yerine: sudo yum -y ntp yüklemek
Shougo Makishima

1
Çalışmış. sudo ntpdate ntp.ubuntu.comYine de sadece sunucumda çalıştırmak zorunda kaldım .
spnkr

27

Aynı hatayı aldım ve Mac için Docker kullanıyorum. Docker'ı yeniden başlatmak benim için çalıştı.


15

Herhangi birinin bunu Laravel ve Homestead kullanırken bulması durumunda,

homestead halt

bunu takiben

homestead up

Ve tekrar gitmekte iyisin.


15

Windows'ta Docker kullananlar için Docker Engine'i Setting-> Reset-> Restart Docker'da yeniden başlatmayı deneyin.


Bu bir cevap değil. Muhtemelen bir yorum.
hB0

8

Diğerlerinin de söylediği gibi, yerel saatiniz AWS ile senkronize değil. Doğrudan NTP kullanarak Amazon'un sunucularıyla senkronize olmasını sağlayabilirsiniz, böylece şimdi veya gelecekte saat kayması konusunda endişelenmenize gerek kalmaz .

Not: Aşağıdaki talimatlar * nix kullanıcıları içindir. Bunu Windows'ta nasıl yapabileceğinize dair bir yorum ekledim, ancak Windows olmayan bir kullanıcı olarak bunların doğruluğunu onaylayamıyorum.

  1. NTP'yi yüklemek için, dağıtımınıza bağlı olarak aşağıdakilerden birini seçmeniz yeterlidir:

    apt-get install ntp
    

    veya

    yum install ntp 
    

    vb.

  2. NTP'yi amazon sunucularını kullanacak şekilde yapılandırın, örneğin:

    vim /etc/ntp.conf
    

    Ve içinde, varsayılan sunucuları yorumlayın ve şunları ekleyin:

    server 0.amazon.pool.ntp.org iburst
    server 1.amazon.pool.ntp.org iburst
    server 2.amazon.pool.ntp.org iburst
    server 3.amazon.pool.ntp.org iburst
    
  3. Ve sonra ntp hizmetini yeniden başlatın:

    sudo service ntp restart
    

Kaynak: https://www.allcloud.io/how-to/how-to-fix-amazon-s3-requesttimetooskewed/

Ve zamanınızı NTP ile senkronize tutmakla ilgili daha genel bir makale: https://www.digitalocean.com/community/tutorials/how-to-set-up-time-synchronization-on-ubuntu-12-04


C: \ Kullanıcılar \ Kullanıcı> apt-get install ntp 'apt-get' dahili veya harici bir komut, çalıştırılabilir program veya toplu iş dosyası olarak tanınmaz.
st78

apt-getbelirli linux dağıtımları için bir paket kurucusudur. Windows için, NTP ile senkronize etmenin en iyi yolunu bulmak için çevrimiçi arama yapabilirsiniz. İşte win10 için bulduğum bir referans: tenforums.com/tutorials/… ve işte Windows Server için bir referans : support.microsoft.com/en-us/help/816042/…
Kyle Chadha


4

Windows 10 için localhost'ta bu sorun varsa

Saati otomatik olarak AÇIK ayarla ve saat dilimini otomatik olarak AÇIK ayarla bu sorunumu çöz.

görüntü açıklamasını buraya girin


3

Bu, görevin dışında istek nesnesinin oluşturulması ve görev içindeki AWS'ye yapılan gerçek çağrı ile zaman uyumsuz / beklemenin kullanılmasından da kaynaklanabilir. Çalışan çok sayıda görev varsa ve görev zamanında zamanlanmadıysa veya AWS'ye yapılan gerçek çağrıyı geciktiren başka bir işlem varsa, bu istisna atılabilir.



1

Bir sanal kutu kullanıyorsanız, sanal makineye geçen zaman, gerçek makinenin zamanıyla senkronize edilir. Sadece zamanı sanal makineye sabitleyin, sorunu çözmez.


1

Bu hatayı aldım çünkü yerel makinemin saati ve saat dilimi yanlış ayarlandı. Onları doğru zamana ve zaman dilimine değiştirmek benim için çalıştı.


1

Windows'ta bu hatayı alırsanız , sorununuzu çözmek için aşağıdaki adımları izleyin. Yerel saat ayarınızı değiştirin:
Adım 1: Tarih ve saat ayarlarını değiştir seçeneğine tıklayın
2. Adım: Açılan Tarih ve Saat penceresinden İnternet Saati Sekmesi
3. adıma tıklayın : sonraki Ayarları Değiştir
adım 4'e tıklayın : Sunucu açılır menüsünden time.nist.gov'u seçin veya bu web sitesini kontrol edin
adım 5: Tamam'a tıklayın

Konsolunuzu yeniden başlatın ve kontrol edin. İşe yarıyor...


0

Ntp'yi kullanmak, Linux tabanlı sunucunuzun tüm sürümlerinde çalışmayabilir (örneğin, artık desteklenmeyen eski bir Ubuntu sunucu sürümü, zaten kurulu değilse, ntp'yi indirmenizi engeller).

Durumunuz buysa, Linux sanal makineniz için bağımsız saat dilimleri ayarlayabilirsiniz: https://community.rackspace.com/products/f/25/t/650

Bunu yaptıktan sonra saati / tarihi yeniden ayarlamanız gerekebilir. Bunu yapmak için talimatlar şu makalededir: http://codeghar.wordpress.com/2007/12/06/manage-time-in-ubuntu-through-command-line


0

2016'da ve İstanbul'daysanız, Türkiye'nin kış saati standartlarına geçmemeye karar vermesi garip bir durumdur, yerel saat diliminizi Moskova'ya ayarlayın ve makinenizi yeniden başlatın.


Bunun bir yorum olması gerektiğini düşünüyorum.
BlackVegetable

@BlackVegetable Ben de bir yorum olabileceğini düşündüm ama mesele şu ki, bahsettiğim bir durumdaysanız ve kabul edilen cevap dahilinde talimatları izleyecekseniz çözümsüz kalacaktır; bu yüzden bu, alternatif bir çözüm sağlayan bir cevaptır.
Ömer Faruk Almalı

0

Mac için Docker Beta kanal 1.13.1-beta42 kullanarak MacOS üzerinde Jet (Codeship) ve Terraform çalıştırırken bu sorunla karşılaştım.

Failed to read state: Error reloading remote state: RequestTimeTooSkewed: The difference between the request time and the current time is too large.
status code: 403, request id: 9D32BA2A5360FC18

Bu, Docker yeniden başlatılarak çözüldü.


0

Bu hatayı yeni almaya başladım ve saatimi senkronize etmek yardımcı olmuyor. (AWS sunucuları dahil bulabildiğim her zaman sunucuyla senkronize etmek için 2 saat harcadım, ancak hiçbir şey fark etmez.)

Tam olarak aynı şey bir yıl önce 31 Aralık 2017'de olmaya başladı. Bu durumda, sistemimi yeniden başlatmak ve sunucumu (aws java sdk kullanan) yeniden oluşturmak sorunu çözdü. Neden bilmiyorum AWS'nin bazı yıl sonu saat dilimine özgü olduğunu varsaydım. Ben bunları yaparken AWS zaman sunucularının kendilerini düzeltmesi de mümkündür. Bu hipotezi test etmenin bir yolu yok.

Şimdi, aynı şey 30 Aralık 2018'de birdenbire olmaya başladı. Yıl sonunda doğru değil ama şüpheli görünecek kadar yakın. (Bu tarihler dışında bu hatayı hiç almadım.) Yeniden başlatma ve yeniden oluşturma bu sefer yardımcı olmuyor.

Bu kutudaki geliştirme ortamım Parallels altındaki Windows 10'dur. Sistemimdeki başka hiçbir şey değişmedi - önceki Parallels anlık görüntülerine geri dönerek iki kez kontrol ettiğim için. Hem ana bilgisayarım MacOS hem de sanal Windows 10'daki saatler doğru.

Bir AWS hatasından şüpheleniyorum.

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.