Commit b2a06b66 authored by Łukasz Nowak's avatar Łukasz Nowak

XXX: Request frontend nodes with frontend-node-dict

XXX: fully drop legacy-enable-http3-string

lgeacy. not implemented, everything flat
parent 7b80e243
......@@ -11,58 +11,40 @@ Software release which provides CDN - Content Delivery Network. It has a lot of
This documentation is fully minimalistict, as `software.cfg.json <software.cfg.json>`_ contains most of explanations.
About frontend replication
==========================
Cluster configuration
=====================
Slaves of the root instance are sent as a parameter to requested frontends which will process them. The only difference is that they will then return the would-be published information to the root instance instead of publishing it. The root instance will then do a synthesis and publish the information to its slaves. The replicate instance only use 5 type of parameters for itself and will transmit the rest to requested frontends.
The cluster consist of:
These parameters are:
* root instance controlling the cluster
* KeDiFa instance to which one can upload certificates and frontend nodes are downloading certificates from there
* frontend instances, none by default, which can be many, used to serve the traffic
* ``-frontend-type`` : the type to deploy frontends with. (defaults to "default")
* ``-frontend-quantity`` : The quantity of frontends to request (defaults to "1")
* ``-frontend-i-state``: The state of frontend i
* ``-frontend-i-software-release-url``: Software release to be used for frontends, defaults to the current software release
* ``-frontend-config-i-foo``: Frontend i will be requested with parameter foo, supported parameters are:
* ``ram-cache-size``
* ``disk-cache-size``
* ``enable-http3``
* ``http3-port``
* ``-sla-i-foo`` : where "i" is the number of the concerned frontend (between 1 and "-frontend-quantity") and "foo" a sla parameter.
For example::
<parameter id="-frontend-quantity">3</parameter>
<parameter id="-frontend-type">custom-personal</parameter>
<parameter id="-frontend-2-state">stopped</parameter>
<parameter id="-sla-3-computer_guid">COMP-1234</parameter>
<parameter id="-frontend-3-software-release-url">https://lab.nexedi.com/nexedi/slapos/raw/someid/software/rapid-cdn/software.cfg</parameter>
will request the third frontend on COMP-1234 and with SR https://lab.nexedi.com/nexedi/slapos/raw/someid/software/rapid-cdn/software.cfg. All frontends will be of software type ``custom-personal``. The second frontend will be requested with the state stopped.
*Note*: the way slaves are transformed to a parameter avoid modifying more than 3 lines in the frontend logic.
Please refer to `software.cfg.json <software.cfg.json>`_ in order to configure the cluster.
How to deploy a frontend server
===============================
This is to deploy an entire frontend server with a public IPv4. If you want to use an already deployed frontend to make your service available via ipv4, switch to the "Example" parts.
First, you will need to request a "master" instance of Rapid.CDN with:
The simplest rapid-cdn cluster can be deployed with::
* A ``domain`` parameter where the frontend will be available
like::
<?xml version='1.0' encoding='utf-8'?>
<?xml version="1.0" encoding="UTF-8"?>
<instance>
<parameter id="domain">moulefrite.org</parameter>
<parameter id="_">{
"frontend-node-dict": {
"node-1": {
}
},
"domain": "moulefrite.org"
}</parameter>
</instance>
This will result with automatic generation of frontend domains in ``*.moulefrite.org`` domain.
Then, it is possible to request many slave instances (currently only from slapconsole, UI doesn't work yet) of Rapid.CDN , like::
instance = request(
software_release=rapid_cdn,
partition_reference='frontend2',
partition_reference='my frontend',
shared=True,
partition_parameter_kw={"url":"https://[1:2:3:4]:1234/someresource"}
)
......
......@@ -14,7 +14,7 @@
# not need these here).
[template]
filename = instance.cfg.in
md5sum = 75513fafea441a7fced667bf9fcbdd61
md5sum = ea7349c63a1117e145f50c50586f79be
[profile-common]
filename = instance-common.cfg.in
......@@ -22,15 +22,15 @@ md5sum = 5784bea3bd608913769ff9a8afcccb68
[profile-frontend]
filename = instance-frontend.cfg.in
md5sum = 86969db87ec9bbbaf5ab62206c325521
md5sum = 4f2f4e8cdf7a066729c9f368c03efe89
[profile-master]
filename = instance-master.cfg.in
md5sum = e53b59b9f894ff1f45167a594c0966dd
md5sum = 86fcd72199d9e3311a3db83ba93f5dac
[profile-slave-list]
filename = instance-slave-list.cfg.in
md5sum = 2339dbbdb2f7768ca8950f1f2b61ed39
md5sum = d19d7cd3b73bb7de12eea8d50a6f69c8
[profile-master-publish-slave-information]
filename = instance-master-publish-slave-information.cfg.in
......@@ -126,4 +126,16 @@ md5sum = f7262223975640d7200bdf9e99dd79e4
[instance-input-schema]
filename = instance-input-schema.json
md5sum = 6b547e0ec8e207ce70a4d46388acafac
md5sum = 65ea4031d0fd2a43ce7820b0120ae8ce
[instance-frontend-input-schema]
filename = instance-frontend-input-schema.json
md5sum = 7ea0adf6f9802e103f7ce9f553be293c
[instance-frontend-user-input-schema]
filename = instance-frontend-user-input-schema.json
md5sum = 5a769d54caa1caf6873c610ceb1e094e
[instance-input-schema]
filename = instance-input-schema.json
md5sum = 65ea4031d0fd2a43ce7820b0120ae8ce
{
"$schema": "http://json-schema.org/draft-07/schema",
"properties": {
"extra_slave_instance_list": {
"type": "string",
"title": "JSON list of configured slaves dumped as text"
},
"kedifa-caucase-url": {
"type": "string",
"title": "KeDiFa Caucase URL"
},
"backend-client-caucase-url": {
"type": "string",
"title": "Backend Client Caucase URL"
},
"master-key-download-url": {
"type": "string",
"title": "Master Key Download URL"
},
"cluster-identification": {
"type": "string",
"title": "Cluster Identification"
},
"ciphers": {
"type": "string",
"title": "Ciphers"
},
"domain": {
"type": "string",
"title": "Domain"
},
"re6st-verification-url": {
"type": "string",
"title": "re6st-verification-url"
},
"monitor-cors-domain": {
"type": "string",
"title": "Monitor CORS Domain"
},
"monitor-password": {
"type": "string",
"title": "Monitor password"
},
"monitor-username": {
"type": "string",
"title": "Monitor username"
},
"backend-connect-timeout": {
"title": "backend-connect-timeout",
"type": "integer"
},
"backend-connect-retries": {
"title": "backend-connect-retries",
"type": "integer"
},
"slave-kedifa-information": {
"title": "slave-kedifa-information",
"type": "boolean"
},
"authenticate-to-backend": {
"title": "authenticate-to-backend",
"type": "boolean"
},
"request-timeout": {
"title": "HTTP Request timeout in seconds",
"type": "integer"
},
"user": {
"title": "Frontend Node configuration provided by the user",
"allOf": [ { "$ref": "./instance-frontend-user-input-schema.json" } ],
"type": "object"
}
},
"title": "Input Parameters",
"type": "object"
}
{
"$schema": "http://json-schema.org/draft-04/schema",
"properties": {
"slave-instance-information-list": {
"title": "JSON list of slave information dumped as text",
"type": "string"
},
"monitor-base-url": {
"title": "Base URL of the used monitor",
"type": "string"
},
"kedifa-csr-url": {
"title": "kedifa-csr-url",
"type": "string"
},
"backend-client-csr-url": {
"title": "backend-client-csr-url",
"type": "string"
},
"node-information-json": {
"title": "node-information-json",
"type": "string"
},
"backend-haproxy-statistic-url": {
"title": "backend-haproxy-statistic-url",
"type": "string"
},
"csr-certificate": {
"title": "csr-certificate",
"type": "string"
},
"public-ipv4": {
"title": "Public IPv4",
"type": "string"
},
"private-ipv4": {
"title": "Private IPv4",
"type": "string"
}
},
"title": "Input Parameters",
"type": "object"
}
{
"$schema": "http://json-schema.org/draft-07/schema",
"properties": {
"sla-computer_guid": {
"title": "Destination Compute Node GUID (aka reference) of the instance",
"description": "This parameter allows to select to which Compute Node this node will be allocated to.",
"type": "string"
},
"enable-http2": {
"title": "Enable HTTP2",
"default": true,
"description": "Enables HTTP2 on the node.",
"type": "boolean"
},
"enable-http3": {
"title": "Enable HTTP3",
"default": false,
"description": "Enables HTTP3 on the node.",
"type": "boolean"
},
"ram-cache-size": {
"default": "1G",
"title": "Size of RAM cache on each node (bytes)",
"description": "The value can be provided with suffix 'K', 'M', 'G'",
"type": "string"
},
"disk-cache-size": {
"default": "8G",
"title": "Size of disk cache on each node (bytes)",
"description": "The value can be provided with suffix 'K', 'M', 'G'",
"type": "string"
},
"software-url": {
"title": "Software Release URL",
"description": "Software Release URL used to on this frontend node, defaults to cluster Software Release URL.",
"type": "string"
},
"state": {
"default": "started",
"title": "State of the frontend node",
"description": "It can be mostly used to destroy (collect) not needed nodes.",
"type": "string",
"enum": [
"started",
"stopped",
"destroyed"
]
},
"expert": {
"title": "Expert Frontend Node parameters",
"description": "Unusual expert parameters for the frontend node",
"type": "object",
"properties": {
"rotate-num": {
"default": 4000,
"title": "Amount of daily log rotations",
"type": "integer"
},
"advertised-http3-port": {
"default": 443,
"title": "Advertised HTTP3 port",
"description": "As most common deloyment is using iptables for port redirection and in case of udp it is advertising to the process it's bind port instead of the really connected to, it's required to manually set this port for the whole cluster. Can be precisely set on each node by -frontend-i-config-http3-port",
"type": "integer"
},
"frontend-haproxy-http-port": {
"default": 8080,
"title": "Frontend HAProxy HTTP port",
"type": "integer"
},
"frontend-haproxy-https-port": {
"default": 4443,
"title": "Frontend HAProxy HTTPS port",
"type": "integer"
},
"backend-haproxy-http-port": {
"default": 21080,
"title": "Backend HAProxy HTTP port",
"type": "integer"
},
"backend-haproxy-https-port": {
"default": 21443,
"title": "Backend HAProxy HTTPS port",
"type": "integer"
},
"backend-haproxy-statistic-port": {
"default": 21444,
"title": "Backend HAProxy statistic port",
"type": "integer"
},
"slave-introspection-https-port": {
"default": 22443,
"title": "Backend HAProxy statistic port",
"type": "integer"
},
"trafficserver-port": {
"default": 23432,
"title": "TrafficServer port",
"type": "integer"
},
"legacy-enable-http3-string": {
"default": false,
"title": "Legacy: Sent enable-http3 as string to outdated nodes",
"type": "boolean"
},
"monitor-httpd-port": {
"default": 8196,
"title": "Monitor HTTPD port",
"type": "integer"
}
}
}
},
"title": "Input Parameters",
"type": "object"
}
This diff is collapsed.
{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "Input Parameters",
"type": "object",
"properties": {
"-frontend-quantity": {
"description": "Quantity of Frontends Replicate.",
"title": "Frontend Replication Quantity",
"type": "integer",
"default": 1
},
"apache-certificate": {
"description": "SSL Certificate used by the server. By appending to it CA certificate it is possible to use this field to replace not implemented apache-ca-certificate. Deprecated, please use master-key-upload-url.",
"textarea": true,
"title": "[DEPRECATED] SSL Certificate, with optional CA certificate",
"type": "string",
"default": ""
"frontend-node-dict": {
"title": "Frontend Node configuration",
"description": "The name used here will be reference of the node, used in the request, so changing it will result with new allocation. Note: This can be used while migrating clusters by using caddy-frontend-N.",
"patternProperties": {
".*": {
"allOf": [ { "$ref": "./instance-frontend-user-input-schema.json" } ]
}
},
"apache-key": {
"description": "SSL Key used by the server. Deprecated, please use master-key-upload-url.",
"textarea": true,
"title": "[DEPRECATED] SSL Key",
"type": "string",
"default": ""
"type": "object",
"default": {}
},
"domain": {
"description": "Domain used to generate automatic hostnames for slaves. For example 'example.com' will result with slave hostname 'slaveref.example.com'.",
......@@ -28,37 +21,12 @@
"type": "string",
"default": "example.org"
},
"enable-http2-by-default": {
"default": "true",
"description": "Use HTTP2 as default Protocol",
"enum": [
"true",
"false"
],
"title": "Enable HTTP2 by Default",
"type": "string"
},
"enable-http3": {
"default": "false",
"title": "Enable HTTP3",
"description": "Globally enable HTTP3 protocol. Can be precisely set on each node by -frontend-i-config-enable-http3",
"enum": [
"true",
"false"
],
"type": "string"
},
"http3-port": {
"default": 443,
"title": "Real advertised HTTP3 port",
"description": "As most common deloyment is using iptables for port redirection and in case of udp it is advertising to the process it's bind port instead of the really connected to, it's required to manually set this port for the whole cluster. Can be precisely set on each node by -frontend-i-config-http3-port",
"request-timeout": {
"default": 600,
"description": "Timeout for HTTP requests.",
"title": "HTTP Request timeout in seconds",
"type": "integer"
},
"re6st-verification-url": {
"description": "Url to verify if the internet and/or re6stnet is working.",
"title": "Test Verification URL",
"type": "string"
},
"backend-connect-timeout": {
"default": 5,
"description": "Time in seconds for establishing connection to the backend.",
......@@ -72,69 +40,107 @@
"type": "integer"
},
"automatic-internal-kedifa-caucase-csr": {
"default": "true",
"default": true,
"description": "Automatically signs CSRs sent to KeDiFa's caucase, based on CSR comparison.",
"enum": [
"true",
"false"
],
"title": "Automatic Internal KeDiFa's Caucase CSR",
"type": "string"
"type": "boolean"
},
"automatic-internal-backend-client-caucase-csr": {
"default": "true",
"default": true,
"description": "Automatically signs CSRs sent to Backend Client's caucase, based on CSR comparison.",
"enum": [
"true",
"false"
],
"title": "Automatic Internal Backend Client's Caucase CSR",
"type": "string"
"type": "boolean"
},
"ciphers": {
"title": "Ordered space separated list of ciphers",
"title": "Ordered whitespace separated list of ciphers",
"type": "string",
"textarea": true,
"default": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-SHA ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA AES256-SHA AES128-SHA ECDHE-RSA-DES-CBC3-SHA DES-CBC3-SHA"
},
"request-timeout": {
"default": 600,
"description": "Timeout for HTTP requests.",
"title": "HTTP Request timeout in seconds",
"type": "integer"
},
"authenticate-to-backend": {
"default": "false",
"default": false,
"description": "If set to true the frontend certificate will be used as authentication certificate to the backend. Note: backend might have to know the frontend CA, available with 'backend-client-caucase-url'.",
"enum": [
"false",
"true"
],
"title": "Authenticate to backend",
"type": "boolean"
},
"certificate-chain": {
"description": "SSL Certificate chain to be used. It shall start with a certificate, optionally intermediate certificates and end with a key. Deprecated: please use master-key-upload-url.",
"textarea": true,
"title": "[DEPRECATED] Certificate chain",
"type": "string"
},
"ram-cache-size": {
"default": "1G",
"title": "Default size of RAM cache on each node (bytes)",
"description": "The value can be provided with suffix 'K', 'M', 'G'",
"expert": {
"title": "Expert parameters",
"type": "object",
"properties": {
"caucase-port": {
"default": 8890,
"title": "Caucase Backend client port",
"type": "integer"
},
"monitor-httpd-port": {
"default": 8196,
"title": "Monitor HTTPD port",
"type": "integer"
},
"monitor-cors-domains": {
"default": "monitor.app.officejs.com",
"title": "Monitor CORS Domains",
"type": "string"
},
"disk-cache-size": {
"default": "8G",
"title": "Default size of disk cache on each node (bytes)",
"description": "The value can be provided with suffix 'K', 'M', 'G'",
"re6st-verification-url": {
"description": "Url to verify if the internet and/or re6stnet is working.",
"title": "Test Verification URL",
"type": "string"
},
"plain_http_port": {
"default": 8080,
"title": "Port to which frontend node shall bind to serve HTTP traffic",
"rotate-num": {
"default": 4000,
"title": "Amount of daily log rotations",
"type": "integer"
}
}
},
"port": {
"default": 4443,
"title": "Port to which frontend node shall bind to serve HTTPS (and HTTP/3) traffic",
"kedifa-node": {
"title": "KeDiFa Node",
"type": "object",
"properties": {
"sla-computer_guid": {
"title": "Destination Compute Node GUID (aka reference) of the instance",
"description": "This parameter allows to select to which Compute Node this node will be allocated to. Defaults to root instance Compute Node.",
"type": "string"
},
"expert": {
"title": "Expert KeDiFa Node parameters",
"type": "object",
"properties": {
"kedifa-port": {
"default": 7879,
"title": "KeDiFa port",
"type": "integer"
}
},
"title": "Input Parameters",
"type": "object"
"monitor-httpd-port": {
"default": 8196,
"title": "Monitor HTTPD port",
"type": "integer"
},
"monitor-cors-domains": {
"default": "monitor.app.officejs.com",
"title": "Monitor CORS Domain",
"type": "string"
},
"caucase-port": {
"default": 8890,
"title": "caucase port",
"type": "integer"
},
"rotate-num": {
"default": 4000,
"title": "Amount of daily log rotations",
"type": "integer"
}
}
}
}
}
}
}
{
"$schema": "http://json-schema.org/draft-07/schema",
"properties": {
"cluster-identification": {
"type": "string",
"title": "cluster-identification"
},
"monitor-cors-domains": {
"type": "string",
"title": "monitor-cors-domains"
},
"monitor-username": {
"type": "string",
"title": "monitor-username"
},
"monitor-password": {
"type": "string",
"title": "monitor-password"
},
"monitor-httpd-port": {
"type": "string",
"title": "monitor-password"
},
"slave-list": {
"type": "list",
"title": "slave-list"
}
},
"title": "Input Parameters",
"type": "object"
}
{
"$schema": "http://json-schema.org/draft-07/schema",
"properties": {
"slave-instance-information-list": {
"title": "JSON list of slave information dumped as text",
"type": "string"
},
"monitor-base-url": {
"title": "Base URL of the used monitor",
"type": "string"
},
"kedifa-csr-url": {
"title": "kedifa-csr-url",
"type": "string"
},
"backend-client-csr-url": {
"title": "backend-client-csr-url",
"type": "string"
},
"node-information-json": {
"title": "node-information-json",
"type": "string"
},
"backend-haproxy-statistic-url": {
"title": "backend-haproxy-statistic-url",
"type": "string"
},
"csr-certificate": {
"title": "csr-certificate",
"type": "string"
},
"public-ipv4": {
"title": "Public IPv4",
"type": "string"
},
"private-ipv4": {
"title": "Private IPv4",
"type": "string"
}
},
"title": "Input Parameters",
"type": "object"
}
This diff is collapsed.
......@@ -12,7 +12,7 @@
{%- set generic_instance_parameter_dict = { 'cache_access': cache_access, 'local_ipv4': instance_parameter_dict['ipv4-random'], 'http_port': configuration['plain_http_port'], 'https_port': configuration['port']} %}
{%- set slave_log_dict = {} %}
{%- set slave_instance_information_list = [] %}
{%- set slave_instance_list = json_module.loads(configuration['extra_slave_instance_list']) %}
{%- set slave_instance_list = configuration['extra_slave_instance_list'] %}
{%- if master_key_download_url %}
{%- do kedifa_updater_mapping.append((master_key_download_url, frontend_haproxy_configuration['master-certificate'], apache_certificate)) %}
{%- else %}
......@@ -50,9 +50,6 @@ context =
'RSA-3DES-EDE-CBC-SHA': 'DES-CBC3-SHA'
} %}
{%- set SCHEME_DEFAULT_PORT_MAPPING = {'http': 80, 'https': 443, '': None} %}
{%- for key in ['enable-http2-by-default'] %}
{%- do configuration.__setitem__(key, ('' ~ configuration[key]).lower() in TRUE_VALUES) %}
{%- endfor %}
{#- Loop thought slave list to set up slaves #}
{%- for slave_instance in slave_instance_list %}
{#- Prepare slave parameters: #}
......@@ -152,11 +149,16 @@ context =
{%- do part_list.extend([slave_ln_section]) %}
{%- set slave_log_folder = '${logrotate-directory:logrotate-backup}/' + slave_reference + "-logs" %}
{#- Pass backend timeout values #}
{%- for key in ['backend-connect-timeout', 'backend-connect-retries', 'request-timeout', 'authenticate-to-backend'] %}
{%- for key in ['backend-connect-timeout', 'backend-connect-retries', 'authenticate-to-backend'] %}
{%- if slave_instance.get(key, '') == '' %}
{%- do slave_instance.__setitem__(key, configuration[key]) %}
{%- endif %}
{%- endfor %}
{%- for key in ['request-timeout'] %}
{%- if slave_instance.get(key, '') == '' %}
{%- do slave_instance.__setitem__(key, configuration.get(key, FRONTEND_DEFAULTS[key])) %}
{%- endif %}
{%- endfor %}
{%- do slave_instance.__setitem__('strict-transport-security', int(slave_instance['strict-transport-security'])) %}
{#- Setup active check #}
{%- if slave_instance['health-check'] %}
......@@ -223,9 +225,29 @@ context =
{%- do slave_instance.__setitem__('enable-http2', False) %}
{%- do slave_instance.__setitem__('enable-http3', False) %}
{%- else %}
{%- do slave_instance.__setitem__('enable-http2', ('' ~ slave_instance.get('enable-http2', configuration['enable-http2-by-default'])).lower() in TRUE_VALUES) %}
{%- do slave_instance.__setitem__(
'enable-http2',
(
'' ~ slave_instance.get(
'enable-http2',
configuration['user'].get(
'enable-http2',
FRONTEND_USER_DEFAULTS['enable-http2']
)
)
).lower() in TRUE_VALUES) %}
{%- if slave_instance['enable-http2'] %}
{%- do slave_instance.__setitem__('enable-http3', ('' ~ slave_instance.get('enable-http3', configuration['enable-http3'])).lower() in TRUE_VALUES) %}
{%- do slave_instance.__setitem__(
'enable-http3',
(
'' ~ slave_instance.get(
'enable-http3',
configuration['user'].get(
'enable-http3',
FRONTEND_USER_DEFAULTS['enable-http3']
)
)
).lower() in TRUE_VALUES) %}
{%- else %}
{%- do slave_instance.__setitem__('enable-http3', False) %}
{%- endif %}
......@@ -270,7 +292,7 @@ log-directory = {{ '${slave-log-directory-dict:' + slave_reference + '}' }}
name = ${:_buildout_section_name_}
log = {{slave_parameter_dict['access_log'] }} {{slave_parameter_dict['frontend_log'] }} {{slave_parameter_dict['backend_log'] }}
backup = {{ '${' + slave_log_directory_section + ':log-directory}' }}
rotate-num = {{ dumps('' ~ configuration['rotate-num']) }}
rotate-num = {{ configuration['user']['expert'].get('rotate-num', FRONTEND_USER_DEFAULTS['expert']['rotate-num']) }}
# disable delayed compression, as log filenames shall be stable
delaycompress =
......@@ -357,8 +379,8 @@ extra-context =
[{{ slave_configuration_section_name }}]
certificate = {{ certificate }}
https_port = {{ dumps('' ~ configuration['port']) }}
http_port = {{ dumps('' ~ configuration['plain_http_port']) }}
https_port = {{ configuration['user']['expert'].get('frontend-haproxy-https-port', FRONTEND_USER_DEFAULTS['expert']['frontend-haproxy-https-port']) }}
http_port = {{ configuration['user']['expert'].get('frontend-haproxy-http-port', FRONTEND_USER_DEFAULTS['expert']['frontend-haproxy-http-port']) }}
local_ipv4 = {{ dumps('' ~ instance_parameter_dict['ipv4-random']) }}
{%- for key, value in slave_instance.items() %}
{%- if value is not none %}
......@@ -501,7 +523,7 @@ extra-context =
{%- endfor %}
local-ipv4 = {{ dumps('' ~ instance_parameter_dict['ipv4-random']) }}
global-ipv6 = ${slap-configuration:ipv6-random}
request-timeout = {{ dumps('' ~ configuration['request-timeout']) }}
request-timeout = {{ configuration.get('request-timeout', FRONTEND_DEFAULTS['request-timeout']) }}
autocert-directory = {{ frontend_directory['autocert'] }}
##</Frontend haproxy>
......@@ -538,9 +560,9 @@ extra-context =
{%- endfor %}
local-ipv4 = {{ dumps(instance_parameter_dict['ipv4-random']) }}
global-ipv6 = ${slap-configuration:ipv6-random}
request-timeout = {{ dumps(configuration['request-timeout']) }}
backend-connect-timeout = {{ dumps(configuration['backend-connect-timeout']) }}
backend-connect-retries = {{ dumps(configuration['backend-connect-retries']) }}
request-timeout = {{ configuration.get('request-timeout', FRONTEND_DEFAULTS['request-timeout']) }}
backend-connect-timeout = {{ configuration['backend-connect-timeout'] }}
backend-connect-retries = {{ configuration['backend-connect-retries'] }}
[template-expose-csr-link-csr]
recipe = plone.recipe.command
......
......@@ -77,6 +77,14 @@ init =
<= schema-json-to-default
input = {{ software_parameter_dict['instance_slave_input_schema'] }}
[instance-frontend-default]
<= schema-json-to-default
input = {{ software_parameter_dict['instance_frontend_input_schema'] }}
[instance-frontend-user-default]
<= schema-json-to-default
input = {{ software_parameter_dict['instance_frontend_user_input_schema'] }}
[instance-default]
<= schema-json-to-default
input = {{ software_parameter_dict['instance_input_schema'] }}
......@@ -89,6 +97,8 @@ extra-context =
import furl_module furl
raw software_type single-custom-personal
key SLAVE_DEFAULTS instance-slave-default:defaults
key FRONTEND_DEFAULTS instance-frontend-default:defaults
key FRONTEND_USER_DEFAULTS instance-frontend-user-default:defaults
[dynamic-profile-master]
< = jinja2-template-base
......
......@@ -98,6 +98,8 @@ template_validate_script = ${template-validate-script:target}
template_wrapper = ${template-wrapper:output}
template_expose_csr_nginx_conf = ${template-expose-csr-nginx-conf:target}
instance_slave_input_schema = ${instance-slave-input-schema:target}
instance_frontend_input_schema = ${instance-frontend-input-schema:target}
instance_frontend_user_input_schema = ${instance-frontend-user-input-schema:target}
instance_input_schema = ${instance-input-schema:target}
# directories
......@@ -215,6 +217,12 @@ output = ${buildout:directory}/template-wrapper.cfg
[instance-slave-input-schema]
<=download-profile
[instance-frontend-input-schema]
<=download-profile
[instance-frontend-user-input-schema]
<=download-profile
[instance-input-schema]
<=download-profile
......
......@@ -4,11 +4,12 @@
"serialisation": "xml",
"software-type": {
"custom-personal": {
"description": "",
"description": "The Rapid.CDN Cluster",
"index": 2,
"request": "instance-input-schema.json",
"response": "instance-output-schema.json",
"title": "Custom Personal"
"title": "Rapid.CDN Cluster",
"serialisation": "json-in-xml"
},
"custom-personal-slave": {
"description": "Custom Personal",
......@@ -25,7 +26,8 @@
"request": "instance-input-schema.json",
"response": "instance-output-schema.json",
"software-type": "default",
"title": "Default"
"title": "Default",
"serialisation": "json-in-xml"
},
"default-slave": {
"description": "Default",
......@@ -35,6 +37,22 @@
"shared": true,
"software-type": "default",
"title": "Default (slave)"
},
"single-custom-personal": {
"index": 100,
"request": "instance-frontend-input-schema.json",
"response": "instance-frontend-output-schema.json",
"software-type": "single-custom-personal",
"title": "[Technical] Frontend node",
"serialisation": "json-in-xml"
},
"kedifa": {
"index": 101,
"request": "instance-kedifa-input-schema.json",
"response": "instance-kedifa-output-schema.json",
"software-type": "kedifa",
"title": "[Technical] KeDiFa node",
"serialisation": "json-in-xml"
}
}
}
This diff is collapsed.
[
{
"automatic-internal-backend-client-caucase-csr": "false",
"automatic-internal-kedifa-caucase-csr": "false",
"caucase_port": "15090",
"_": {
"automatic-internal-backend-client-caucase-csr": false,
"automatic-internal-kedifa-caucase-csr": false,
"expert": {
"caucase-port": 8501,
"monitor-httpd-port": 8401
},
"frontend-node-dict": {
"caddy-frontend-1": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"kedifa-node": {
"expert": {
"caucase-port": 15090,
"kedifa-port": 15080,
"monitor-httpd-port": 8402
}
},
"request-timeout": 12
},
"full_address_list": [],
"instance_title": "testing partition 0",
"kedifa_port": "15080",
"plain_http_port": "11080",
"port": "11443",
"root_instance_title": "testing partition 0",
"slap_computer_id": "local",
"slap_computer_partition_id": "T-0",
......@@ -18,11 +37,11 @@
},
{
"_": {
"caucase_port": "15090",
"caucase_port": 15090,
"cluster-identification": "testing partition 0",
"kedifa_port": "15080",
"kedifa_port": 15080,
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": "8402",
"monitor-httpd-port": 8402,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"rotate-num": 4000,
......@@ -40,38 +59,22 @@
},
{
"_": {
"apache-certificate": "",
"apache-key": "",
"authenticate-to-backend": false,
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8990",
"backend-connect-retries": 3,
"backend-connect-timeout": 5,
"backend-haproxy-http-port": 21080,
"backend-haproxy-https-port": 21443,
"backend-haproxy-statistic-port": 21444,
"ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-SHA ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA AES256-SHA AES128-SHA ECDHE-RSA-DES-CBC3-SHA DES-CBC3-SHA",
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8501",
"cluster-identification": "testing partition 0",
"disk-cache-size": "8G",
"domain": "example.org",
"enable-http2-by-default": true,
"enable-http3": false,
"extra_slave_instance_list": "[]",
"frontend-name": "caddy-frontend-1",
"http3-port": 443,
"extra_slave_instance_list": [],
"kedifa-caucase-url": "http://[@@_ipv6_address@@]:15090",
"master-key-download-url": "https://[@@_ipv6_address@@]:15080/@@master-key-download-url_endpoint@@",
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": 8411,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"plain_http_port": "11080",
"port": "11443",
"ram-cache-size": "1G",
"re6st-verification-url": null,
"request-timeout": 600,
"rotate-num": 4000,
"slave-introspection-https-port": 22443,
"slave-kedifa-information": "{}"
"slave-kedifa-information": "{}",
"user": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"full_address_list": [],
"instance_title": "caddy-frontend-1",
......
[
{
"caucase_port": "15090",
"_": {
"expert": {
"caucase-port": 8501,
"monitor-httpd-port": 8401
},
"frontend-node-dict": {
"caddy-frontend-1": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"kedifa-node": {
"expert": {
"caucase-port": 15090,
"kedifa-port": 15080,
"monitor-httpd-port": 8402
}
}
},
"full_address_list": [],
"instance_title": "testing partition 0",
"kedifa_port": "15080",
"plain_http_port": "11080",
"port": "11443",
"root_instance_title": "testing partition 0",
"slap_computer_id": "local",
"slap_computer_partition_id": "T-0",
......@@ -16,11 +34,11 @@
},
{
"_": {
"caucase_port": "15090",
"caucase_port": 15090,
"cluster-identification": "testing partition 0",
"kedifa_port": "15080",
"kedifa_port": 15080,
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": "8402",
"monitor-httpd-port": 8402,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"rotate-num": 4000,
......@@ -38,38 +56,22 @@
},
{
"_": {
"apache-certificate": "",
"apache-key": "",
"authenticate-to-backend": false,
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8990",
"backend-connect-retries": 3,
"backend-connect-timeout": 5,
"backend-haproxy-http-port": 21080,
"backend-haproxy-https-port": 21443,
"backend-haproxy-statistic-port": 21444,
"ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-SHA ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA AES256-SHA AES128-SHA ECDHE-RSA-DES-CBC3-SHA DES-CBC3-SHA",
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8501",
"cluster-identification": "testing partition 0",
"disk-cache-size": "8G",
"domain": "example.org",
"enable-http2-by-default": true,
"enable-http3": false,
"extra_slave_instance_list": "[]",
"frontend-name": "caddy-frontend-1",
"http3-port": 443,
"extra_slave_instance_list": [],
"kedifa-caucase-url": "http://[@@_ipv6_address@@]:15090",
"master-key-download-url": "https://[@@_ipv6_address@@]:15080/@@master-key-download-url_endpoint@@",
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": 8411,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"plain_http_port": "11080",
"port": "11443",
"ram-cache-size": "1G",
"re6st-verification-url": null,
"request-timeout": 600,
"rotate-num": 4000,
"slave-introspection-https-port": 22443,
"slave-kedifa-information": "{}"
"slave-kedifa-information": "{}",
"user": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"full_address_list": [],
"instance_title": "caddy-frontend-1",
......
[
{
"caucase_port": "15090",
"_": {
"domain": "example.com",
"expert": {
"caucase-port": 8501,
"monitor-httpd-port": 8401
},
"frontend-node-dict": {
"caddy-frontend-1": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"kedifa-node": {
"expert": {
"caucase-port": 15090,
"kedifa-port": 15080,
"monitor-httpd-port": 8402
}
}
},
"full_address_list": [],
"instance_title": "testing partition 0",
"kedifa_port": "15080",
"plain_http_port": "11080",
"port": "11443",
"root_instance_title": "testing partition 0",
"slap_computer_id": "local",
"slap_computer_partition_id": "T-0",
......@@ -17,11 +35,11 @@
},
{
"_": {
"caucase_port": "15090",
"caucase_port": 15090,
"cluster-identification": "testing partition 0",
"kedifa_port": "15080",
"kedifa_port": 15080,
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": "8402",
"monitor-httpd-port": 8402,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"rotate-num": 4000,
......@@ -39,38 +57,22 @@
},
{
"_": {
"apache-certificate": "",
"apache-key": "",
"authenticate-to-backend": false,
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8990",
"backend-connect-retries": 3,
"backend-connect-timeout": 5,
"backend-haproxy-http-port": 21080,
"backend-haproxy-https-port": 21443,
"backend-haproxy-statistic-port": 21444,
"ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-SHA ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA AES256-SHA AES128-SHA ECDHE-RSA-DES-CBC3-SHA DES-CBC3-SHA",
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8501",
"cluster-identification": "testing partition 0",
"disk-cache-size": "8G",
"domain": "example.com",
"enable-http2-by-default": true,
"enable-http3": false,
"extra_slave_instance_list": "[]",
"frontend-name": "caddy-frontend-1",
"http3-port": 443,
"extra_slave_instance_list": [],
"kedifa-caucase-url": "http://[@@_ipv6_address@@]:15090",
"master-key-download-url": "https://[@@_ipv6_address@@]:15080/@@master-key-download-url_endpoint@@",
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": 8411,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"plain_http_port": "11080",
"port": "11443",
"ram-cache-size": "1G",
"re6st-verification-url": null,
"request-timeout": 600,
"rotate-num": 4000,
"slave-introspection-https-port": 22443,
"slave-kedifa-information": "{}"
"slave-kedifa-information": "{}",
"user": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"full_address_list": [],
"instance_title": "caddy-frontend-1",
......
[
{
"caucase_port": "15090",
"_": {
"domain": "example.com",
"expert": {
"caucase-port": 8501,
"monitor-httpd-port": 8401,
"re6st-verification-url": "http://[2001:67c:1254:4::1]/index.html"
},
"frontend-node-dict": {
"caddy-frontend-1": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"kedifa-node": {
"expert": {
"caucase-port": 15090,
"kedifa-port": 15080,
"monitor-httpd-port": 8402
}
},
"request-timeout": 12
},
"full_address_list": [],
"instance_title": "testing partition 0",
"kedifa_port": "15080",
"plain_http_port": "11080",
"port": "11443",
"re6st-verification-url": "http://@@_ipv4_address@@:@@_server_http_port@@/re6st.html",
"root_instance_title": "testing partition 0",
"slap_computer_id": "local",
"slap_computer_partition_id": "T-0",
......@@ -26,11 +45,11 @@
},
{
"_": {
"caucase_port": "15090",
"caucase_port": 15090,
"cluster-identification": "testing partition 0",
"kedifa_port": "15080",
"kedifa_port": 15080,
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": "8402",
"monitor-httpd-port": 8402,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"rotate-num": 4000,
......@@ -54,38 +73,28 @@
},
{
"_": {
"apache-certificate": "",
"apache-key": "",
"authenticate-to-backend": false,
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8990",
"backend-connect-retries": 3,
"backend-connect-timeout": 5,
"backend-haproxy-http-port": 21080,
"backend-haproxy-https-port": 21443,
"backend-haproxy-statistic-port": 21444,
"ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-SHA ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA AES256-SHA AES128-SHA ECDHE-RSA-DES-CBC3-SHA DES-CBC3-SHA",
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8501",
"cluster-identification": "testing partition 0",
"disk-cache-size": "8G",
"domain": "example.com",
"enable-http2-by-default": true,
"enable-http3": false,
"extra_slave_instance_list": "[{\"enable_cache\": true, \"slave_reference\": \"_default\", \"url\": \"http://@@_ipv4_address@@:@@_server_http_port@@/\"}]",
"frontend-name": "caddy-frontend-1",
"http3-port": 443,
"extra_slave_instance_list": [
{
"enable_cache": true,
"slave_reference": "_default",
"url": "http://@@_ipv4_address@@:@@_server_http_port@@/"
}
],
"kedifa-caucase-url": "http://[@@_ipv6_address@@]:15090",
"master-key-download-url": "https://[@@_ipv6_address@@]:15080/@@master-key-download-url_endpoint@@",
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": 8411,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"plain_http_port": "11080",
"port": "11443",
"ram-cache-size": "1G",
"re6st-verification-url": "http://@@_ipv4_address@@:@@_server_http_port@@/re6st.html",
"request-timeout": 600,
"rotate-num": 4000,
"slave-introspection-https-port": 22443,
"slave-kedifa-information": "{\"_default\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@default_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@default_key-generate-auth-url@@/@@default_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@default_key-generate-auth-url@@?auth=\"}}"
"slave-kedifa-information": "{\"_default\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@default_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@default_key-generate-auth-url@@/@@default_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@default_key-generate-auth-url@@?auth=\"}}",
"user": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"full_address_list": [],
"instance_title": "caddy-frontend-1",
......
[
{
"-frontend-1-state": "started",
"-frontend-2-state": "stopped",
"-frontend-quantity": "2",
"-sla-2-computer_guid": "local",
"caucase_port": "15090",
"_": {
"domain": "example.com",
"expert": {
"caucase-port": 8501,
"monitor-httpd-port": 8401
},
"frontend-node-dict": {
"caddy-frontend-1": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"kedifa-node": {
"expert": {
"caucase-port": 15090,
"kedifa-port": 15080,
"monitor-httpd-port": 8402
}
}
},
"full_address_list": [],
"instance_title": "testing partition 0",
"kedifa_port": "15080",
"plain_http_port": "11080",
"port": "11443",
"root_instance_title": "testing partition 0",
"slap_computer_id": "local",
"slap_computer_partition_id": "T-0",
......@@ -29,11 +43,11 @@
},
{
"_": {
"caucase_port": "15090",
"caucase_port": 15090,
"cluster-identification": "testing partition 0",
"kedifa_port": "15080",
"kedifa_port": 15080,
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": "8402",
"monitor-httpd-port": 8402,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"rotate-num": 4000,
......@@ -57,38 +71,28 @@
},
{
"_": {
"apache-certificate": "",
"apache-key": "",
"authenticate-to-backend": false,
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8990",
"backend-connect-retries": 3,
"backend-connect-timeout": 5,
"backend-haproxy-http-port": 21080,
"backend-haproxy-https-port": 21443,
"backend-haproxy-statistic-port": 21444,
"ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-SHA ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA AES256-SHA AES128-SHA ECDHE-RSA-DES-CBC3-SHA DES-CBC3-SHA",
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8501",
"cluster-identification": "testing partition 0",
"disk-cache-size": "8G",
"domain": "example.com",
"enable-http2-by-default": true,
"enable-http3": false,
"extra_slave_instance_list": "[{\"enable_cache\": true, \"slave_reference\": \"_replicate\", \"url\": \"http://@@_ipv4_address@@:@@_server_http_port@@/\"}]",
"frontend-name": "caddy-frontend-1",
"http3-port": 443,
"extra_slave_instance_list": [
{
"enable_cache": true,
"slave_reference": "_replicate",
"url": "http://@@_ipv4_address@@:@@_server_http_port@@/"
}
],
"kedifa-caucase-url": "http://[@@_ipv6_address@@]:15090",
"master-key-download-url": "https://[@@_ipv6_address@@]:15080/@@master-key-download-url_endpoint@@",
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": 8411,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"plain_http_port": "11080",
"port": "11443",
"ram-cache-size": "1G",
"re6st-verification-url": null,
"request-timeout": 600,
"rotate-num": 4000,
"slave-introspection-https-port": 22443,
"slave-kedifa-information": "{\"_replicate\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@replicate_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@replicate_key-generate-auth-url@@/@@replicate_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@replicate_key-generate-auth-url@@?auth=\"}}"
"slave-kedifa-information": "{\"_replicate\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@replicate_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@replicate_key-generate-auth-url@@/@@replicate_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@replicate_key-generate-auth-url@@?auth=\"}}",
"user": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"full_address_list": [],
"instance_title": "caddy-frontend-1",
......@@ -99,50 +103,5 @@
"slap_software_type": "single-custom-personal",
"slave_instance_list": [],
"timestamp": "@@TIMESTAMP@@"
},
{
"_": {
"apache-certificate": "",
"apache-key": "",
"authenticate-to-backend": false,
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8990",
"backend-connect-retries": 3,
"backend-connect-timeout": 5,
"backend-haproxy-http-port": 21080,
"backend-haproxy-https-port": 21443,
"backend-haproxy-statistic-port": 21444,
"ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-SHA ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA AES256-SHA AES128-SHA ECDHE-RSA-DES-CBC3-SHA DES-CBC3-SHA",
"cluster-identification": "testing partition 0",
"disk-cache-size": "8G",
"domain": "example.com",
"enable-http2-by-default": true,
"enable-http3": false,
"extra_slave_instance_list": "[{\"enable_cache\": true, \"slave_reference\": \"_replicate\", \"url\": \"http://@@_ipv4_address@@:@@_server_http_port@@/\"}]",
"frontend-name": "caddy-frontend-2",
"http3-port": 443,
"kedifa-caucase-url": "http://[@@_ipv6_address@@]:15090",
"master-key-download-url": "https://[@@_ipv6_address@@]:15080/@@master-key-download-url_endpoint@@",
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": 8412,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"plain_http_port": "11080",
"port": "11443",
"ram-cache-size": "1G",
"re6st-verification-url": null,
"request-timeout": 600,
"rotate-num": 4000,
"slave-introspection-https-port": 22443,
"slave-kedifa-information": "{\"_replicate\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@replicate_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@replicate_key-generate-auth-url@@/@@replicate_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@replicate_key-generate-auth-url@@?auth=\"}}"
},
"full_address_list": [],
"instance_title": "caddy-frontend-2",
"root_instance_title": "testing partition 0",
"slap_computer_id": "local",
"slap_computer_partition_id": "T-3",
"slap_software_release_url": "@@00getSoftwareURL@@",
"slap_software_type": "single-custom-personal",
"slave_instance_list": [],
"timestamp": "@@TIMESTAMP@@"
}
]
[
{
"caucase_port": "15090",
"_": {
"ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384",
"domain": "example.com",
"expert": {
"caucase-port": 8501,
"monitor-httpd-port": 8401
},
"frontend-node-dict": {
"caddy-frontend-1": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"kedifa-node": {
"expert": {
"caucase-port": 15090,
"kedifa-port": 15080,
"monitor-httpd-port": 8402
}
},
"request-timeout": 12
},
"full_address_list": [],
"instance_title": "testing partition 0",
"kedifa_port": "15080",
"plain_http_port": "11080",
"port": "11443",
"root_instance_title": "testing partition 0",
"slap_computer_id": "local",
"slap_computer_partition_id": "T-0",
......@@ -34,11 +53,11 @@
},
{
"_": {
"caucase_port": "15090",
"caucase_port": 15090,
"cluster-identification": "testing partition 0",
"kedifa_port": "15080",
"kedifa_port": 15080,
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": "8402",
"monitor-httpd-port": 8402,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"rotate-num": 4000,
......@@ -68,38 +87,34 @@
},
{
"_": {
"apache-certificate": "",
"apache-key": "",
"authenticate-to-backend": false,
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8990",
"backend-connect-retries": 3,
"backend-connect-timeout": 5,
"backend-haproxy-http-port": 21080,
"backend-haproxy-https-port": 21443,
"backend-haproxy-statistic-port": 21444,
"ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384",
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8501",
"cluster-identification": "testing partition 0",
"disk-cache-size": "8G",
"domain": "example.com",
"enable-http2-by-default": true,
"enable-http3": false,
"extra_slave_instance_list": "[{\"enable_cache\": true, \"slave_reference\": \"_default_ciphers\", \"url\": \"http://@@_ipv4_address@@:@@_server_http_port@@/\"}, {\"ciphers\": \"ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256\", \"enable_cache\": true, \"slave_reference\": \"_own_ciphers\", \"url\": \"http://@@_ipv4_address@@:@@_server_http_port@@/\"}]",
"frontend-name": "caddy-frontend-1",
"http3-port": 443,
"extra_slave_instance_list": [
{
"enable_cache": true,
"slave_reference": "_default_ciphers",
"url": "http://@@_ipv4_address@@:@@_server_http_port@@/"
},
{
"ciphers": "ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256",
"enable_cache": true,
"slave_reference": "_own_ciphers",
"url": "http://@@_ipv4_address@@:@@_server_http_port@@/"
}
],
"kedifa-caucase-url": "http://[@@_ipv6_address@@]:15090",
"master-key-download-url": "https://[@@_ipv6_address@@]:15080/@@master-key-download-url_endpoint@@",
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": 8411,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"plain_http_port": "11080",
"port": "11443",
"ram-cache-size": "1G",
"re6st-verification-url": null,
"request-timeout": 600,
"rotate-num": 4000,
"slave-introspection-https-port": 22443,
"slave-kedifa-information": "{\"_default_ciphers\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@default_ciphers_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@default_ciphers_key-generate-auth-url@@/@@default_ciphers_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@default_ciphers_key-generate-auth-url@@?auth=\"}, \"_own_ciphers\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@own_ciphers_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@own_ciphers_key-generate-auth-url@@/@@default_ciphers_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@own_ciphers_key-generate-auth-url@@?auth=\"}}"
"slave-kedifa-information": "{\"_default_ciphers\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@default_ciphers_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@default_ciphers_key-generate-auth-url@@/@@default_ciphers_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@default_ciphers_key-generate-auth-url@@?auth=\"}, \"_own_ciphers\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@own_ciphers_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@own_ciphers_key-generate-auth-url@@/@@default_ciphers_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@own_ciphers_key-generate-auth-url@@?auth=\"}}",
"user": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"full_address_list": [],
"instance_title": "caddy-frontend-1",
......
[
{
"caucase_port": "15090",
"_": {
"domain": "example.com",
"expert": {
"caucase-port": 8501,
"monitor-httpd-port": 8401
},
"frontend-node-dict": {
"caddy-frontend-1": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"kedifa-node": {
"expert": {
"caucase-port": 15090,
"kedifa-port": 15080,
"monitor-httpd-port": 8402
}
},
"request-timeout": 12
},
"full_address_list": [],
"instance_title": "testing partition 0",
"kedifa_port": "15080",
"plain_http_port": "11080",
"port": "11443",
"request-timeout": "12",
"root_instance_title": "testing partition 0",
"slap_computer_id": "local",
"slap_computer_partition_id": "T-0",
......@@ -49,11 +67,11 @@
},
{
"_": {
"caucase_port": "15090",
"caucase_port": 15090,
"cluster-identification": "testing partition 0",
"kedifa_port": "15080",
"kedifa_port": 15080,
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": "8402",
"monitor-httpd-port": 8402,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"rotate-num": 4000,
......@@ -94,38 +112,45 @@
},
{
"_": {
"apache-certificate": "",
"apache-key": "",
"authenticate-to-backend": false,
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8990",
"backend-connect-retries": 3,
"backend-connect-timeout": 5,
"backend-haproxy-http-port": 21080,
"backend-haproxy-https-port": 21443,
"backend-haproxy-statistic-port": 21444,
"ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-SHA ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA AES256-SHA AES128-SHA ECDHE-RSA-DES-CBC3-SHA DES-CBC3-SHA",
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8501",
"cluster-identification": "testing partition 0",
"disk-cache-size": "8G",
"domain": "example.com",
"enable-http2-by-default": true,
"enable-http3": false,
"extra_slave_instance_list": "[{\"custom_domain\": \"*.example.com\", \"server-alias\": \"example.com\", \"slave_reference\": \"_01wildcard\", \"url\": \"http://@@_ipv4_address@@:@@_server_http_port@@/01wildcard\"}, {\"custom_domain\": \"*.alias1.example.com\", \"server-alias\": \"alias1.example.com\", \"slave_reference\": \"_02wildcard\", \"url\": \"http://@@_ipv4_address@@:@@_server_http_port@@/02wildcard\"}, {\"custom_domain\": \"zspecific.example.com\", \"slave_reference\": \"_03zspecific\", \"url\": \"http://@@_ipv4_address@@:@@_server_http_port@@/03zspecific\"}, {\"custom_domain\": \"zspecific.alias1.example.com\", \"slave_reference\": \"_04zspecific\", \"url\": \"http://@@_ipv4_address@@:@@_server_http_port@@/04zspecific\"}]",
"frontend-name": "caddy-frontend-1",
"http3-port": 443,
"extra_slave_instance_list": [
{
"custom_domain": "*.example.com",
"server-alias": "example.com",
"slave_reference": "_01wildcard",
"url": "http://@@_ipv4_address@@:@@_server_http_port@@/01wildcard"
},
{
"custom_domain": "*.alias1.example.com",
"server-alias": "alias1.example.com",
"slave_reference": "_02wildcard",
"url": "http://@@_ipv4_address@@:@@_server_http_port@@/02wildcard"
},
{
"custom_domain": "zspecific.example.com",
"slave_reference": "_03zspecific",
"url": "http://@@_ipv4_address@@:@@_server_http_port@@/03zspecific"
},
{
"custom_domain": "zspecific.alias1.example.com",
"slave_reference": "_04zspecific",
"url": "http://@@_ipv4_address@@:@@_server_http_port@@/04zspecific"
}
],
"kedifa-caucase-url": "http://[@@_ipv6_address@@]:15090",
"master-key-download-url": "https://[@@_ipv6_address@@]:15080/@@master-key-download-url_endpoint@@",
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": 8411,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"plain_http_port": "11080",
"port": "11443",
"ram-cache-size": "1G",
"re6st-verification-url": null,
"request-timeout": "12",
"rotate-num": 4000,
"slave-introspection-https-port": 22443,
"slave-kedifa-information": "{\"_01wildcard\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@01wildcard_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@01wildcard_key-generate-auth-url@@/@@01wildcard_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@01wildcard_key-generate-auth-url@@?auth=\"}, \"_02wildcard\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@02wildcard_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@02wildcard_key-generate-auth-url@@/@@01wildcard_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@02wildcard_key-generate-auth-url@@?auth=\"}, \"_03zspecific\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@03zspecific_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@03zspecific_key-generate-auth-url@@/@@01wildcard_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@03zspecific_key-generate-auth-url@@?auth=\"}, \"_04zspecific\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@04zspecific_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@04zspecific_key-generate-auth-url@@/@@01wildcard_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@04zspecific_key-generate-auth-url@@?auth=\"}}"
"slave-kedifa-information": "{\"_01wildcard\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@01wildcard_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@01wildcard_key-generate-auth-url@@/@@01wildcard_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@01wildcard_key-generate-auth-url@@?auth=\"}, \"_02wildcard\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@02wildcard_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@02wildcard_key-generate-auth-url@@/@@01wildcard_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@02wildcard_key-generate-auth-url@@?auth=\"}, \"_03zspecific\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@03zspecific_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@03zspecific_key-generate-auth-url@@/@@01wildcard_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@03zspecific_key-generate-auth-url@@?auth=\"}, \"_04zspecific\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@04zspecific_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@04zspecific_key-generate-auth-url@@/@@01wildcard_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@04zspecific_key-generate-auth-url@@?auth=\"}}",
"user": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"full_address_list": [],
"instance_title": "caddy-frontend-1",
......
[
{
"apache-certificate": "@@certificate_pem@@",
"apache-key": "@@key_pem@@",
"caucase_port": "15090",
"_": {
"certificate-chain": "@@certificate_pem@@\n@@key_pem@@",
"domain": "example.com",
"expert": {
"caucase-port": 8501,
"monitor-httpd-port": 8401
},
"frontend-node-dict": {
"caddy-frontend-1": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"kedifa-node": {
"expert": {
"caucase-port": 15090,
"kedifa-port": 15080,
"monitor-httpd-port": 8402
}
}
},
"full_address_list": [],
"instance_title": "testing partition 0",
"kedifa_port": "15080",
"plain_http_port": "11080",
"port": "11443",
"root_instance_title": "testing partition 0",
"slap_computer_id": "local",
"slap_computer_partition_id": "T-0",
......@@ -27,11 +44,11 @@
},
{
"_": {
"caucase_port": "15090",
"caucase_port": 15090,
"cluster-identification": "testing partition 0",
"kedifa_port": "15080",
"kedifa_port": 15080,
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": "8402",
"monitor-httpd-port": 8402,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"rotate-num": 4000,
......@@ -55,38 +72,28 @@
},
{
"_": {
"apache-certificate": "@@certificate_pem@@",
"apache-key": "@@key_pem@@",
"authenticate-to-backend": false,
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8990",
"backend-connect-retries": 3,
"backend-connect-timeout": 5,
"backend-haproxy-http-port": 21080,
"backend-haproxy-https-port": 21443,
"backend-haproxy-statistic-port": 21444,
"ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-SHA ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA AES256-SHA AES128-SHA ECDHE-RSA-DES-CBC3-SHA DES-CBC3-SHA",
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8501",
"cluster-identification": "testing partition 0",
"disk-cache-size": "8G",
"domain": "example.com",
"enable-http2-by-default": true,
"enable-http3": false,
"extra_slave_instance_list": "[{\"enable_cache\": true, \"slave_reference\": \"_ssl_from_master_kedifa_overrides_master_certificate\", \"url\": \"http://@@_ipv4_address@@:@@_server_http_port@@/\"}]",
"frontend-name": "caddy-frontend-1",
"http3-port": 443,
"extra_slave_instance_list": [
{
"enable_cache": true,
"slave_reference": "_ssl_from_master_kedifa_overrides_master_certificate",
"url": "http://@@_ipv4_address@@:@@_server_http_port@@/"
}
],
"kedifa-caucase-url": "http://[@@_ipv6_address@@]:15090",
"master-key-download-url": "https://[@@_ipv6_address@@]:15080/@@master-key-download-url_endpoint@@",
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": 8411,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"plain_http_port": "11080",
"port": "11443",
"ram-cache-size": "1G",
"re6st-verification-url": null,
"request-timeout": 600,
"rotate-num": 4000,
"slave-introspection-https-port": 22443,
"slave-kedifa-information": "{\"_ssl_from_master_kedifa_overrides_master_certificate\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_kedifa_overrides_master_certificate_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_kedifa_overrides_master_certificate_key-generate-auth-url@@/@@ssl_from_master_kedifa_overrides_master_certificate_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_kedifa_overrides_master_certificate_key-generate-auth-url@@?auth=\"}}"
"slave-kedifa-information": "{\"_ssl_from_master_kedifa_overrides_master_certificate\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_kedifa_overrides_master_certificate_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_kedifa_overrides_master_certificate_key-generate-auth-url@@/@@ssl_from_master_kedifa_overrides_master_certificate_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_kedifa_overrides_master_certificate_key-generate-auth-url@@?auth=\"}}",
"user": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"full_address_list": [],
"instance_title": "caddy-frontend-1",
......
[
{
"apache-certificate": "@@certificate_pem@@",
"apache-key": "@@key_pem@@",
"caucase_port": "15090",
"_": {
"certificate-chain": "@@certificate_pem@@\n@@key_pem@@",
"domain": "example.com",
"expert": {
"caucase-port": 8501,
"monitor-httpd-port": 8401
},
"frontend-node-dict": {
"caddy-frontend-1": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"kedifa-node": {
"expert": {
"caucase-port": 15090,
"kedifa-port": 15080,
"monitor-httpd-port": 8402
}
}
},
"full_address_list": [],
"instance_title": "testing partition 0",
"kedifa_port": "15080",
"plain_http_port": "11080",
"port": "11443",
"root_instance_title": "testing partition 0",
"slap_computer_id": "local",
"slap_computer_partition_id": "T-0",
......@@ -27,11 +44,11 @@
},
{
"_": {
"caucase_port": "15090",
"caucase_port": 15090,
"cluster-identification": "testing partition 0",
"kedifa_port": "15080",
"kedifa_port": 15080,
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": "8402",
"monitor-httpd-port": 8402,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"rotate-num": 4000,
......@@ -55,38 +72,28 @@
},
{
"_": {
"apache-certificate": "@@certificate_pem@@",
"apache-key": "@@key_pem@@",
"authenticate-to-backend": false,
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8990",
"backend-connect-retries": 3,
"backend-connect-timeout": 5,
"backend-haproxy-http-port": 21080,
"backend-haproxy-https-port": 21443,
"backend-haproxy-statistic-port": 21444,
"ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-SHA ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA AES256-SHA AES128-SHA ECDHE-RSA-DES-CBC3-SHA DES-CBC3-SHA",
"backend-client-caucase-url": "http://[@@_ipv6_address@@]:8501",
"cluster-identification": "testing partition 0",
"disk-cache-size": "8G",
"domain": "example.com",
"enable-http2-by-default": true,
"enable-http3": false,
"extra_slave_instance_list": "[{\"enable_cache\": true, \"slave_reference\": \"_ssl_from_master\", \"url\": \"http://@@_ipv4_address@@:@@_server_http_port@@/\"}]",
"frontend-name": "caddy-frontend-1",
"http3-port": 443,
"extra_slave_instance_list": [
{
"enable_cache": true,
"slave_reference": "_ssl_from_master",
"url": "http://@@_ipv4_address@@:@@_server_http_port@@/"
}
],
"kedifa-caucase-url": "http://[@@_ipv6_address@@]:15090",
"master-key-download-url": "https://[@@_ipv6_address@@]:15080/@@master-key-download-url_endpoint@@",
"monitor-cors-domains": "monitor.app.officejs.com",
"monitor-httpd-port": 8411,
"monitor-password": "@@monitor-password@@",
"monitor-username": "admin",
"plain_http_port": "11080",
"port": "11443",
"ram-cache-size": "1G",
"re6st-verification-url": null,
"request-timeout": 600,
"rotate-num": 4000,
"slave-introspection-https-port": 22443,
"slave-kedifa-information": "{\"_ssl_from_master\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_key-generate-auth-url@@/@@ssl_from_master_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_key-generate-auth-url@@?auth=\"}}"
"slave-kedifa-information": "{\"_ssl_from_master\": {\"kedifa-caucase-url\": \"http://[@@_ipv6_address@@]:15090\", \"key-download-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_key-generate-auth-url@@\", \"key-generate-auth-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_key-generate-auth-url@@/@@ssl_from_master_key-upload-url@@\", \"key-upload-url\": \"https://[@@_ipv6_address@@]:15080/@@ssl_from_master_key-generate-auth-url@@?auth=\"}}",
"user": {
"expert": {
"frontend-haproxy-http-port": 11080,
"frontend-haproxy-https-port": 11443,
"monitor-httpd-port": 8411
}
}
},
"full_address_list": [],
"instance_title": "caddy-frontend-1",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment