ошибки таймаута в apt-get update / install

7

Я пытаюсь сделать apt-get update или apt-get install xyz , и я вижу таймауты вроде этого:

W: Failed to fetch http://eu-west-1.ec2.archive.ubuntu.com/ubuntu/dists/oneiric-updates/Release.gpg  
Unable to connect to eu-west-1.ec2.archive.ubuntu.com:http: [IP: 10.224.87.159 80]

Это временная проблема с Ubuntu, или, может быть, это что-то на моем конце. Ящик, к которому я обращаюсь, находится в EC2-EU.

Возможно, есть способ заставить установщика использовать серверы США, которые, похоже, работают?

    
задан David Parks 23.09.2011 в 20:21
источник

2 ответа

10

Во-первых, я предполагаю, что таймауты - это временная проблема с серверами обновлений Ubuntu в этом регионе.

Следует отметить, что EC2 Ubuntu AMI указывают на обновление серверов, размещенных в регионе EC2, который вы используете. Это быстро (~ 10 Мбит / с), и вы не платите за пропускную способность.

Сказав это, нет ничего принудительного в том, откуда вы получаете свои обновления. Вы можете изменить /etc/apt/sources.list , чтобы указать на разные серверы обновлений в другом регионе. Два предложения для обходного пути:

  • скопируйте sources.list из региона США на ваши хосты в ЕС.
  • добавьте следующую строку вверху вашего sources.list :
    deb mirror://mirrors.ubuntu.com/mirrors.txt oneiric main restricted universe multiverse

Что во втором решении, так это то, что этот файл "mirror.txt" динамически генерируется через GeoIP и всегда должен возвращать хорошее и относительно близкое зеркало. Это отлично для пользователей Ubuntu, которые часто путешествуют.

Опять же, учитывая особый характер архивных серверов на EC2, я обычно не делал этого в экземпляре облака. И я бы сделал только одно из этих обходных решений как временную меру. Проблема, где бы она ни была, является временной, и я ожидаю, что она будет исправлена ​​довольно быстро.

    
ответ дан Mark Russell 23.09.2011 в 21:14
источник
0

Я вижу подобное поведение с процессом cloud-init, когда я назначаю эластичный IP как часть метаданных для запуска экземпляра.

Странная вещь: я наблюдаю только одноразовые тайм-ауты в течение 30 секунд, пока работает облачный init. Я тестирую это с netcat, который запускается каждые 2 секунды как часть облачного init. Я получаю nc таймауты каждые несколько раз на некоторое время, а затем он стабилизируется. Кажется, что DNS работает каждый раз и иногда дает мне другой IP (как и ожидалось).

Я подозреваю что-то с эластичным назначением IP в инфраструктуре AWS, но я не уверен.

Другим интересным моментом является то, что http-соединения с локальным репо в моей учетной записи AWS работают нормально, и звонки на security.ubuntu.com (внешние по отношению к AWS, я считаю) тоже работают отлично. Пока я смог собрать около 15 образцов. У меня есть подтверждение, что когда netcat не архивирует.ubuntu.com, он преуспевает в другом месте

ex из моего скрипта в cloud-init:

us-east-1.ec2.archive.ubuntu.com is an alias for us-east-1.ec2.archive.ubuntu.com.s3.amazonaws.com.
us-east-1.ec2.archive.ubuntu.com.s3.amazonaws.com is an alias for s3-1-w.amazonaws.com.
s3-1-w.amazonaws.com has address 205.251.242.197
nc: connect to us-east-1.ec2.archive.ubuntu.com port 80 (tcp) timed out: Operation now in progress
Connection to {myawsserver}.ec2.{somedomain} 80 port [tcp/http] succeeded!
Connection to security.ubuntu.com 80 port [tcp/http] succeeded!
    
ответ дан Sellers 10.04.2014 в 00:19