Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

This section describes how to create, update, remove, and view pico configurations.

Each pico configuration consists of a set of attributes, including templates, system properties, JVM arguments, and classpaths. When you change these attributes in a configuration, the corresponding pico instance must be restarted.

A configuration may also include "settings" attributes. Unlike e g properties, this type of attribute may contain array values and changes do not require restart of pico instances.


{
	template=<template name space>.<template file name>
	settings {
		pico-groups=[]
		state=enabled
	    tags=[]
	}
 	config {
  		classpath {
			#classpaths...
  		}
  		jvmargs {
			#jvmargs...
		}
		properties {
			#properties...
		}
 	}
}

Settings

At the time of writing, there are three available settings:

  • state - If set to disabled, this pico will not be started by the system command    
  • tags - Add tags to group pico instances in the mzsh command system.

Classpaths

The default classpath attributes that are set in the pico configuration of the Platform. Agents that are installed on the system may require that additional classpaths are set in the pico configuration of ECs. 

JVM Arguments

A number of JVM arguments controlling the memory usage are set in the default template standard, which is inherited by all other default templates.

config {
...
    jvmargs {
        args=[
            "-server"
        ]
        maxDirect=[
            "-XX:MaxDirectMemorySize=4096M"
        ]
        maxMetaspace=[
            "-XX:MaxMetaspaceSize=196M"
        ]
        xms=[
            "-Xms64M"
        ]
        xmx=[
            "-Xmx256M"
        ]
    }
...    
}

 You can add additional JVM arguments in a custom template or override the default values in your pico configurations.

Each of the JVM arguments in the template has unique label. This makes it possible to edit individual JVM arguments via the mzsh command topo.

It is highly recommended that you follow this pattern and consistently use the same labels in all configurations. Omitting or mixing labels may lead to unpredictable results. For instance, the following labels are used in the standard template.

LabelJVM Argument
maxDirect
MaxDirectMemorySize
maxMetaspace
maxMetaspace
xms
Xms
xmxXmx

If you set set any of the above JVM arguments in a custom template, but with different labels. Pico instances may start with conflicting JVM arguments.

mzsh topo set topo://container:<container>/pico:<pico>/obj:config.jvmargs \
'<label>: ["argument1","argument2"]'

Example - Setting JVM arguments

mzsh topo set topo://container:main1/pico:platform/obj:config.jvmargs \
'xmx:["-Xmx256M"]
xms:["-Xms64M"]
maxMetaspace:["-XX:MaxMetaspaceSize=196M"]
maxDirect:["-XX:MaxDirectMemorySize=4096M"]
args : ["-server"]'

If you have a large block of APL code, e g 300 lines or more, add the JVM argument -XX:DontCompileHugeMethods to pico configurations of ECs. This causes the the JIT compilation to take effect:

mzsh topo set topo://container:<container>/pico:<pico>/obj:config.jvmargs \
'dontCompileHugeMethods:["-XX:DontCompileHugeMethods"]'

System Properties

For information about the available system properties, see System Properties.

Default Pico Configurations

When you install the Platform Container, the pico configuration for the Platform and the SC psc1 are created by default. 

If you set the property install.str.config-script to str-templates/basic.sh in install.xml during the installation, the following pico configurations will be created in the STR:

Pico NameDescription
ec1EC based on the template standard-ec
sc1-sc3SCs based in the template standard-sc
zk1-zk3SCs based in the template standard-sc

The script referenced above is also available in the Platform container after the installation, in the directory MZ_HOME/scripts/str-templates.

You can create new pico configurations based on the standard templates or you can create your own templates. For further information about creating templates, see STR File Structure.

This chapter includes the following sections:

  • No labels

0 Comments

You are not logged in. Any changes you make will be marked as anonymous. You may want to Log In if you already have an account.