博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jboss CLI 命令行接口学习(适用JBOSS EAP 6.2+)
阅读量:6073 次
发布时间:2019-06-20

本文共 2475 字,大约阅读时间需要 8 分钟。

一、确认CLI所使用的端口

以domain模式为例,查看domain controller(也就是master主机)上的host.xml

1 
2
3
4
5
6
7
8

其中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,这样运维起来就方便多了,最终可以达到一键配置、一键部署的效果。

转载地址:http://oksgx.baihongyu.com/

你可能感兴趣的文章
Object-C中 - self 和super 的含义
查看>>
Optimizing graphics performance
查看>>
C#方法拓展
查看>>
kafka的分区分配策略
查看>>
react-keeper
查看>>
react 项目实战(十)引入AntDesign组件库
查看>>
flexible.js + makegrid.js 自适应布局
查看>>
js 判断对象中所有属性是否为空
查看>>
Scrapy基础(六)————Scrapy爬取伯乐在线一通过css和xpath解析文章字段
查看>>
spring MVC 运行过程
查看>>
19、其他文件编程函数(目录文件、链接文件、临时文件)
查看>>
Java LinkList遍历方式
查看>>
little w and Segment Coverage
查看>>
nginx-rtmp加入权限验证的简单方法
查看>>
《javascript高级程序设计》第一版笔记
查看>>
我的 FPGA 学习历程(09)—— 时序逻辑入门
查看>>
开发中遇到的抗
查看>>
Struts2输入校验2(框架效验)———struts2第四讲
查看>>
Eclipse安装propertie预览插件
查看>>
两个二极管反向并联一般起什么作用
查看>>