-
Notifications
You must be signed in to change notification settings - Fork 31
/
image.yaml
231 lines (223 loc) · 10.7 KB
/
image.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
schema_version: 1
name: jboss-datagrid-7/datagrid73-openshift
version: 1.8
description: "Red Hat JBoss Data Grid 7.3 for OpenShift container image"
from: registry.redhat.io/rhel7
labels:
- name: "com.redhat.component"
value: "jboss-datagrid-7-datagrid73-openshift-container"
- name: "org.jboss.product"
value: "datagrid"
- name: "org.jboss.product.version"
value: "7.3.8.GA"
- name: "org.jboss.product.datagrid.version"
value: "7.3.8.GA"
- name: "org.jboss.deployments-dir"
value: "/opt/datagrid/standalone/deployments"
- name: "com.redhat.deployments-dir"
value: "/opt/datagrid/standalone/deployments"
- name: "com.redhat.dev-mode"
value: "DEBUG:true"
description: "Environment variable used to enable development mode (debugging). A value of true will enable development mode."
- name: "com.redhat.dev-mode.port"
value: "DEBUG_PORT:8787"
description: "Environment variable used to specify the debug port. If not set, the default EAP debug port will be used (8787). Only applicable when development mode is enabled."
- name: "io.k8s.description"
value: "Provides a scalable in-memory distributed database designed for fast access to large volumes of data."
- name: "io.k8s.display-name"
value: "JBoss Data Grid 7.3"
- name: "io.openshift.expose-services"
value: "8080:http"
- name: "io.openshift.tags"
value: "datagrid,java,jboss,xpaas"
- name: "io.openshift.s2i.scripts-url"
value: "image:///usr/local/s2i"
envs:
- name: "LAUNCH_JBOSS_IN_BACKGROUND"
value: "true"
- name: "JBOSS_PRODUCT"
value: "datagrid"
- name: "JBOSS_DATAGRID_VERSION"
value: "7.3.8.GA"
- name: "PRODUCT_VERSION"
value: "7.3.8.GA"
- name: "JBOSS_HOME"
value: "/opt/datagrid"
- name: "JBOSS_MODULES_SYSTEM_PKGS"
value: "org.jboss.logmanager,jdk.nashorn.api"
- name: "DEFAULT_ADMIN_USERNAME"
value: "jdgadmin"
- name: "AB_PROMETHEUS_ENABLE"
value: "false"
description: "Enable the use of the Prometheus agent"
- name: "AB_PROMETHEUS_JMX_EXPORTER_PORT"
value: "9779"
description: "Port to use for the Prometheus agent"
- name: "JAVA_OPTS_APPEND"
example: "-Dfoo=bar"
description: "Server startup options."
- name: "JBOSS_MODULES_SYSTEM_PKGS_APPEND"
example: "org.jboss.byteman"
description: "Comma-separated list of package names that will be appended to the JBOSS_MODULES_SYSTEM_PKGS environment variable."
- name: "JGROUPS_CLUSTER_PASSWORD"
example: "miR0JaDR"
description: "A password to control access to the JGroup. Needs to be set consistently cluster-wide. The image default is to use the `OPENSHIFT_KUBE_PING_LABELS` variable value, however the JBoss application templates generate and supply a random value."
- name: CACHE_NAMES
description: "List of caches to configure. Defaults to default,memcached"
example: "addressbook,addressbook_indexed"
- name: DEFAULT_CACHE
description: "Indicates the default cache for this cache container."
example: "addressbook"
- name: CACHE_CONTAINER_START
description: "Should this cache container be started on server startup, or lazily when requested by a service or deployment. Defaults to LAZY"
example: "EAGER"
- name: CACHE_CONTAINER_STATISTICS
description: "Determines whether or not the cache container should collect statistics. Disable for optimal performance. Default is true"
example: "false"
- name: TRANSPORT_LOCK_TIMEOUT
description: "Infinispan uses a distributed lock to maintain a coherent transaction log during state transfer or rehashing, which means that only one cache can be doing state transfer or rehashing at the same time. This constraint is in place because more than one cache could be involved in a transaction. This timeout controls the time to wait to acquire a distributed lock. Defaults to 240000"
example: "120000"
- name: "CACHE_EXPIRATION_LIFESPAN"
description: "Maximum lifespan, in milliseconds, of a cache entry, after which the entry is expired cluster-wide."
example: "10000"
- name: "CACHE_EXPIRATION_MAX_IDLE"
description: "Maximum idle time, in milliseconds, a cache entry will be maintained in the cache. If the idle time is exceeded, then the entry will be expired cluster-wide. "
example: "10000"
- name: "CACHE_EXPIRATION_INTERVAL"
description: "Interval, in milliseconds, between subsequent runs to purge expired entries from memory and any cache stores. "
example: "5000"
- name: CONTAINER_SECURITY_ROLE_MAPPER
description: "Set a role mapper for this cache container. Valid values are: identity-role-mapper,common-name-role-mapper,cluster-role-mapper,custom-role-mapper"
example: "identity-role-mapper"
- name: CONTAINER_SECURITY_CUSTOM_ROLE_MAPPER_CLASS
description: "Class of the custom principal to role mapper"
example: "com.acme.CustomRoleMapper"
- name: CONTAINER_SECURITY_ROLES
description: "Defines role names and assigns permissions to them."
example: "admin=ALL,reader=READ,writer=WRITE"
- name: INFINISPAN_CONNECTORS
description: "Comma separated list of connectors to configure. Defaults to hotrod,memcached,rest. Beware, if you enable authorization or authentication on your cache you should remove memcached as the protocol is insecure."
example: "hotrod"
- name: HOTROD_SERVICE_NAME
description: "Name of the OpenShift service used to expose HotRod externally."
example: "DATAGRID_APP_HOTROD"
- name: HOTROD_AUTHENTICATION
description: "If defined the hotrod-connectors will be configured with authentication in the ApplicationRealm."
example: "true"
- name: HOTROD_ENCRYPTION
description: "If defined the hotrod-connectors will be configured with encryption in the ApplicationRealm."
example: "true"
- name: ENCRYPTION_REQUIRE_SSL_CLIENT_AUTH
description: "Whether to require client certificate authentication. Defaults to false."
example: "true"
- name: MEMCACHED_CACHE
description: "The name of the cache to use for the Memcached connector."
example: "memcached"
- name: REST_SECURITY_DOMAIN
description: "The security domain to use for authentication/authorization purposes. Defaults to none (no authentication)"
example: "other"
- name: "USERNAME"
example: "openshift"
description: "Username for JDG user"
- name: "PASSWORD"
example: "p@ssw0rd"
description: "The password to access the JDG Caches. Must be different than username; must not be root, admin, or administrator; must contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), and 1 non-alphanumeric symbol(s). (optional)"
- name: DATAGRID_SPLIT
example: true
description: "Allow multiple instances to share the same Persistent Volume. If set to true each instance will use a separate area within the Persistent Volume as its data directory. Default is unset."
- name: SCRIPT_DEBUG
description: If set to true, ensurses that the bash scripts are executed with the -x option, printing the commands and their arguments as they are executed.
example: "true"
- name: JAVA_MAX_MEM_RATIO
description: This is used to calculate a default maximal heap memory based on a containers restriction. If used in a container without any memory constraints for the container then this option has no effect. If there is a memory constraint then `-Xmx` is set to a ratio of the container available memory as set here. The default is `50` which means 50% of the available memory is used as an upper boundary. You can skip this mechanism by setting this value to `0` in which case no `-Xmx` option is added.
example: "50"
- name: JAVA_INITIAL_MEM_RATIO
description: This is used to calculate a default initial heap memory based the maximumal heap memory. The default is `100` which means 100% of the maximal heap is used for the initial heap size. You can skip this mechanism by setting this value to `0` in which case no `-Xms` option is added.
example: "100"
- name: JAVA_MAX_INITIAL_MEM
description: The maximum size of the initial heap memory, if the calculated default initial heap is larger then it will be capped at this value. The default is 4096 MB.
example: "4096"
- name: JAVA_DIAGNOSTICS
description: Set this to get some diagnostics information to standard output when things are happening. **Disabled by default.**
example: "true"
- name: GC_MIN_HEAP_FREE_RATIO
description: Minimum percentage of heap free after GC to avoid expansion.
example: "20"
- name: GC_MAX_HEAP_FREE_RATIO
description: Maximum percentage of heap free after GC to avoid shrinking.
example: "40"
- name: GC_TIME_RATIO
description: Specifies the ratio of the time spent outside the garbage collection (for example, the time spent for application execution) to the time spent in the garbage collection.
example: "4"
- name: GC_ADAPTIVE_SIZE_POLICY_WEIGHT
description: The weighting given to the current GC time versus previous GC times.
example: "90"
- name: GC_MAX_METASPACE_SIZE
description: The maximum metaspace size.
example: "100"
- name: "CONTAINER_HEAP_PERCENT"
example: 0.5
description: Deprecated. See JAVA_MAX_MEM_RATIO.
- name: "INITIAL_HEAP_PERCENT"
example: 0.5
description: Deprecated. See JAVA_INITIAL_MEM_RATIO.
- name: "PROBE_DISABLE_BOOT_ERRORS_CHECK"
example: "true"
description: Disable the boot errors check in the probes.
ports:
- value: 8080
- value: 8443
- value: 8787
expose: false
- value: 9779
- value: 11211
- value: 11222
- value: 11333
modules:
repositories:
- name: datagrid.modules
path: modules/datagrid
- name: common.modules
path: modules/common
install:
- name: jboss.container.openjdk.jdk
version: "11"
- name: datagrid.distribution
- name: dynamic-resources
- name: os-eap7-openshift
- name: os-eap-s2i
- name: jolokia
- name: datagrid.module-overrides
- name: os-eap7-ping
- name: os-eap-probes
- name: os-eap-db-drivers
- name: os-partition
- name: openshift-layer
- name: datagrid.launch
- name: datagrid.runtime
packages:
content_sets_file: content_sets.yml
install:
- rh-mongodb32-mongo-java-driver
- postgresql-jdbc
- mysql-connector-java
- hostname
- python-requests
- python-enum34
- coreutils
- PyYAML
- openssl
artifacts:
- name: jboss-datagrid-server.zip
description: "Artifact (patch) is available on Customer Portal: https://access.redhat.com/jbossnetwork/restricted/softwareDownload.html?softwareId=73761"
md5: 3eb94c97620581181c31d76f77e8fbce
run:
user: 185
cmd:
- "/opt/datagrid/bin/openshift-launch.sh"
osbs:
configuration:
container_file: container.yaml
repository:
name: containers/jboss-datagrid-7
branch: jb-datagrid-7.3-openshift-rhel-7