Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {
- "kind": "Template",
- "apiVersion": "v1",
- "metadata": {
- "name": "mariadb-easy",
- "annotations": {
- "openshift.io/display-name": "MariaDB (EasyRedmine)",
- "description": "MariaDB database service, with persistent storage configured for easyredmine. NOTE: Scaling to more than one replica is not supported. You must have persistent volumes available in your cluster to use this template.",
- "iconClass": "icon-mariadb",
- "tags": "database,mariadb"
- }
- },
- "message": "The following service(s) have been created in your project: ${DATABASE_SERVICE_NAME}.\n\n Username: ${MYSQL_USER}\n Password: ${MYSQL_PASSWORD}\n Database Name: ${MYSQL_DATABASE}\n Connection URL: mysql://${DATABASE_SERVICE_NAME}:3306/\n\nFor more information about using this template, including OpenShift considerations, see https://github.com/sclorg/mariadb-container/blob/master/10.1/README.md.",
- "labels": {
- "template": "mariadb-easy-template"
- },
- "objects": [
- {
- "kind": "Secret",
- "apiVersion": "v1",
- "metadata": {
- "name": "${DATABASE_SERVICE_NAME}"
- },
- "stringData" : {
- "database-user" : "${MYSQL_USER}",
- "database-password" : "${MYSQL_PASSWORD}",
- "database-root-password" : "${MYSQL_ROOT_PASSWORD}"
- }
- },
- {
- "kind": "Service",
- "apiVersion": "v1",
- "metadata": {
- "name": "${DATABASE_SERVICE_NAME}"
- },
- "spec": {
- "ports": [
- {
- "name": "mariadb",
- "port": 3306
- }
- ],
- "selector": {
- "name": "${DATABASE_SERVICE_NAME}"
- }
- }
- },
- {
- "kind": "PersistentVolumeClaim",
- "apiVersion": "v1",
- "metadata": {
- "name": "${DATABASE_SERVICE_NAME}"
- },
- "spec": {
- "accessModes": [
- "ReadWriteOnce"
- ],
- "resources": {
- "requests": {
- "storage": "${VOLUME_CAPACITY}"
- }
- }
- }
- },
- {
- "kind": "ReplicationController",
- "apiVersion": "v1",
- "metadata": {
- "name": "${DATABASE_SERVICE_NAME}"
- },
- "spec": {
- "replicas": 1,
- "selector": {
- "name": "${DATABASE_SERVICE_NAME}"
- },
- "template": {
- "metadata": {
- "labels": {
- "name": "${DATABASE_SERVICE_NAME}"
- }
- },
- "spec": {
- "containers": [
- {
- "name": "mariadb",
- "image": "mariadb:10.1",
- "args": [ "--binlog_format=row","--log-warnings=2","--log-error=error.log","--min-examined-row-limit=100","--character_set_server=utf8","--collation_server=utf8_unicode_ci","--query_cache_limit=512K","--query_cache_size=512M","--sort_buffer_size=5M","--tmp_table_size=512M","--max_heap_table_size=512M","--read_buffer_size=1M","--join_buffer_size=1M","--bulk_insert_buffer_size=64M","--innodb_autoinc_lock_mode=2","--innodb_buffer_pool_size=60M","--innodb-flush-log-at-trx-commit=2" ],
- "ports": [
- {
- "containerPort": 3306
- }
- ],
- "readinessProbe": {
- "timeoutSeconds": 1,
- "initialDelaySeconds": 5,
- "exec": {
- "command": [ "/bin/sh", "-i", "-c",
- "MYSQL_PWD=\"$MYSQL_PASSWORD\" mysql -h 127.0.0.1 -u $MYSQL_USER -D $MYSQL_DATABASE -e 'SELECT 1'"]
- }
- },
- "livenessProbe": {
- "timeoutSeconds": 1,
- "initialDelaySeconds": 30,
- "tcpSocket": {
- "port": 3306
- }
- },
- "env": [
- {
- "name": "MYSQL_USER",
- "valueFrom": {
- "secretKeyRef" : {
- "name" : "${DATABASE_SERVICE_NAME}",
- "key" : "database-user"
- }
- }
- },
- {
- "name": "MYSQL_PASSWORD",
- "valueFrom": {
- "secretKeyRef" : {
- "name" : "${DATABASE_SERVICE_NAME}",
- "key" : "database-password"
- }
- }
- },
- {
- "name": "MYSQL_ROOT_PASSWORD",
- "valueFrom": {
- "secretKeyRef" : {
- "name" : "${DATABASE_SERVICE_NAME}",
- "key" : "database-root-password"
- }
- }
- },
- {
- "name": "MYSQL_DATABASE",
- "value": "${MYSQL_DATABASE}"
- }
- ],
- "resources": {
- "limits": {
- "memory": "${MEMORY_LIMIT}"
- }
- },
- "volumeMounts": [
- {
- "name": "${DATABASE_SERVICE_NAME}-data",
- "mountPath": "/var/lib/mysql"
- }
- ],
- "imagePullPolicy": "IfNotPresent"
- }
- ],
- "volumes": [
- {
- "name": "${DATABASE_SERVICE_NAME}-data",
- "persistentVolumeClaim": {
- "claimName": "${DATABASE_SERVICE_NAME}"
- }
- }
- ]
- }
- }
- }
- }
- ],
- "parameters": [
- {
- "name": "MEMORY_LIMIT",
- "displayName": "Memory Limit",
- "description": "Maximum amount of memory the container can use.",
- "value": "1Gi",
- "required": true
- },
- {
- "name": "DATABASE_SERVICE_NAME",
- "displayName": "Database Service Name",
- "description": "The name of the OpenShift Service exposed for the database.",
- "value": "mariadb",
- "required": true
- },
- {
- "name": "MYSQL_USER",
- "displayName": "MariaDB Connection Username",
- "description": "Username for MariaDB user that will be used for accessing the database.",
- "generate": "expression",
- "from": "user[A-Z0-9]{3}",
- "required": true
- },
- {
- "name": "MYSQL_PASSWORD",
- "displayName": "MariaDB Connection Password",
- "description": "Password for the MariaDB connection user.",
- "generate": "expression",
- "from": "[a-zA-Z0-9]{16}",
- "required": true
- },
- {
- "name": "MYSQL_ROOT_PASSWORD",
- "displayName": "MariaDB root Password",
- "description": "Password for the MariaDB root user.",
- "generate": "expression",
- "from": "[a-zA-Z0-9]{16}",
- "required": true
- },
- {
- "name": "MYSQL_DATABASE",
- "displayName": "MariaDB Database Name",
- "description": "Name of the MariaDB database accessed.",
- "value": "sampledb",
- "required": true
- },
- {
- "name": "VOLUME_CAPACITY",
- "displayName": "Volume Capacity",
- "description": "Volume space available for data, e.g. 512Mi, 2Gi.",
- "value": "1Gi",
- "required": true
- }
- ]
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement