Geode also open sourced a GO client that would interact with any running cluster's management REST service. Each REST end point would corresponds to a "command" in this tool. Executing a command in this CLI would invoke the corresponding REST end point. The features of this GO client are:
The Tanzu Gemfire Go Client source code and executables are available here: https://github.com/gemfire/tanzu-gemfire-management-cf-plugin
After download the latest version to any folder of your choice, all you need is a running cluster which has the cluster management service running:
The first you want to check out is the "-h" option:
$ ./gemfire -h Commands to interact with a Geode cluster. Usage: gemfire <target> <command> [options] target: URL to a Geode locator in the form of: http(s)://host:port Optional if 'GEODE_TARGET' environment variable is set command: 'gemfire <target> commands' lists available commands options: 'gemfire <target> <command> -h' lists options for an individual command --user, -u <username>, or a 'GEODE_USERNAME' environment variable sets the username --password, -p <password>, or a 'GEODE_PASSWORD' environment variable sets the password --table, -t [<jqFilter>] outputs in a tabular form help: --help, -h for general help, and provide <target> and <command> for command-specific help |
To see a list of commands available to the target cluster
$ ./gemfire http://localhost:7070 commands check rebalance --id <id> configure pdx --pdxType <json or @json_file_path> create gateway-receiver --gatewayReceiverConfig <json or @json_file_path> create index --indexConfig <json or @json_file_path> create region --regionConfig <json or @json_file_path> create region index --indexConfig <json or @json_file_path> --regionName <regionName> delete region --id <id> [--group <group>] |
To execute one particular command:
$ ./gemfire http://localhost:7070 list regions
{
"statusCode": "OK",
"result": [
{
"id": "test",
"groups": [
{
"configuration": {
"name": "test",
"type": "REPLICATE"
}
}
],
"links": {
"indexes": "http://localhost:7070/management/v1/regions/test/indexes",
"self": "http://localhost:7070/management/v1/regions/test",
"list": "http://localhost:7070/management/v1/regions"
}
}
]
} |