瀏覽代碼

Merge pull request #923 from twiest/master

sync master -> prod branch
Thomas Wiest 9 年之前
父節點
當前提交
898290cb3a

+ 0 - 1
.tito/packages/openshift-ansible-bin

@@ -1 +0,0 @@
-0.0.21-1 bin/

+ 0 - 1
.tito/packages/openshift-ansible-inventory

@@ -1 +0,0 @@
-0.0.11-1 inventory/

+ 4 - 0
.tito/releasers.conf

@@ -11,3 +11,7 @@ srpm_disttag = .el7ose
 releaser = tito.release.DistGitReleaser
 branches = rhaos-3.1-rhel-7
 srpm_disttag = .el7aos
+
+[copr-openshift-ansible]
+releaser = tito.release.CoprReleaser
+project_name = openshift-ansible

+ 0 - 3
rel-eng/packages/.readme

@@ -1,3 +0,0 @@
-the rel-eng/packages directory contains metadata files
-named after their packages. Each file has the latest tagged
-version and the project's relative directory.

+ 0 - 1
rel-eng/packages/openshift-ansible-bin

@@ -1 +0,0 @@
-0.0.19-1 bin/

+ 0 - 1
rel-eng/packages/openshift-ansible-inventory

@@ -1 +0,0 @@
-0.0.9-1 inventory/

+ 0 - 5
rel-eng/tito.props

@@ -1,5 +0,0 @@
-[buildconfig]
-builder = tito.builder.Builder
-tagger = tito.tagger.VersionTagger
-changelog_do_not_remove_cherrypick = 0
-changelog_format = %s (%ae)

+ 20 - 0
roles/lib_zabbix/library/zbx_item.py

@@ -41,6 +41,24 @@ def exists(content, key='result'):
 
     return True
 
+def get_data_type(data_type):
+    '''
+    Possible values:
+    0 - decimal;
+    1 - octal;
+    2 - hexadecimal;
+    3 - bool;
+    '''
+    vtype = 0
+    if 'octal' in data_type:
+        vtype = 1
+    elif 'hexadecimal' in data_type:
+        vtype = 2
+    elif 'bool' in data_type:
+        vtype = 3
+
+    return vtype
+
 def get_value_type(value_type):
     '''
     Possible values:
@@ -158,6 +176,7 @@ def main():
             template_name=dict(default=None, type='str'),
             zabbix_type=dict(default='trapper', type='str'),
             value_type=dict(default='int', type='str'),
+            data_type=dict(default='decimal', type='str'),
             interval=dict(default=60, type='int'),
             delta=dict(default=0, type='int'),
             multiplier=dict(default=None, type='str'),
@@ -219,6 +238,7 @@ def main():
                   'hostid': templateid[0],
                   'type': get_zabbix_type(module.params['zabbix_type']),
                   'value_type': get_value_type(module.params['value_type']),
+                  'data_type': get_data_type(module.params['data_type']),
                   'applications': get_app_ids(module.params['applications'], app_name_ids),
                   'formula': formula,
                   'multiplier': use_multiplier,

+ 20 - 0
roles/lib_zabbix/library/zbx_itemprototype.py

@@ -116,6 +116,24 @@ def get_zabbix_type(ztype):
 
     return _vtype
 
+def get_data_type(data_type):
+    '''
+    Possible values:
+    0 - decimal;
+    1 - octal;
+    2 - hexadecimal;
+    3 - bool;
+    '''
+    vtype = 0
+    if 'octal' in data_type:
+        vtype = 1
+    elif 'hexadecimal' in data_type:
+        vtype = 2
+    elif 'bool' in data_type:
+        vtype = 3
+
+    return vtype
+
 def get_value_type(value_type):
     '''
     Possible values:
@@ -175,6 +193,7 @@ def main():
             interfaceid=dict(default=None, type='int'),
             zabbix_type=dict(default='trapper', type='str'),
             value_type=dict(default='float', type='str'),
+            data_type=dict(default='decimal', type='str'),
             delay=dict(default=60, type='int'),
             lifetime=dict(default=30, type='int'),
             state=dict(default='present', type='str'),
@@ -238,6 +257,7 @@ def main():
                   'ruleid': get_rule_id(zapi, module.params['discoveryrule_key'], template['templateid']),
                   'type': get_zabbix_type(module.params['zabbix_type']),
                   'value_type': get_value_type(module.params['value_type']),
+                  'data_type': get_data_type(module.params['data_type']),
                   'applications': get_app_ids(zapi, module.params['applications'], template['templateid']),
                   'formula': formula,
                   'multiplier': use_multiplier,

+ 2 - 0
roles/lib_zabbix/tasks/create_template.yml

@@ -33,6 +33,7 @@
     key: "{{ item.key }}"
     name: "{{ item.name | default(item.key, true) }}"
     value_type: "{{ item.value_type | default('int') }}"
+    data_type: "{{ item.data_type | default('decimal') }}"
     description: "{{ item.description | default('', True) }}"
     multiplier: "{{ item.multiplier | default('', True) }}"
     units: "{{ item.units | default('', True) }}"
@@ -81,6 +82,7 @@
     key: "{{ item.key }}"
     discoveryrule_key: "{{ item.discoveryrule_key }}"
     value_type: "{{ item.value_type }}"
+    data_type: "{{ item.data_type | default('decimal') }}"
     template_name: "{{ template.name }}"
     applications: "{{ item.applications }}"
     description: "{{ item.description | default('', True) }}"

+ 27 - 3
roles/os_zabbix/vars/template_openshift_master.yml

@@ -13,6 +13,13 @@ g_template_openshift_master:
     applications:
     - Openshift Master
 
+  - key: openshift.master.api.healthz
+    description: "Checks the healthz check of the master's api: https://master_host/healthz"
+    type: int
+    data_type: bool
+    applications:
+    - Openshift Master
+
   - key: openshift.master.user.count
     description: Shows number of users in a cluster
     type: int
@@ -24,8 +31,20 @@ g_template_openshift_master:
     type: int
     applications:
     - Openshift Master
-  
-  - key: openshift.project.counter
+
+  - key: openshift.master.pod.user.running.count
+    description: Shows number of user pods running (non infrastructure pods)
+    type: int
+    applications:
+    - Openshift Master
+
+  - key: openshift.master.pod.total.count
+    description: Shows total number of pods (running and non running)
+    type: int
+    applications:
+    - Openshift Master
+
+  - key: openshift.project.count
     description: Shows number of projects on a cluster
     type: int
     applications:
@@ -109,6 +128,11 @@ g_template_openshift_master:
     url: 'https://github.com/openshift/ops-sop/blob/master/V3/Alerts/check_create_app.asciidoc'
     priority: avg
 
+  - name: 'Openshift Master API health check is failing on {HOST.NAME}'
+    expression: '{Template Openshift Master:openshift.master.api.healthz.max(#3)}<1'
+    url: 'https://github.com/openshift/ops-sop/blob/master/V3/Alerts/openshift_master.asciidoc'
+    priority: high
+
   - name: 'Openshift Master process not running on {HOST.NAME}'
     expression: '{Template Openshift Master:openshift.master.process.count.max(#3)}<1'
     url: 'https://github.com/openshift/ops-sop/blob/master/V3/Alerts/openshift_master.asciidoc'
@@ -125,7 +149,7 @@ g_template_openshift_master:
     priority: info
 
   - name: 'There are no projects running on {HOST.NAME}'
-    expression: '{Template Openshift Master:openshift.project.counter.last()}=0'
+    expression: '{Template Openshift Master:openshift.project.count.last()}=0'
     url: 'https://github.com/openshift/ops-sop/blob/master/V3/Alerts/openshift_master.asciidoc'
     priority: info