Configuring Zowe Application Framework
Configuring Zowe Application Framework
The Zowe Application ("App") Framework is configured in the Zowe configuration file. Configuration can be used to change things such as verbosity of logs, the way in which the App server communicates with the Mediation Layer, how ZSS operates, whether to use HTTPS or AT-TLS, what language the logs should be set, and many more attributes.
When you install Zoweâ„¢, the App Framework is configured as a Mediation Layer client by default. This is simpler to administer because the App framework servers are accessible externally through a single port: API ML Gateway port. It is more secure because you can implement stricter browser security policies for accessing cross-origin content.
You can modify the Zowe App Server and Zowe System Services (ZSS) configuration, as needed, or configure connections for the Terminal app plugins.
Accessing the App Server​
When the server is enabled and given a port within the configuration file, the App server will print a message ZWED0031I in the log output. At that time, it is ready to accept network communication. When using the API Mediation Layer (recommended), app-server URLs should be reached from the Gateway, and you should additionally wait for the message ZWEAM000I for the Gateway to be ready.
When Zowe is ready, the app-server can be found at https://<zowe.externalDomain>:<components.gateway.port>/zlux/ui/v1
(Not recommended): If the API Mediation Layer is not used, or you need to contact the App server directly, the ZWED0031I message states which port it is accessible from, though generally it will be the same value as specified within components.app-server.port
. In that case, the server would be available at https://<zowe.externalDomain>:<components.app-server.port>/
Accessing the Desktop​
The app-server
should be accessed through the gateway
when both are present. When both are ready, the Desktop can be accessed from the API Mediation Layer Gateway, such as
https://<zowe.externalDomain>:<components.gateway.port>/zlux/ui/v1/
, which will redirect to https://<zowe.externalDomain>:<components.gateway.port>/zlux/ui/v1/ZLUX/plugins/org.zowe.zlux.bootstrap/web/index.html
Although you access the App server via the Gateway port, the App server still needs a port assigned to it which is the value of the components.app-server.port variable in the Zowe configuration file.
(Not recommended): If the mediation layer is not used, the Desktop will be accessible from the App server directly at /ZLUX/plugins/org.zowe.zlux.bootstrap/web/index.html
Accessing ZSS​
The zss
server should be accessed through the gateway
when both are present. When both are ready, ZSS can be accessed from the API Mediation Layer Gateway, such as
https://<zowe.externalDomain>:<components.gateway.port>/zss/api/v1/
Although you access the ZSS server via the Gateway port, the ZSS server still needs a port assigned to it which is the value of the components.zss.port variable in the Zowe configuration file.
If the mediation layer is not used, ZSS directly at https://<zowe.externalDomain>:<components.zss.port>/
Configuration file​
app-server configuration​
The app-server uses the Zowe server configuration file for customizing server behavior. For a full list of parameters, requirements, and descriptions, see the json-schema document for the app-server which describes attributes that can be specified within the configuration file section components.app-server
zss configuration​
ZSS shares some parameters in common with the app-server, so you can consult the above json-schema document to find out which parameters are valid within components.zss
of the Zowe configuration file. However, some parameters within the app-server schema are not used by ZSS, such as the node
section. A ZSS-centric schema will be available soon.
Environment variables​
In the latest version of Zowe, instance.env
is no longer used. However, some environment variables that could be specified within v1 can still be set within v2 in the zowe.environments
section of the server configuration file. Environment variables starting with ZWED_
map to values that can be specified within components.app-server
and components.zss
so they are redundant, but you can refer to the above json-schema document to see which values are useful or deprecated.
Configuring the framework as a Mediation Layer client​
The App Server and ZSS automatically register to the API Mediation Layer when present.
If this is not desired, registration can disabled by setting the properties components.app-server.mediationLayer.server.enabled=false
for app-server and components.zss.mediationLayer.enabled=false
for ZSS.
Setting up terminal app plugins​
Follow these optional steps to configure the default connection to open for the terminal app plugins.
Setting up the TN3270 mainframe terminal app plugin​
The file _defaultTN3270.json
within the tn3270-ng2
app folder /config/storageDefaults/sessions/
is deployed to the configuration dataservice when the app-server runs for the first time. This file is used to tell the terminal what host to connect to by default. If you'd like to customize this default, you can edit the file directly within the configuration dataservice <components.app-server.instanceDir>/org.zowe.terminal.tn3270/sessions/_defaultTN3270.json
. Or you can open the app, customize a session within the UI, click the save icon (floppy icon) and then copy that file from <components.app-server.usersDir>/<your user>/org.zowe.terminal.tn3270/sessions/_defaultTN3270.json
to <components.app-server.instanceDir>/org.zowe.terminal.tn3270/sessions/_defaultTN3270.json
. Either way, you will see a file with the following properties:
"host": <hostname>
"port": <port>
"security": {
type: <"telnet" or "tls">
}
Setting up the VT Terminal app plugin​
The file _defaultVT.json
within the vt-ng2
app folder /config/storageDefaults/sessions/
is deployed to the configuration dataservice when the app-server runs for the first time. This file is used to tell the terminal what host to connect to by default. If you'd like to customize this default, you can edit the file directly within the configuration dataservice <components.app-server.instanceDir>/org.zowe.terminal.vt/sessions/_defaultVT.json
. Or you can open the app, customize a session within the UI, click the save icon (floppy icon) and then copy that file from <components.app-server.usersDir>/<your user>/org.zowe.terminal.vt/sessions/_defaultVT.json
to <components.app-server.instanceDir>/org.zowe.terminal.vt/sessions/_defaultVT.json
. Either way, you will see a file with the following properties:
"host":<hostname>
"port":<port>
"security": {
type: <"telnet" or "ssh">
}
Network configuration​
Note: The following attributes are to be defined in the Zowe configuration file.
The App Server can be accessed over HTTP and/or HTTPS, provided it has been configured for either. HTTPS should be used, as HTTP is not secure unless AT-TLS is used.
When AT-TLS is used by ZSS, components.zss.agent.http.attls
must be set to true.
HTTPS​
Both app-server
and zss
server components use HTTPS by default, and the port
parameters components.app-server.port
and components.zss.port
control which port they are accessible from. However, each have advanced configuration options to control their HTTPS behavior.
The app-server
component configuration can be used to customize its HTTPS connection such as which certificate and ciphers to use, and these parameters are to be set within components.app-server.node.https
as defined within the json-schema file
The zss
component configuration can be used to customize its HTTPS connection such as which certificate and ciphers to use, and these parameters are to be set within components.zss.agent.https
as defined within the json-schema file