add http api for cluster management, #21172

* reference akka/akka-cluster-management in cluster docs
* deprecate the command line tool, including migration note
* cleanup old migration guides
* remove YourKit as sponsor, since we pay license
This commit is contained in:
Patrik Nordwall 2016-12-13 10:54:41 +01:00 committed by Johan "Party Cannon" Andrén
parent f6a1fba824
commit db95b7ff96
8 changed files with 75 additions and 1100 deletions

View file

@ -85,7 +85,7 @@ seed nodes in the existing cluster.
If you don't configure seed nodes you need to join the cluster programmatically or manually.
Manual joining can be performed by using ref:`cluster_jmx_scala` or :ref:`cluster_command_line_scala`.
Manual joining can be performed by using ref:`cluster_jmx_scala` or :ref:`cluster_http_scala`.
Joining programmatically can be performed with ``Cluster(system).join``. Unsuccessful join attempts are
automatically retried after the time period defined in configuration property ``retry-unsuccessful-join-after``.
Retries can be disabled by setting the property to ``off``.
@ -129,7 +129,7 @@ leader is not allowed to perform its duties, such as changing status of
new joining members to 'Up'. The node must first become reachable again, or the
status of the unreachable member must be changed to 'Down'. Changing status to 'Down'
can be performed automatically or manually. By default it must be done manually, using
:ref:`cluster_jmx_scala` or :ref:`cluster_command_line_scala`.
:ref:`cluster_jmx_scala` or :ref:`cluster_http_scala`.
It can also be performed programmatically with ``Cluster(system).down(address)``.
@ -176,7 +176,7 @@ as unreachable and removed after the automatic or manual downing as described
above.
A more graceful exit can be performed if you tell the cluster that a node shall leave.
This can be performed using :ref:`cluster_jmx_scala` or :ref:`cluster_command_line_scala`.
This can be performed using :ref:`cluster_jmx_scala` or :ref:`cluster_http_scala`.
It can also be performed programmatically with:
.. includecode:: code/docs/cluster/ClusterDocSpec.scala#leave
@ -690,10 +690,21 @@ the actor system for a specific role. This can also be used to grab the ``akka.a
.. includecode:: ../../../akka-samples/akka-sample-cluster-scala/src/multi-jvm/scala/sample/cluster/stats/StatsSampleSpec.scala#addresses
Management
^^^^^^^^^^
.. _cluster_http_scala:
HTTP
----
Information and management of the cluster is available with a HTTP API.
See documentation of `akka/akka-cluster-management <https://github.com/akka/akka-cluster-management>`_.
.. _cluster_jmx_scala:
JMX
^^^
---
Information and management of the cluster is available as JMX MBeans with the root name ``akka.Cluster``.
The JMX information can be displayed with an ordinary JMX console such as JConsole or JVisualVM.
@ -711,8 +722,13 @@ Member nodes are identified by their address, in format `akka.<protocol>://<acto
.. _cluster_command_line_scala:
Command Line Management
^^^^^^^^^^^^^^^^^^^^^^^
Command Line
------------
.. warning::
**Deprecation warning** - The command line script has been deprecated and is scheduled for removal
in the next major version. Use the :ref:`cluster_http_scala` API with `curl <https://curl.haxx.se/>`_
or similar instead.
The cluster can be managed with the script `bin/akka-cluster` provided in the
Akka distribution.
@ -743,13 +759,8 @@ Run it without parameters to see instructions about how to use the script::
To be able to use the script you must enable remote monitoring and management when starting the JVMs of the cluster nodes,
as described in `Monitoring and Management Using JMX Technology <http://docs.oracle.com/javase/6/docs/technotes/guides/management/agent.html>`_
Example of system properties to enable remote monitoring and management::
java -Dcom.sun.management.jmxremote.port=9999 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false
as described in `Monitoring and Management Using JMX Technology <http://docs.oracle.com/javase/8/docs/technotes/guides/management/agent.html>`_.
Make sure you understand the security implications of enabling remote monitoring and management.
.. _cluster_configuration_scala: