ConnectionError 连接到 IBM Analytics Engine
ConnectionError connecting to IBM Analytics Engine
我正在尝试将 python-ambariclient 与 IBM Analytics Engine 一起使用:
$ pip install --quiet python-ambariclient
然后
from future.standard_library import install_aliases
install_aliases()
from urllib.parse import urlparse
import json
vcap = json.load(open('vcap.json'))
USER = vcap['cluster']['user']
PASSWORD = vcap['cluster']['password']
AMBARI_URL = vcap['cluster']['service_endpoints']['ambari_console']
CLUSTER_ID = vcap['cluster']['cluster_id']
url = urlparse(AMBARI_URL)
HOST = url.hostname
PORT = url.port
from ambariclient.client import Ambari
ambari = Ambari(HOST, port=PORT, username=USER, password=PASSWORD)
for cluster in ambari.clusters:
print('> ' + cluster.cluster_name)
但是,我遇到了连接问题:
ConnectionError: HTTPConnectionPool(host='XXXXXX.bi.services.us-south.bluemix.net', port=9443): Max retries exceeded with url: /api/v1/clusters (Caused by ProtocolError('Connection aborted.', RemoteDisconnected('Remote end closed connection without response',)))
我缺少协议:
...
url = urlparse(AMBARI_URL)
HOST = url.hostname
PORT = url.port
PROTOCOL = url.scheme
...
ambari = Ambari(HOST, ... , protocol=PROTOCOL)
完整代码:
from future.standard_library import install_aliases
install_aliases()
from urllib.parse import urlparse
import json
vcap = json.load(open('vcap.json'))
USER = vcap['cluster']['user']
PASSWORD = vcap['cluster']['password']
AMBARI_URL = vcap['cluster']['service_endpoints']['ambari_console']
CLUSTER_ID = vcap['cluster']['cluster_id']
url = urlparse(AMBARI_URL)
HOST = url.hostname
PORT = url.port
PROTOCOL = url.scheme
from ambariclient.client import Ambari
ambari = Ambari(HOST, port=PORT, username=USER, password=PASSWORD, protocol=PROTOCOL)
for cluster in ambari.clusters:
print('> ' + cluster.cluster_name)
我正在尝试将 python-ambariclient 与 IBM Analytics Engine 一起使用:
$ pip install --quiet python-ambariclient
然后
from future.standard_library import install_aliases
install_aliases()
from urllib.parse import urlparse
import json
vcap = json.load(open('vcap.json'))
USER = vcap['cluster']['user']
PASSWORD = vcap['cluster']['password']
AMBARI_URL = vcap['cluster']['service_endpoints']['ambari_console']
CLUSTER_ID = vcap['cluster']['cluster_id']
url = urlparse(AMBARI_URL)
HOST = url.hostname
PORT = url.port
from ambariclient.client import Ambari
ambari = Ambari(HOST, port=PORT, username=USER, password=PASSWORD)
for cluster in ambari.clusters:
print('> ' + cluster.cluster_name)
但是,我遇到了连接问题:
ConnectionError: HTTPConnectionPool(host='XXXXXX.bi.services.us-south.bluemix.net', port=9443): Max retries exceeded with url: /api/v1/clusters (Caused by ProtocolError('Connection aborted.', RemoteDisconnected('Remote end closed connection without response',)))
我缺少协议:
...
url = urlparse(AMBARI_URL)
HOST = url.hostname
PORT = url.port
PROTOCOL = url.scheme
...
ambari = Ambari(HOST, ... , protocol=PROTOCOL)
完整代码:
from future.standard_library import install_aliases
install_aliases()
from urllib.parse import urlparse
import json
vcap = json.load(open('vcap.json'))
USER = vcap['cluster']['user']
PASSWORD = vcap['cluster']['password']
AMBARI_URL = vcap['cluster']['service_endpoints']['ambari_console']
CLUSTER_ID = vcap['cluster']['cluster_id']
url = urlparse(AMBARI_URL)
HOST = url.hostname
PORT = url.port
PROTOCOL = url.scheme
from ambariclient.client import Ambari
ambari = Ambari(HOST, port=PORT, username=USER, password=PASSWORD, protocol=PROTOCOL)
for cluster in ambari.clusters:
print('> ' + cluster.cluster_name)