You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zookeeper.apache.org by rg...@apache.org on 2015/06/30 20:50:38 UTC
svn commit: r1688506 - in /zookeeper/branches/branch-3.5: CHANGES.txt
src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml
src/java/main/org/apache/zookeeper/server/admin/JettyAdminServer.java
Author: rgs
Date: Tue Jun 30 18:50:37 2015
New Revision: 1688506
URL: http://svn.apache.org/r1688506
Log:
ZOOKEEPER-2221: Zookeeper JettyAdminServer server should start on configured IP
(Surendra Singh Lilhore via rgs)
Modified:
zookeeper/branches/branch-3.5/CHANGES.txt
zookeeper/branches/branch-3.5/src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml
zookeeper/branches/branch-3.5/src/java/main/org/apache/zookeeper/server/admin/JettyAdminServer.java
Modified: zookeeper/branches/branch-3.5/CHANGES.txt
URL: http://svn.apache.org/viewvc/zookeeper/branches/branch-3.5/CHANGES.txt?rev=1688506&r1=1688505&r2=1688506&view=diff
==============================================================================
--- zookeeper/branches/branch-3.5/CHANGES.txt (original)
+++ zookeeper/branches/branch-3.5/CHANGES.txt Tue Jun 30 18:50:37 2015
@@ -137,6 +137,9 @@ BUGFIXES:
ZOOKEEPER-2193: reconfig command completes even if parameter is wrong obviously
(Yasuhito Fukuda via rgs)
+ ZOOKEEPER-2221: Zookeeper JettyAdminServer server should start on configured IP
+ (Surendra Singh Lilhore via rgs)
+
IMPROVEMENTS:
ZOOKEEPER-1660 Documentation for Dynamic Reconfiguration (Reed Wanderman-Milne via shralex)
Modified: zookeeper/branches/branch-3.5/src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml
URL: http://svn.apache.org/viewvc/zookeeper/branches/branch-3.5/src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml?rev=1688506&r1=1688505&r2=1688506&view=diff
==============================================================================
--- zookeeper/branches/branch-3.5/src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml (original)
+++ zookeeper/branches/branch-3.5/src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml Tue Jun 30 18:50:37 2015
@@ -1474,6 +1474,17 @@ server.3=zoo3:2888:3888</programlisting>
</varlistentry>
<varlistentry>
+ <term>admin.serverAddress</term>
+
+ <listitem>
+ <para>(Java system property: <emphasis
+ role="bold">zookeeper.admin.serverAddress</emphasis>)</para>
+
+ <para>The address the embedded Jetty server listens on. Defaults to 0.0.0.0.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
<term>admin.serverPort</term>
<listitem>
Modified: zookeeper/branches/branch-3.5/src/java/main/org/apache/zookeeper/server/admin/JettyAdminServer.java
URL: http://svn.apache.org/viewvc/zookeeper/branches/branch-3.5/src/java/main/org/apache/zookeeper/server/admin/JettyAdminServer.java?rev=1688506&r1=1688505&r2=1688506&view=diff
==============================================================================
--- zookeeper/branches/branch-3.5/src/java/main/org/apache/zookeeper/server/admin/JettyAdminServer.java (original)
+++ zookeeper/branches/branch-3.5/src/java/main/org/apache/zookeeper/server/admin/JettyAdminServer.java Tue Jun 30 18:50:37 2015
@@ -32,6 +32,7 @@ import javax.servlet.http.HttpServletRes
import org.apache.zookeeper.server.ZooKeeperServer;
import org.mortbay.jetty.Server;
+import org.mortbay.jetty.nio.SelectChannelConnector;
import org.mortbay.jetty.servlet.Context;
import org.mortbay.jetty.servlet.ServletHolder;
import org.slf4j.Logger;
@@ -54,26 +55,36 @@ public class JettyAdminServer implements
static final Logger LOG = LoggerFactory.getLogger(JettyAdminServer.class);
public static final int DEFAULT_PORT = 8080;
+ private static final String DEFAULT_ADDRESS = "0.0.0.0";
public static final String DEFAULT_COMMAND_URL = "/commands";
private final Server server;
private ZooKeeperServer zkServer;
private final int port;
+ private String address;
private final String commandUrl;
public JettyAdminServer() throws AdminServerException {
- this(Integer.getInteger("zookeeper.admin.serverPort", DEFAULT_PORT),
- System.getProperty("zookeeper.admin.commandURL", DEFAULT_COMMAND_URL));
+ this(System.getProperty("zookeeper.admin.serverAddress",
+ DEFAULT_ADDRESS), Integer.getInteger(
+ "zookeeper.admin.serverPort", DEFAULT_PORT), System
+ .getProperty("zookeeper.admin.commandURL", DEFAULT_COMMAND_URL));
}
- public JettyAdminServer(int port, String commandUrl) {
+ public JettyAdminServer(String address, int port, String commandUrl) {
this.port = port;
this.commandUrl = commandUrl;
+ this.address = address;
- server = new Server(port);
+ server = new Server();
+ SelectChannelConnector connector = new SelectChannelConnector();
+ connector.setHost(address);
+ connector.setPort(port);
+ server.addConnector(connector);
Context context = new Context(server, "/");
server.setHandler(context);
- context.addServlet(new ServletHolder(new CommandServlet()), commandUrl + "/*");
+ context.addServlet(new ServletHolder(new CommandServlet()), commandUrl
+ + "/*");
}
/**
@@ -86,12 +97,13 @@ public class JettyAdminServer implements
} catch (Exception e) {
// Server.start() only throws Exception, so let's at least wrap it
// in an identifiable subclass
- throw new AdminServerException(
- String.format("Problem starting AdminServer on port %d, command URL %s",
- port, commandUrl), e);
+ throw new AdminServerException(String.format(
+ "Problem starting AdminServer on address %s,"
+ + " port %d and command URL %s", address, port,
+ commandUrl), e);
}
- LOG.info(String.format("Started AdminServer on port %d, command URL %s",
- port, commandUrl));
+ LOG.info(String.format("Started AdminServer on address %s, port %d"
+ + " and command URL %s", address, port, commandUrl));
}
/**
@@ -106,9 +118,10 @@ public class JettyAdminServer implements
try {
server.stop();
} catch (Exception e) {
- throw new AdminServerException(
- String.format("Problem stopping AdminServer on port %d, command URL %s",
- port, commandUrl), e);
+ throw new AdminServerException(String.format(
+ "Problem stopping AdminServer on address %s,"
+ + " port %d and command URL %s", address, port, commandUrl),
+ e);
}
}