Представленный шаблон позволяет развернуть сервис eltex-wids в кластере OpenShift.
Подготовка к установке:
Порядок установки:
применить шаблон командой
oc apply -f eltex-wids-template.yaml |

kind: Template
apiVersion: v1
metadata:
name: eltex-wids-template
annotations:
description: "Eltex-wids application template"
openshift.io/display-name: "The Eltex WIDS"
openshift.io/provider-display-name: "Eltex"
iconClass: "icon-go-gopher"
objects:
- apiVersion: v1
kind: ConfigMap
metadata:
name: ${INSTANCE_NAME}-config
data:
config.hocon: |
server = {
ServicePort = 9095
Environment = "k8s" // logs writes into stdout
SleepDaemonQueueTime = 5 // time for sleep (unit: milliseconds)
FoulTime = 60 // time of raw event, they disappear (unit: seconds)
}
logs = {
LogLevel = "error"
FileLog = "/var/log/eltex-wids/eltex-wids.log" // name of log file
MaxSize = 5 // maximal size of log file (unit: megabyte)
MaxAge = 30 // maximum log lifetime (unit: days)
MaxBackups = 10 // maximum number of backups (unit: amount of log files)
Compress = true // the need of compression
GelfEnabled = false // inclusion of sending logs to graylog
GelfHostWithPort = "lab3-test.eltex.loc:12201" // address of graylog server
}
db = {
Database = "${DB_SCHEMA}" // database name
}
- apiVersion: apps.openshift.io/v1
kind: DeploymentConfig
metadata:
labels:
app: ${INSTANCE_NAME}
name: ${INSTANCE_NAME}
spec:
replicas: 1
selector:
app: ${INSTANCE_NAME}
strategy:
type: Rolling
template:
metadata:
labels:
app: ${INSTANCE_NAME}
spec:
containers:
- name: ${INSTANCE_NAME}-container
image: ${IMAGE_NAME}
imagePullPolicy: Always
livenessProbe:
httpGet:
path: /getVersion
port: 9095
scheme: HTTP
initialDelaySeconds: 30
readinessProbe:
httpGet:
path: /mac/names
port: 9095
scheme: HTTP
initialDelaySeconds: 30
volumeMounts:
- mountPath: /etc/eltex-wids-service
name: config-volume
volumes:
- configMap:
name: ${INSTANCE_NAME}-config
name: config-volume
triggers:
- type: ConfigChange
- apiVersion: v1
kind: Service
metadata:
name: ${INSTANCE_NAME}-service
spec:
ports:
- port: 9095
protocol: TCP
selector:
app: ${INSTANCE_NAME}
- apiVersion: v1
kind: Route
metadata:
name: ${INSTANCE_NAME}-route
spec:
to:
kind: Service
name: ${INSTANCE_NAME}-service
parameters:
- name: INSTANCE_NAME
displayName: Name of service
description: Name of service in openshift
required: true
value: eltex-wids
- name: IMAGE_NAME
displayName: Image name
description: Image name or pull spec
required: true
value: hub.eltex-co.ru/softwlc/eltex-wids:latest
- name: DB_URL
displayName: Database connection string
description: Database for eltex-wids
required: true
value: mongodb://eltex:eltex@mongodb.softwlc.svc:27017/wids
- name: DB_SCHEMA
displayName: Database schema
description: Database schema
required: true
value: wids
message: "... The Eltex WIDS with name ${INSTANCE_NAME} is starting ..."
|