You can add a cartridge group using the CLI tool, REST API or the PPaaS Console as shown below:
Adding a cartridge group via the CLI
Overview
CLI command | add-cartridge-group |
Description | Add a cartridge group. |
Command format | add-cartrdige-group -p <JSON_FILE_PATH> The path to the JSON file that defines the cartridge group needs to be defined as the |
Parameter definition
Short option | Long option | Description | Required | Example value |
---|---|---|---|---|
-p | --resource-path | Folder path where the JSON file defining the cartridge group is stored. | yes |
|
Example
Add a cartridge group that has been defined in the <PRIVATE_PAAS_CARTRIDGES>/wso2am/1.9.0/samples/cartridge-groups/wso2am-190/wso2am-190-group1.json
file.
add-cartridge-group -p <PRIVATE_PAAS_CARTRIDGES>/wso2am/1.9.0/samples/cartridge-groups/wso2am-190/wso2am-190-group1.json
Sample output
Cartridge Group added successfully: [cartridge-group] keymanager-gw-manager-gw-worker
Adding a cartridge group via the REST API
Overview
Description | Add a cartridge group. |
Resource Path | /cartridgeGroups |
HTTP Method | POST |
Request/Response Format | application/json |
Command format | curl -X POST -H "Content-Type: application/json" -d @'<JSON_PAYLOAD>' -k -v -u <USERNAME>:<PASSWORD> https://<PRIVATE_PAAS_HOST>:<PRIVATE_PAAS_HTTPS_PORT>/api/cartridgeGroups
|
Example
Add a cartridge group that has been defined in the <PRIVATE_PAAS_CARTRIDGES>/wso2am/1.9.0/samples/cartridge-groups/wso2am-190/wso2am-190-group1.json
file.
cd <PRIVATE_PAAS_CARTRIDGES>/wso2am/1.9.0/samples curl -X POST -H "Content-Type: application/json" -d @'cartridge-groups/wso2am-190/wso2am-190-group1.json' -k -v -u admin:admin https://localhost:9443/api/cartridgeGroups
Sample output
> POST /api/cartridgeGroups HTTP/1.1 > Host: localhost:9443 > Authorization: Basic YWRtaW46YWRtaW4= > User-Agent: curl/7.43.0 > Accept: */* > Content-Type: application/json > Content-Length: 233 > < HTTP/1.1 201 Created < Date: Tue, 06 Oct 2015 11:28:13 GMT < Location: https://localhost:9443/api/cartridgeGroups/keymanager-gw-manager-gw-worker < Content-Type: application/json < Transfer-Encoding: chunked < Server: WSO2 Carbon Server < {"status":"success","message":"Cartridge Group added successfully: [cartridge-group] keymanager-gw-manager-gw-worker"}
You will come across the following HTTP status codes while adding a cartridge group:
HTTP status code | 201, 400, 409, 500 See the descriptions of the HTTP status codes here. |
Location header URL | https://<PRIVATE_PAAS_HOST>:<PRIVATE_PAAS_HTTPS_PORT>/api/cartridgeGroups/<CARTRIDGE_GROUP_NAME> |
Adding a cartridge group via the PPaaS Console
Follow the instructions below to add a cartridge group:
- Click Configurations on the home page.
- Click Cartridge Groups.
- Click ADD CARTRIDGE GROUP.
- Define the cartridge group as follows:
- To define the cartridge group details. For information on all the properties that you can use in a cartridge group definition, see the Cartridge Group Resource Definition.
- Define the Group Name.
Define the Startup Order based on the cartridge group you wish to create.
Click +Startup Order.
Click +alias to add dependencies to the startup order.
Example:cartridge.<CARTRIDGE_ALIAS>,group.<GROUP_ALIAS>
When creating an application, you need to use the same cartridge alias and group alias, which you use here when creating a cartridge group.
- Define the Scaling Dependents based on the application you wish to create.
- Click +Scaling Dependent.
- Click +alias to add dependencies to the startup order.
Example:cartridge.<ALIAS>,group.<ALIAS>
- Select the Termination Behavior state.
- Click Update to update the group details.
- To define the cartridge group details. For information on all the properties that you can use in a cartridge group definition, see the Cartridge Group Resource Definition.
Add dependancies to the cartridge group.
You can not reuse existing cartridge groups as a nested group in a new cartridge group. The cartridge group needs to be always created from scratch.
- To add a cartridge to the main cartridge group or a nested group.
- Click cartridges to expand the cartridge pane. This step can be skipped if the cartridge pane is already expanded.
- Optionally, if you wish to view the details of a cartridge, single click on the respective cartridge in the cartridge pane. The cartridge details appear in the information pane.
- Double click on the cartridge, which you wish to add to the group, for the selected cartridge to appear in the main pane.
- Drag the group connector, which appears underneath the group in the shape of a rectangle, and drop it on top of the cartridge connector, which appears in the shape of a half circle, on top of the cartridge.
- To add a nested group to a cartridge group.
- Click Group Templates to expand the group template pane. This step can be skipped if the group template pane is already expanded.
- Double click on the group node template for the nested group template to appear in the main pane.
- Drag the main group connector, which appears underneath the group in the shape of a rectangle, and drop it on top of the nested group connector, which appears in the shape of a half circle, on top of the main group.
If you wish to reposition the nodes in a more organized manner, click the reposition nodes link.
- To delete a cartridge or nested group,
- Right click on the respective object and click delete.
- Click Yes to confirm the removal of the object from the main panel.
- Right click on the respective object and click delete.
- To add a cartridge to the main cartridge group or a nested group.
- Click SAVE to add the cartridge group definition.
Sample cartridge group JSON
{ "name": "keymanager-gw-manager-gw-worker", "cartridges": [ "wso2am-190-gw-manager", "wso2am-190-gw-worker", "wso2am-190-km" ], "dependencies": { "terminationBehaviour": "terminate-none" } }