summaryrefslogtreecommitdiffstats
path: root/roles/oso_host_monitoring/templates/oso-rhel7-host-monitoring.service.j2
blob: d85d8b94eef181fd5db2567d55d627c4153b50fc (plain)
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
# This is a systemd file to run this docker container under systemd.
# To make this work:
#  * pull the image (probably from ops docker registry)
#  * place this file in /etc/systemd/system without the .systemd extension
#  * run the commands:
#  systemctl daemon-reload
#  systemctl enable oso-rhel7-host-monitoring
#  systemctl start oso-rhel7-host-monitoring
#
#
[Unit]
Description=Openshift Host Monitoring Container
Requires=docker.service
After=docker.service


[Service]
Type=simple
TimeoutStartSec=5m
Environment=HOME=/etc/docker/ops
#Slice=container-small.slice

# systemd syntax '=-' ignore errors from return codes.
ExecStartPre=-/usr/bin/docker kill "{{ osohm_host_monitoring }}"
ExecStartPre=-/usr/bin/docker rm "{{ osohm_host_monitoring }}"
ExecStartPre=-/usr/bin/docker pull "{{ osohm_docker_registry_url }}{{ osohm_host_monitoring }}"

# mwoodson note 1-7-16:
# pcp recommends mounting /run in their Dockerfile
#  /run conflicts with cron which also runs in this container.
# I am leaving /run out for now.  the guys in #pcp said that they mounted /run
#  to shared the pcp socket that is created in /run. We are not using this,
#  as far as I know.
#  This problem goes away with systemd being run in the containers and not using
#   cron but using systemd timers
#           -v /run:/run                                     \

ExecStart=/usr/bin/docker run --name {{ osohm_host_monitoring }}                             \
           --privileged                                                                      \
           --pid=host                                                                        \
           --net=host                                                                        \
           --ipc=host                                                                        \
           -e ZAGG_URL={{ osohm_zagg_web_url }}                                              \
           -e ZAGG_USER={{ osohm_default_zagg_server_user }}                                 \
           -e ZAGG_PASSWORD={{ osohm_default_zagg_server_password }}                         \
           -e ZAGG_CLIENT_HOSTNAME={{ ec2_tag_Name }}                                        \
           -e ZAGG_SSL_VERIFY={{ osohm_zagg_verify_ssl }}                                    \
           -e OSO_CLUSTER_GROUP={{ cluster_group }}                                          \
           -e OSO_CLUSTER_ID={{ oo_clusterid }}                                              \
           -e OSO_ENVIRONMENT={{ oo_environment }}                                           \
           -e OSO_HOST_TYPE={{ hostvars[inventory_hostname]['ec2_tag_host-type'] }}          \
           -e OSO_SUB_HOST_TYPE={{ hostvars[inventory_hostname]['ec2_tag_sub-host-type'] }}  \
           -e OSO_MASTER_HA={{ osohm_master_ha }}                                            \
           -v /etc/localtime:/etc/localtime                                                  \
           -v /sys:/sys:ro                                                                   \
           -v /sys/fs/selinux                                                                \
           -v /var/lib/docker:/var/lib/docker:ro                                             \
           -v /var/run/docker.sock:/var/run/docker.sock                                      \
           -v /var/run/openvswitch:/var/run/openvswitch                                      \
{% if hostvars[inventory_hostname]['oo_hosttype'] == 'master' %}
           -v /etc/origin/master/admin.kubeconfig:/etc/origin/master/admin.kubeconfig  \
           -v /etc/origin/master/master.etcd-client.crt:/etc/origin/master/master.etcd-client.crt \
           -v /etc/origin/master/master.etcd-client.key:/etc/origin/master/master.etcd-client.key \
           -v /etc/origin/master/master-config.yaml:/etc/origin/master/master-config.yaml \
{% elif hostvars[inventory_hostname]['oo_hosttype'] == 'node' %}
           -v /etc/origin/node:/etc/origin/node                                              \
{% endif %}
           {{ osohm_docker_registry_url }}{{ osohm_host_monitoring }}


ExecReload=-/usr/bin/docker stop "{{ osohm_host_monitoring }}"
ExecReload=-/usr/bin/docker rm "{{ osohm_host_monitoring }}"
ExecStop=-/usr/bin/docker stop "{{ osohm_host_monitoring }}"
Restart=always
RestartSec=30

[Install]
WantedBy=default.target