2016-01-08 13 views
5

Podczas próby połączenia się z bazą danych za pomocą tego kodu Pythona, aby przetestować połączenie.Wyjątek w Boto3 - botocore.exceptions.EndpointConnectionError

import boto3 
s3 = boto3.resource('s3') 

for b in s3.buckets.all(): 
    print b.name 

Dostaję ten błąd na mnie.

Traceback (most recent call last): 
    File "boto3_test.py", line 4, in <module> 
    for b in s3.buckets.all(): 
    File "/usr/local/lib/python2.7/dist-packages/boto3/resources/collection.py", line 83, in __iter__ 
    for page in self.pages(): 
    File "/usr/local/lib/python2.7/dist-packages/boto3/resources/collection.py", line 161, in pages 
    pages = [getattr(client, self._py_operation_name)(**params)] 
    File "/usr/local/lib/python2.7/dist-packages/botocore/client.py", line 310, in _api_call 
    return self._make_api_call(operation_name, kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/client.py", line 385, in _make_api_call 
    operation_model, request_dict) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/endpoint.py", line 111, in make_request 
    return self._send_request(request_dict, operation_model) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/endpoint.py", line 140, in _send_request 
    success_response, exception): 
    File "/usr/local/lib/python2.7/dist-packages/botocore/endpoint.py", line 213, in _needs_retry 
    caught_exception=caught_exception) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/hooks.py", line 226, in emit 
    return self._emit(event_name, kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/hooks.py", line 209, in _emit 
    response = handler(**kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/retryhandler.py", line 183, in __call__ 
    if self._checker(attempts, response, caught_exception): 
    File "/usr/local/lib/python2.7/dist-packages/botocore/retryhandler.py", line 250, in __call__ 
    caught_exception) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/retryhandler.py", line 273, in _should_retry 
    return self._checker(attempt_number, response, caught_exception) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/retryhandler.py", line 313, in __call__ 
    caught_exception) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/retryhandler.py", line 222, in __call__ 
    return self._check_caught_exception(attempt_number, caught_exception) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/retryhandler.py", line 355, in _check_caught_exception 
    raise caught_exception 
botocore.exceptions.EndpointConnectionError: Could not connect to the endpoint URL: "https://s3.us-east-5.amazonaws.com/" 

Dziwne jest to, że połączenie zostało pracujący wcześniej w ciągu dnia, a następnie w przestał działać samo zdarzyło mi się wczoraj w tym samym czasie, więc jestem przy założeniu, że jest to problem z konfiguracją sieci. This question jest jedyną, która jest podobna do rozwiązania opisywanego przez pierwotnego plakatu, aby wyzerować zarówno HTTP_PROXY, jak i HTTPS_PROXY, które próbowałem, ale nie zadziałało.

Odpowiedz

13

Skonfigurowano niepoprawnie env AWS. Sprawdź swój plik ~/.aws/config. Musisz skonfigurować go niepoprawnie jako us-east-5, który jest nieprawidłowym regionem. Zmień go na us-east-1. Lub ponownie uruchom komendę aws configure i podaj poprawny region.

+0

Dziękuję z jakiegoś powodu myślałem, że region oznacza strefę czasową zamiast centrum danych haha. –

+0

@helloV W moim przypadku mam poprawnie skonfigurowany region (ap-south-1) w pliku konfiguracyjnym, ale nadal pojawia się błąd. co jeszcze może być przyczyną? –

+0

@helloV 'botocore.exceptions.EndpointConnectionError: Nie można połączyć się z adresem URL punktu końcowego:" https://ec2.ap-south.amazonaws.com/ "" to jest komunikat o błędzie. –

Powiązane problemy