为什么HBase Rest End Point无法在AWS上启动?

时间:2016-08-01 08:45:02

标签: amazon-web-services hbase emr amazon-emr bigdata

我在使用Amazon Linux Image运行3 m3.xlarge实例的Amazon EMR群集上设置了HBase Schema。当我发出命令' hbase rest start'它没有启动,我得到以下输出。我能做什么? 输出:

[hadoop@ip-10-81-13-20 ~]$ hbase rest start
2016-08-01 08:29:27,863 INFO  [main] util.VersionInfo: HBase 1.2.1
2016-08-01 08:29:27,863 INFO  [main] util.VersionInfo: Source code repository file:///workspace/workspace/bigtop.release-rpm-4.7.2/build/hbase/rpm/BUILD/hbase-1.2.1 revision=Unknown
2016-08-01 08:29:27,863 INFO  [main] util.VersionInfo: Compiled by ec2-user on Fri Jul  8 02:16:27 UTC 2016
2016-08-01 08:29:27,863 INFO  [main] util.VersionInfo: From source with checksum b1b31eefd0314d3ed5fa7036ed0201e9
2016-08-01 08:29:28,870 INFO  [main] impl.MetricsConfig: loaded properties from hadoop-metrics2-hbase.properties
2016-08-01 08:29:28,967 INFO  [main] impl.MetricsSystemImpl: Scheduled snapshot period at 10 second(s).
2016-08-01 08:29:28,967 INFO  [main] impl.MetricsSystemImpl: HBase metrics system started
2016-08-01 08:29:29,034 INFO  [main] mortbay.log: Logging to org.slf4j.impl.Log4jLoggerAdapter(org.mortbay.log) via org.mortbay.log.Slf4jLog
2016-08-01 08:29:29,081 INFO  [main] http.HttpRequestLog: Http request log for http.requests.rest is not defined
2016-08-01 08:29:29,108 INFO  [main] http.HttpServer: Added global filter 'safety' (class=org.apache.hadoop.hbase.http.HttpServer$QuotingInputFilter)
2016-08-01 08:29:29,109 INFO  [main] http.HttpServer: Added global filter 'clickjackingprevention' (class=org.apache.hadoop.hbase.http.ClickjackingPreventionFilter)
2016-08-01 08:29:29,114 INFO  [main] http.HttpServer: Added filter static_user_filter (class=org.apache.hadoop.hbase.http.lib.StaticUserWebFilter$StaticUserFilter) to context rest
2016-08-01 08:29:29,114 INFO  [main] http.HttpServer: Added filter static_user_filter (class=org.apache.hadoop.hbase.http.lib.StaticUserWebFilter$StaticUserFilter) to context static
2016-08-01 08:29:29,114 INFO  [main] http.HttpServer: Added filter static_user_filter (class=org.apache.hadoop.hbase.http.lib.StaticUserWebFilter$StaticUserFilter) to context logs
2016-08-01 08:29:29,129 INFO  [main] http.HttpServer: HttpServer.start() threw a non Bind IOException
java.net.BindException: Port in use: 0.0.0.0:8085
    at org.apache.hadoop.hbase.http.HttpServer.openListeners(HttpServer.java:1017)
    at org.apache.hadoop.hbase.http.HttpServer.start(HttpServer.java:953)
    at org.apache.hadoop.hbase.http.InfoServer.start(InfoServer.java:91)
    at org.apache.hadoop.hbase.rest.RESTServer.main(RESTServer.java:248)
Caused by: java.net.BindException: Address already in use
    at sun.nio.ch.Net.bind0(Native Method)
    at sun.nio.ch.Net.bind(Net.java:463)
    at sun.nio.ch.Net.bind(Net.java:455)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
    at org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:216)
    at org.apache.hadoop.hbase.http.HttpServer.openListeners(HttpServer.java:1012)
    ... 3 more
Exception in thread "main" java.net.BindException: Port in use: 0.0.0.0:8085
    at org.apache.hadoop.hbase.http.HttpServer.openListeners(HttpServer.java:1017)
    at org.apache.hadoop.hbase.http.HttpServer.start(HttpServer.java:953)
    at org.apache.hadoop.hbase.http.InfoServer.start(InfoServer.java:91)
    at org.apache.hadoop.hbase.rest.RESTServer.main(RESTServer.java:248)
Caused by: java.net.BindException: Address already in use
    at sun.nio.ch.Net.bind0(Native Method)
    at sun.nio.ch.Net.bind(Net.java:463)
    at sun.nio.ch.Net.bind(Net.java:455)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
    at org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:216)
    at org.apache.hadoop.hbase.http.HttpServer.openListeners(HttpServer.java:1012)
    ... 3 more
2016-08-01 08:29:29,133 INFO  [Shutdown] mortbay.log: Shutdown hook executing
2016-08-01 08:29:29,133 INFO  [Shutdown] mortbay.log: Shutdown hook complete

1 个答案:

答案 0 :(得分:0)

(回答我自己的问题) AWS EMR for HBase端口的默认值与常规HBase不同。从here我们可以说HBase的其余端口是8070,UI的端口是8085.可以使用它们。 也就是说,总是有-p选项。使用hbase rest start -p portnumber在您选择的端口号上启动HBase rest服务器。

可能有另一个使用8080端口的进程,这就是为什么你不能仅使用hbase rest start启动HBase服务器。