Este conteúdo não está disponível no idioma selecionado.
Chapter 3. Using configuration snippets
To configure one or two settings in Red Hat build of MicroShift, use the /etc/microshift/config.d/ configuration directory to drop in configuration snippet YAML files. Restart MicroShift for new or changed snippets to apply.
3.1. How configuration snippets work Copiar o linkLink copiado para a área de transferência!
Configuration snippets in Red Hat build of MicroShift are YAML files in /etc/microshift/config.d/ that merge with the existing configuration at runtime. You can use them to change one or two settings without editing the main config file.
You must restart MicroShift for new configurations to apply.
To return to previous values, you can delete a configuration snippet and restart MicroShift.
At runtime, the YAML files inside /etc/microshift/config.d are merged into the existing MicroShift configuration, whether that configuration is a result of default values or a user-created config.yaml file. You do not need to create a config.yaml file to use a configuration snippet.
Files in the snippet directory are sorted in lexicographical order and run sequentially. You can use numerical prefixes for snippets so that each is read in the order you want. The last-read file takes precedence when there is more than one YAML for the same parameter.
Configuration snippets take precedence over both default values and a customized config.yaml configuration file.
3.2. Examples of configuration snippet lists or arrays Copiar o linkLink copiado para a área de transferência!
Lists and arrays in Red Hat build of MicroShift configuration snippets are overwritten, not merged.
For example, you can replace a SAN or list of SANs by creating an additional snippet for the same field that is read after the first:
- MicroShift configuration directory contents
-
/etc/microshift/config.yaml.defaultor/etc/microshift/config.yaml - Example MicroShift configuration snippet directory contents
-
/etc/microshift/config.d/10-san.yamland/etc/microshift/config.d/20-san.yaml
Example 10-san.yaml snippet
apiServer:
subjectAltNames:
- host1
- host2
apiServer:
subjectAltNames:
- host1
- host2
Example 20-san.yaml snippet
apiServer:
subjectAltNames:
- hostZ
apiServer:
subjectAltNames:
- hostZ
Example configuration result
apiServer:
subjectAltNames:
- hostZ
apiServer:
subjectAltNames:
- hostZ
If you want to add a value to an existing list, you can add it to an existing snippet. For example, to add hostZ to an existing list of SANs, edit the snippet you have instead of creating a new one:
Example 10-san.yaml snippet
apiServer:
subjectAltNames:
- host1
- host2
- hostZ
apiServer:
subjectAltNames:
- host1
- host2
- hostZ
Example configuration result
apiServer:
subjectAltNames:
- host1
- host2
- hostZ
apiServer:
subjectAltNames:
- host1
- host2
- hostZ
3.3. Example configuration snippets that are objects Copiar o linkLink copiado para a área de transferência!
Object fields in Red Hat build of MicroShift are merged together when you use a configuration snippet.
Example 10-advertiseAddress.yaml snippet
apiServer: advertiseAddress: "microshift-example"
apiServer:
advertiseAddress: "microshift-example"
Example 20-audit-log.yaml snippet
apiServer:
auditLog:
maxFileAge: 12
apiServer:
auditLog:
maxFileAge: 12
Example configuration result
apiServer:
advertiseAddress: "microshift-example"
auditLog:
maxFileAge: 12
apiServer:
advertiseAddress: "microshift-example"
auditLog:
maxFileAge: 12
3.4. Examples of mixed configuration snippets Copiar o linkLink copiado para a área de transferência!
When you use mixed configuration snippets in Red Hat build of MicroShift, object fields merge and the last-read snippet replaces list values. File order controls which list entries apply.
In the following example, the values of both advertiseAddress and auditLog.maxFileAge fields merge into the configuration, but only the c.com and d.com subjectAltNames values are retained. This happens because the numbering in the filename indicates that the c.com and d.com values are higher priority.
Example 10-advertiseAddress.yaml snippet
apiServer: advertiseAddress: "microshift-example"
apiServer:
advertiseAddress: "microshift-example"
Example 20-audit-log.yaml snippet
apiServer:
auditLog:
maxFileAge: 12
apiServer:
auditLog:
maxFileAge: 12
Example 30-SAN.yaml snippet
apiServer:
subjectAltNames:
- a.com
- b.com
apiServer:
subjectAltNames:
- a.com
- b.com
Example 40-SAN.yaml snippet
apiServer:
subjectAltNames:
- c.com
- d.com
apiServer:
subjectAltNames:
- c.com
- d.com
Example configuration result