Pivotal Gemfire gfsh shell的使用(2)

来源:互联网 发布:淘宝美工装修 编辑:程序博客网 时间:2024/05/23 10:55

Pivotal Gemfire gfsh shell的使用(2)

Gfsh的shell变量的使用
    你可以在脚本中嵌入gfsh的shell变量。

你也可以使用set variable命令去修改shell行为或者定义自己的shll变量。可以使用下面的命令查看一些列gfsh的shell变量和他们当前的值。

echo --string=$*

 

要获得当前存在的变量的值,可以使用下面的命令:

echo --string=${VARIABLE}

例如:

echo --string=${SYS_CLASSPATH}

 

系统变量:

SYS_CLASSPATH

Gfsh 虚拟机的CLASSPATH(只读)

SYS_GEMFIRE_DIR

Gfsh安装的生产目录(只读)

SYS_HOST_NAME

Gfsh启动的主机名(登陆机器的用户名)(只读)

SYS_JAVA_VERSION

Java使用的版本(只读)

SYS_OS

操作系统的名字(只读)

SYS_OS_LINE_SEPARATOR

当写gfsh脚本的时候,可以使用的航分隔符变量(只读)

SYS_USER

用户的名字

SYS_USER_HOME

用户工作的目录

Gfsh环境变量

APP_COLLECTION_LIMIT

 

APP_FETCH_SIZE

查询是要使用的大小,值:0-2147483647,默认值1000

APP_LAST_EXIT_STATUS

最后命令退出的状态,0表示成功,1表示错误,2表示死机(只读)

APP_LOGGING_ENABLED

Gfsh日志记录是否被激活,默认情况下:false。你可以通过设置gfsh.log-level,java系统属性到一个支持的java记录级别(只读)

APP_LOG_FILE

当前gfsh记录文件的名字和路径(只读)

APP_NAME 

当前应用的名字(gfsh)

APP_PWD

Gfsh启动的工作目录

APP_QUERY_RESULTS_DISPLAY_MODE

为返回结果切换显示模式。值为:table和catalog,,默认值是table

APP_QUIET_EXECUTION

执行是否应用于安静模式。值:false,true。默认值是:false

APP_RESULT_VIEWER

仅仅在unix使用,这个变量的设置可以使用少量的unix变量为外部查看输出。

 

使用gfsh去管理远处的在http和https上的集群

你可以通过http和https去连接远处的集群,并且使用gfsh命令来管理gfsh。

 

使用http协议去连接一个远处的Gemfire集群:

1.启动gfsh

2.当启动远程主机的远程集群的时候,当启动JMX管理者(locator和server)的时候你可以选择指定--http-bind-address和 --http-service-port作为Gemfire的属性。这些属性可以保证在使用http协议通过url连接远程Gemfire集群的功能。例如:

gfsh>start server --name=server1 --J=-Dgemfire.jmx-manager=true \

--J=-Dgemfire.jmx-manager-start=true -J=-Dgemfire.http-service-port=8080 \

--J=-Dgemfire.http-service-bind-address=my.remote.cluster

     这条命令必须在主机上直接执行,最终将作为远程服务器的HTTP服务GemFire主机远程管理。(你不能启动远程的GemFire服务器)

3.在你的本地机器上,运行gfsh的connect命令去连接远程的系统,包括--use-http和--url参数,例如:

gfsh>connect --use-http=true --url="http://my.remote.cluster:8080/gemfire v1"

Successfully connected to: GemFire Manager's HTTP service @ http://

my.remote.cluster:8080/gemfire/v1

 

根据上面的操作,gfsh已经连接到了远程的系统,大多数的gfsh命令现在已经可以通过本地主机在远程系统中运行。但是也有例外,下面的命令在本地被执行。

• alter disk-store

• compact offline-disk-store

• describe offline-disk-store

• help

• hint

• sh (for executing OS commands)

• sleep

• start jconsole (however, you can connect JConsole to a remote cluster when gfsh is connected

to the cluster via JMX)

• start jvisualvm

• start locator

• start server

• start vsd

• status locator*

• status server*

• stop locator*

• stop server*

• run (for executing gfsh scripts)

• validate disk-store

• version

当gfsh通过JMX或者http(s)连接到远程集群的时候,你可以停止或者获得远程locators和servers的状态。如果你在命令中使用--pid或者--dir的参数,那么stop/status命令就只能在本地执行。

为远程连接配置SSL,指定gemfire.properties文件中或者gfsecurity-properties,server启动Gemfire配置参数。

• http-service-ssl-enabled

• http-service-ssl-require-authentication

• http-service-ssl-protocols

• http-service-ssl-ciphers

• http-service-ssl-keystore

• http-service-ssl-keystore-password

• http-service-ssl-keystore-type

• http-service-ssl-truststore

• http-service-ssl-truststore-password

详细看ssl的配置信息,在383页。

上面的参数也适用于所有配置在JMX管理员上的http服务,也包括以下几种:

• Developer REST API service 

• Pulse monitoring tool

 

Shell的基本特征和命令行的使用

Gfsh为shell环境提供有益的特征,包括命令自动完成,保护命令历史,多行命令划界,通过命令和主题,上下文先关的帮助是有用的。

下面来描写这些特征。

在空的提示下按tab键,可以看到一系列有用的gfsh命令。

 

 

通过使用hint命令在一个特定的主题下获得信息。

这个hint命令显示特定主题的一行描述信息和相关命令,例如,用hint data返回特定主题data的描述信息,以及data的所有可能的的行为。

 

Hint server可以显示在Pivotal Gemfire中servers的描述信息,以及一系列管理和监视这些servers的命令。

 

要获得一系列hint的主题,使用hint

 

使用help命令来获得命令的详细信息,help后面跟特定的命令,返回的是特定命令的描述信息,已经特定命令的格式,以及参数的详细描述。

(太简单,略)

 

使用tab键来自动补齐一条命令,或者触发可能使用的命令

在输入一部分命令之后使用tab键可以触发自动完成命令,或者一系列可能使用的命令。例如,在hint命令之后输入tab键,那么久会显示出可以跟在hint命令之后的所有变量。

假如在已经输入hint d之后按下tab键,将会显示以d开头的变量值。

 

自动补齐也支持变量参数和命令参数,例如,输入start之后按下tab键,那么就会显示出所有可以启动的程序。

 

假如在输入start locator之后按下tab键,那么就会显示出--name(该命令必须要跟的参数)

所列出的可用命令取决于当前是否连接到一个分布式系统。

 

使用向上箭头键可以访问以前使用的命令。

    

假如命令有多好需要使用\来划界

当输入一个较长的命令是,每一行的结尾可以使用\来连接下一行的命令。

 

使用单引号或者双引号包含着字符串。

     gfsh>start locator --name='locator 1'

     start locator --name=locator1 --port=9009 --mcast-port=0\

--J='-Dgemfire.remote-locators=10.117.33.214[9009],10.117.33.220[9009]'

当你在操作系统的shell下的一行中执行多个shell命令的时候,要用双引号扩这gfsh命令,在双引号内用单引号括着含有逗号或者空格的字符传。

$ gfsh -e "start locator --name='locator 1'" -e "start server --name=server1"

0 0
原创粉丝点击