在公司代理后面使用 Vagrant 的虚拟集群
Virtual Cluster with Vagrant behind corporate proxy
我正在按照以下说明使用 Vagrant 和 Cloudera Manager 在我的笔记本电脑上 运行 虚拟 Apache Hadoop 集群:
我使用的是 Dell Precision M4800 工作站笔记本电脑,内存为 16GB,运行 是 Ubuntu 16.04 LTS (Xenial Xerus) OS。
我成功地安装了 VirtualBox 和 Vagrant,但是我无法连接到集群的节点,我所做的是:
为 CLI 工具配置代理设置:
$export http_proxy="http://user:password@proxy_server:port"
$export https_proxy="https://user:password@proxy_server:port""
进入项目目录
更新每台活动计算机上的主机文件:
$vagrant hostmanager
根据 Vagrantfile 创建和配置客户机
$vagrant up
- 尝试浏览 http://vm-cluster-node1:7180 但出现错误“未找到服务器”
因为我在公司代理后面,所以我安装了 vagrant proxyconf 插件,如这里所建议的:How to use vagrant in a proxy environment?
然后我更改了我的 Vagrantfile 添加以下行:
if Vagrant.has_plugin?("vagrant-proxyconf")
config.proxy.http = "http://user:password@proxy_server:port"
config.proxy.https = "https://user:password@proxy_server:port"
config.proxy.no_proxy = "localhost,127.0.0.1"
end
现在的问题是,在执行 vagrant up 命令后,出现以下错误:
==> master: Failed to fetch http://archive.cloudera.com/cm5/ubuntu/precise/amd64/cm/pool/contrib/e/enterprise/cloudera-manager-daemons_5.8.2-1.cm582.p0.17~precise-cm5_all.deb Connection failed
==> master: Failed to fetch http://archive.cloudera.com/cm5/ubuntu/precise/amd64/cm/pool/contrib/o/oracle-j2sdk1.7/oracle-j2sdk1.7_1.7.0+update67-1_amd64.deb Connection failed
==> master: E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
==> master: cloudera-scm-server-db: unrecognized service
==> master: cloudera-scm-server-db: unrecognized service
==> master: cloudera-scm-server: unrecognized service
The SSH command responded with a non-zero exit status. Vagrant assumes
that this means the command failed. The output for this command should be
in the log above. Please read the output to determine what went wrong.
我做错了什么?
原来不是代理配置问题(那个配置是正确的)而是公司防火墙的问题,防火墙只允许下载某些包。
我在使用手机作为热点安装 Cloudera Manager 时遇到了 "solved" 问题。
在集群上安装 Cloudera Manager 和 Hadoop 堆栈后,您可以使用 Cloudera Manager Web GUI 并在企业环境中管理集群。
唯一的问题是时钟同步等一些重要的集群功能在公司环境中无法正常工作,特别是我发现我公司的防火墙阻止了 NTP(问题在这里描述得更好:https://askubuntu.com/questions/429306/ntpdate-no-server-suitable-for-synchronization-found)
我正在按照以下说明使用 Vagrant 和 Cloudera Manager 在我的笔记本电脑上 运行 虚拟 Apache Hadoop 集群:
我使用的是 Dell Precision M4800 工作站笔记本电脑,内存为 16GB,运行 是 Ubuntu 16.04 LTS (Xenial Xerus) OS。
我成功地安装了 VirtualBox 和 Vagrant,但是我无法连接到集群的节点,我所做的是:
为 CLI 工具配置代理设置:
$export http_proxy="http://user:password@proxy_server:port" $export https_proxy="https://user:password@proxy_server:port""
进入项目目录
更新每台活动计算机上的主机文件:
$vagrant hostmanager
根据 Vagrantfile 创建和配置客户机
$vagrant up
- 尝试浏览 http://vm-cluster-node1:7180 但出现错误“未找到服务器”
因为我在公司代理后面,所以我安装了 vagrant proxyconf 插件,如这里所建议的:How to use vagrant in a proxy environment?
然后我更改了我的 Vagrantfile 添加以下行:
if Vagrant.has_plugin?("vagrant-proxyconf")
config.proxy.http = "http://user:password@proxy_server:port"
config.proxy.https = "https://user:password@proxy_server:port"
config.proxy.no_proxy = "localhost,127.0.0.1"
end
现在的问题是,在执行 vagrant up 命令后,出现以下错误:
==> master: Failed to fetch http://archive.cloudera.com/cm5/ubuntu/precise/amd64/cm/pool/contrib/e/enterprise/cloudera-manager-daemons_5.8.2-1.cm582.p0.17~precise-cm5_all.deb Connection failed
==> master: Failed to fetch http://archive.cloudera.com/cm5/ubuntu/precise/amd64/cm/pool/contrib/o/oracle-j2sdk1.7/oracle-j2sdk1.7_1.7.0+update67-1_amd64.deb Connection failed
==> master: E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
==> master: cloudera-scm-server-db: unrecognized service
==> master: cloudera-scm-server-db: unrecognized service
==> master: cloudera-scm-server: unrecognized service
The SSH command responded with a non-zero exit status. Vagrant assumes
that this means the command failed. The output for this command should be
in the log above. Please read the output to determine what went wrong.
我做错了什么?
原来不是代理配置问题(那个配置是正确的)而是公司防火墙的问题,防火墙只允许下载某些包。
我在使用手机作为热点安装 Cloudera Manager 时遇到了 "solved" 问题。
在集群上安装 Cloudera Manager 和 Hadoop 堆栈后,您可以使用 Cloudera Manager Web GUI 并在企业环境中管理集群。
唯一的问题是时钟同步等一些重要的集群功能在公司环境中无法正常工作,特别是我发现我公司的防火墙阻止了 NTP(问题在这里描述得更好:https://askubuntu.com/questions/429306/ntpdate-no-server-suitable-for-synchronization-found)