jboss CLI 命令行接口学习(适用JBOSS EAP 6.2+)
一、确认CLI所使用的端口
以domain模式为例,查看domain controller(也就是master主机)上的host.xml
<management-interfaces>
<native-interface security-realm="ManagementRealm">
<socket interface="management" port="${jboss.management.native.port:9999}"/>
</native-interface>
<http-interface security-realm="ManagementRealm">
<socket interface="management" port="${jboss.management.http.port:9990}"/>
</http-interface>
</management-interfaces>
其中native.port对应的端口9999端口,即为CLI连接所需的端口
二、通过CLI连接到Jboss
$JBOSS_HOME/bin/jboss-cli.sh
connect 192.168.1.2:9999 (大家根据实际情况,把这里的IP换成master主机对应的ip和端口)
如果是连接远程主机,接下来会提示输入用户名/密码(即:jboss管理控制台的用户名、密码)
[domain@172.xxx.xxx.xxx:9999 /] (如果能看到这个,说明连接成功)
三、启动/停止指定Group下的所有Server
保持连接状态,直接输入
/server-group=group8080:stop-servers
如果返回
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined
}
表示已经成功将组group8080下的所有server停止。类似的,如果要启动该组下的所有server,把stop-servers,换成start-servers即可
四、启动/停止某个特定的Server
/host=master/server-config=server8080:stop
如果返回
{
"outcome" => "success",
"result" => "STOPPING"
}
表示master这台host上的server8080已经被停止,这里的master和server8080,对应于domain中的具体host名称及host下的server名称,为了便于理解,直接贴一张图:

五、查看某个Server的状态
ls /host=master/server-config=server8080
返回结果:
interface auto-start=true priority=undefined
jvm cpu-affinity=undefined socket-binding-group=ha-sockets
path group=group8080 socket-binding-port-offset=0
system-property name=server8080 status=STOPPED
其中status=STOPPED表示该Server已停止
六、部署应用/删除已经部署的应用
standalone 模式:
部署应用
deploy /<PATH>/TestApp.war
删除应用
undeploy TestApp.war
部署应用(但不启用)
deploy /<PATH>/TestApp.war --disabled
将已部署但是未启用的应用,变成enable状态
deploy --name=TestApp.war
删除应用(但是保留文件),相当于disable
undeploy TestApp.war --keep-content
domain模式:
部署应用到所有server group
deploy /<PATH>/TestApp.war --all-server-groups
删除应用
undeploy TestApp.war --all-relevant-server-groups
从某一个group上删除应用(但保留文件),相当于从某一个group上disable该应用
undeploy TestApp.war --server-groups=main-server-group --keep-content
将应用assign到某个group上
deploy /<PATH>/TestApp.war --server-groups=main-server-group
仅部署但是不启用
deploy /<PATH>/TestApp.war --disabled
七、其它命令
help --commands
还有很多其它命令就不逐一讲解了,大家可以用help --commands去查看,下面这些都是可用的命令
batch data-source history patch rollout-plan xa-data-source
cd deploy if pwd run-batch
clear deployment-info jdbc-driver-info quit shutdown
command deployment-overlay jms-queue read-attribute try
connect echo-dmr jms-topic read-operation undeploy
connection-factory help ls reload version
如果某个命令不知道用法,比如:deploy 不知道怎么用,可以用 deploy --help 查看详细用法
最后,反问一个问题:既然jboss提供了web端的管理控制台,运维人员可以通过图形界面操作,学习CLI这东西有什么用 ?
答案:在大型集群(节点数>50)的部署环境中,假设新增一个数据源,想让新的数据源生效,必须重启所有相应group下的server,一个个手动点击效率太低了。上节我们学习如何用代码动态创建JNDI数据源,再加上本节的知识,完全可以写一个管理程序,让代码自动添加数据源,然后调用CLI shell命令,自动重启server,这样运维起来就方便多了,最终可以达到一键配置、一键部署的效果。
jboss CLI 命令行接口学习(适用JBOSS EAP 6.2+)的更多相关文章
- JBoss CLI
转自http://www.cnblogs.com/inteliot/archive/2012/08/05/2623719.html 为 了便于维护和管理, JBoss AS 7 提供了命令行接口( ...
- JBoss 系列九十六:JBoss MSC - 简介及一个简单演示样例
什么是 JBoss MSC JBoss MSC 即 JBoss Modular Service Container,是第三代 JBoss 产品 JBoss 7和WildFfly的内核,JBoss MS ...
- JBOSS和EJB学习一
1.使用软件 IDE:Eclipse4.3(开普勒) EE版本 服务器:jboss EAP 6.2 eclipse-jboss plugin:jbosstools-Update-4.1.2.Final ...
- JBoss、Tomcat、JBoss EAP、JBoss AS、wildfly,JBoss EAP安装部署,JBoss各个版本下载,JBoss允许远程访问
感谢: https://www.cnblogs.com/invlong/p/5983334.html https://blog.csdn.net/mooncarp/article/details/78 ...
- php cli模式学习(PHP命令行模式)
http://www.jb51.net/article/37796.htm php_cli模式简介 php-cli是php Command Line Interface的简称,如同它名字的意思,就是 ...
- [redis] redis cli的学习记录
文档: https://redis.io/topics/rediscli help命令: The command can be used in two forms: . help @<categ ...
- java:如何让程序按要求自行重启?
正文开始前的废话: 这里的程序即包括b/s的web application,也包括standalone的类c/s的java application. 为什么要自我重启? 场景1:分布式环境中, ...
- JBOSS EAP 6 系列四 EJB实现——调用(贯穿始终的模块)
本文主要介绍在JBOSS EAP 6.2(或者JBOSS AS7)中模块是如何贯穿EJB实现的始终.延续上一博文<认识模块的使用>的话题继续聊JBOSS做为模块申明式容器的这一特性在EJB ...
- 配置jboss EAP 6.4 数据库连接超时时间
Environment Red Hat JBoss Enterprise Application Platform (EAP) 6.x 7.x Issue Server throws followin ...
随机推荐
- yii2搭建完美后台并实现rbac权限控制案例教程
作者:白狼 出处:www.manks.top/article/yii2_frame_rbac_template 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连 ...
- openstack-kilo--issue(九) heat stacks topology中图形无法正常显示
======声明======= 欢迎转载:转载请注明出处 http://www.cnblogs.com/horizonli/p/6186581.html ==========环境=========== ...
- Linux 多线程编程
概念 原来指向main()的线程叫做主线程(main thread) 使用pthread_create()创建出来的线程,叫做子线程(child thread) 主/子线程只有在创建时才有区别, 创建 ...
- java 判断两个时间相差的天数
1.实现目标 输入:两个日期 输出:两个日期相差的天数 2.代码实现 方法1: 通过Calendar类的日期比较.注意:这里需要考虑一下: 日期是跨年份的,如一个是2012年,一个是2015年的 ...
- Linux rpmbuild命令
一.简介 rpmbuild命令用于创建软件的二进制包和源代码包. 二.选项 参考:http://blog.sina.com.cn/s/blog_4ba5b45e0102e5r2.html http:/ ...
- Spring-data-jpa详解,全方位介绍。
本篇进行Spring-data-jpa的介绍,几乎涵盖该框架的所有方面,在日常的开发当中,基本上能满足所有需求.这里不讲解JPA和Spring-data-jpa单独使用,所有的内容都是在和Spring ...
- 解决SQL死循环问题
解决SQL死循环问题 当我们在执行在使用for循环的时候,往往会遇到死循环的问题,我们可以通过SSH来连接数据库,并结束其进程:代码如下: Su - db2inst1 Db2 connect to s ...
- LNMP源码安装
1. mysql安装 # Preconfiguration setup shell > groupadd mysql shell > useradd -r -g mysql -s /bin ...
- MMORPG大型游戏设计与开发(客户端架构 part1 of vegine)
重写有些核心接口的时候,其实遇到了许多的问题,甚至一度的想过要放弃,但是最终还是坚持了下来.在客户端提供的这些接口中,可以清晰的看到客户端所依赖的各种模块的支持,以及各自之间的一些关联.下面只是介绍了 ...
- 第一篇使用Markdown的文章
一级标题 1 计算机 |计算机|科学| Foo 这段文字需要被强调 this is H1 ========== this is H2 ---------- 这是H1 这是H2 这是H3 这是H6 断好 ...