您的位置:首页 > 其它

《Red5 用户参考手册》之十四:Red5 核心技术第七章 管理

2013-03-07 08:32 561 查看
官方最新《Red5 用户参考手册》全套下载地址

JMX 类

Red5 实现包含以下类和一些其他的 MBean:

org.red5.server.jmx.JMXFactory - 提供对平台 MBeanServer 的访问,以及注册、注销和新的 MBean 实例的创建。

org.red5.server.jmx.JMXAgent - 提供 HTML 适配器以及 MBean 的注册。

org.red5.server.jmx.JMXUtil - 使用 ObjectName 或 MBean 实例的帮助方法。

Spring 配置

Spring 为 JMX 实现的配置允许你配置 MBean 注册的"域"和 HTML 适配器的监听端口。默认配置条目如下:

[html] view
plaincopyprint?

<!-- JMX server -->

<!-- JMX server -->

<bean id="jmxFactory" class="org.red5.server.jmx.JMXFactory">

<property name="domain" value="org.red5.server"/>

</bean>

<bean id="jmxAgent" class="org.red5.server.jmx.JMXAgent" init-method="init">

<!-- The RMI adapter allows remote connections to the MBeanServer -->

<property name="enableRmiAdapter" value="true"/>

<property name="rmiAdapterPort" value="${jmx.rmi.port.registry}"/>

<property name="rmiAdapterRemotePort" value="${jmx.rmi.port.remoteobjects}"/>

<property name="rmiAdapterHost" value="${jmx.rmi.host}"/>

<!-- SSL

To use jmx with ssl you must also supply the location of the keystore and its password

when starting the server with the following JVM options:

-Djavax.net.ssl.keyStore=keystore

-Djavax.net.ssl.keyStorePassword=password

-->

<property name="enableSsl" value="${jmx.rmi.ssl}"/>

<!-- Starts a registry if it doesnt exist -->

<property name="startRegistry" value="true"/>

<!-- Authentication -->

<property name="remoteAccessProperties" value="${red5.config_root}/access.properties"/>

<property name="remotePasswordProperties" value="${red5.config_root}/password.properties"/>

<property name="remoteSSLKeystore" value="${red5.config_root}/keystore.jmx"/>

<property name="remoteSSLKeystorePass" value="${rtmps.keystorepass}"/>

<!-- The HTML adapter allows connections to the MBeanServer via a web browser -->

<property name="enableHtmlAdapter" value="${jmx.http}"/>

<property name="htmlAdapterPort" value="${jmx.http.port}"/>

<!-- Mina offers its own Mbeans so you may integrate them here -->

<property name="enableMinaMonitor" value="true"/>

</bean>

关于 jmxAgent bean 的配置设置定位在 red5.properties 文件里:

[plain] view
plaincopyprint?

# JMX

jmx.rmi.port.registry=9999

jmx.rmi.port.remoteobjects=

jmx.rmi.host=0.0.0.0

jmx.rmi.ssl=false

jmx.http=false

jmx.http.port=8082

1. jmx.rmi.port.registry - RMI 注册的端口。RMI 适配器可能只会在 RMI 注册运行的时候用到。RMI 注册在默认情况下是启用的。

2. jmx.rmi.port.remoteobjects - RMI 远程对象的出口端口指定访问通过防火墙。默认端口产生于 RMI 栈。

3. jmx.rmi.host - 为 RMI 远程访问指定主机绑定到常用的公共地址。

4. jmx.rmi.ssl - 启用RMI/ JMX 的 SSL。SSL 默认是关闭的。

5. jmx.http - 启用 HTTP RMI 适配器。HTML 适配器默认情况下是禁用的,但它允许通过 web 浏览器轻松对 MBean 进行管理。

RMI 认证

RMI 认证默认情况下是配置好并启用的。这是为了确保来自匿名客户端的 RMI 连接。bean 的属性 remoteAccessProperties 和 remotePasswordProperties 设置 JMX 访问和密码的配置文件。access.properties 和 password.properties 配置文件定义 JMX 用户权限和明文密码。access.properties 包含一个用户和组权限配置,access.properties -

[plain] view
plaincopyprint?

red5user readwrite

red5user 是 JMX 用户名,readwrite 是通常默认设置的权限。 password.properties 包含有 JMX 用户和密码,password.properties -

[plain] view
plaincopyprint?

red5user changeme

red5user 是 JMX 用户名而 changeme 是 JMX 密码。

建议改变默认登录,以及启用 SSL 配置为登录明文。

JMX / RMI / SSL

当 RMI 启用 SSL时,bean 属性 remoteSSLKeystore 和 remoteSSLKeystorePass 需要加载 SSL 密钥和 SSL 请求的 keystore 密码。默认加载的 keystore 是 conf/keystore.jmx 文件,它也可以共享 keystore 给 RTMPS 连接。Java 属性 javax.net.ssl.keyStore 和 javax.net.ssl.keyStorePassword 是透明设置的。使用以下命令生成连接客户端和服务器的
keystore 和 truststore:

[plain] view
plaincopyprint?

ant truststore

这将生成一个 keystore.jmx、red5server.cer 和 truststore.jmx 证书。

jConsole / JMX 客户端

jConsole 是一个 JRE(1.5 以后) 附带的实用工具,通过它可以管理本地和远程的 JMX 实现。要启用它的话必须为 Java 的启动加上以下 VM 参数:

[plain] view
plaincopyprint?

-Dcom.sun.management.jmxremote

本地管理

设置好以上参数并初始化应用之后,你就可以在命令行启动 jConsole 了:

[plain] view
plaincopyprint?

jconsole

一个 Swing 应用会出现,选择要管理的实现(代理),本地管理的话只需选择 org.red5.server.Standalone。

远程管理

远程连接 jconsole / JMX 客户端的命令是:

[plain] view
plaincopyprint?

jconsole service:jmx:rmi://host:port/jndi/rmi://host:port/red5

SSL 远程管理

使用 jconsole / JMX 远程 ssl 连接的客户端需要预先加载生成的 truststore 证书。

设置 truststore 属性的命令是:

[plain] view
plaincopyprint?

jconsole -J-Djavax.net.ssl.trustStore=truststore.jmx \

-J-Djavax.net.ssl.trustStorePassword=password \

service:jmx:rmi://host:port/jndi/rmi://host:port/red5

链接

http://www.onjava.com/pub/a/onjava/2004/09/29/tigerjmx.html?page=1

http://java.sun.com/developer/JDCTechTips/2005/tt0315.html#2

原文链接:http://trac.red5.org/wiki/Documentation/UsersReferenceManual/Red5CoreTechnologies/07-Management
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐