summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--INFO.yaml56
-rwxr-xr-xci/deploy_ci.sh9
-rwxr-xr-xdeploy/adapters/ansible/kubernetes/ansible-kubernetes.yml3
-rw-r--r--deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml18
-rwxr-xr-xdeploy/compass_conf/role/kubernetes_ansible.conf6
-rw-r--r--deploy/conf/hardware_environment/huawei-pod1/k8-nosdn-stor4nfv-ha.yml74
-rw-r--r--deploy/conf/hardware_environment/huawei-pod2/k8-nosdn-nofeature-ha.yml73
-rw-r--r--deploy/conf/hardware_environment/huawei-pod2/k8-nosdn-stor4nfv-ha.yml79
-rw-r--r--deploy/conf/hardware_environment/intel-pod17/k8-nosdn-nofeature-ha.yml3
-rw-r--r--plugins/barometer/roles/collectd/tasks/collectd.yml11
-rw-r--r--plugins/barometer/roles/collectd/templates/default_plugins.conf.j216
-rw-r--r--plugins/barometer/roles/collectd/templates/rrdtool.conf.j221
-rw-r--r--plugins/barometer/roles/collectd/templates/virt.conf.j22
13 files changed, 355 insertions, 16 deletions
diff --git a/INFO.yaml b/INFO.yaml
new file mode 100644
index 00000000..3712ad36
--- /dev/null
+++ b/INFO.yaml
@@ -0,0 +1,56 @@
+---
+project: 'Compass4nfv'
+project_creation_date: ''
+project_category: 'Integration and testing'
+lifecycle_state: 'Proposal approved'
+project_lead: &opnfv_compass4nfv_ptl
+ name: 'Justin chi'
+ email: 'chigang@huawei.com'
+ id: 'chigang'
+ company: 'huawei.com'
+ timezone: 'Unknown'
+primary_contact: *opnfv_compass4nfv_ptl
+issue_tracking:
+ type: 'jira'
+ url: 'https://jira.opnfv.org/projects/COMPASS'
+ key: 'COMPASS'
+mailing_list:
+ type: 'mailman2'
+ url: 'opnfv-tech-discuss@lists.opnfv.org'
+ tag: '[compass4nfv]'
+realtime_discussion:
+ type: irc
+ server: 'freenode.net'
+ channel: '#opnfv-compass4nfv'
+meetings:
+ - type: 'gotomeeting+irc'
+ agenda: # eg: 'https://wiki.opnfv.org/display/'
+ url: # eg: 'https://global.gotomeeting.com/join/819733085'
+ server: 'freenode.net'
+ channel: '#opnfv-meeting'
+ repeats: 'weekly'
+ time: # eg: '16:00 UTC'
+repositories:
+ - 'compass4nfv'
+committers:
+ - <<: *opnfv_compass4nfv_ptl
+ - name: 'Prakash Ramchandran'
+ email: 'prakash.ramchandran@huawei.com'
+ company: 'huawei.com'
+ id: 'rprakash'
+ - name: 'shuai chen'
+ email: 'chenshuai@huawei.com'
+ company: 'huawei.com'
+ id: 'chenshuai'
+ - name: 'Yifei Xue'
+ email: 'xueyifei@huawei.com'
+ company: 'huawei.com'
+ id: 'xueyifei1988'
+ - name: 'HU Xinhui'
+ email: 'xinhui_hu@foxmail.com'
+ company: 'foxmail.com'
+ id: 'huxinhui'
+tsc:
+ # yamllint disable rule:line-length
+ approval: 'http//ircbot.wl.linuxfoundation.org/meetings/opnfv-meeting/2015/opnfv-meeting.2015-07-21-14.02.html'
+ # yamllint enable rule:line-length
diff --git a/ci/deploy_ci.sh b/ci/deploy_ci.sh
index bd5adcc7..dd8786af 100755
--- a/ci/deploy_ci.sh
+++ b/ci/deploy_ci.sh
@@ -18,12 +18,13 @@ case $DEPLOY_SCENARIO in
echo "os-onos-sfc-ha scenario supports mitaka only"
exit 1
;;
- k8-nosdn-nofeature-ha)
- export COMPASS_OS_VERSION=centos7
- export KUBERNETES_VERSION="v1.7.3"
- ;;
esac
+if [[ "$DEPLOY_SCENARIO" =~ "k8-" ]]; then
+ export KUBERNETES_VERSION="v1.7.3"
+fi
+
+
if [[ "$NODE_NAME" =~ "intel-pod17" ]]; then
export USER_NAMESERVER=8.8.8.8
fi
diff --git a/deploy/adapters/ansible/kubernetes/ansible-kubernetes.yml b/deploy/adapters/ansible/kubernetes/ansible-kubernetes.yml
index 1eae8a97..68dec5c2 100755
--- a/deploy/adapters/ansible/kubernetes/ansible-kubernetes.yml
+++ b/deploy/adapters/ansible/kubernetes/ansible-kubernetes.yml
@@ -47,7 +47,8 @@
remote_user: root
max_fail_percentage: 0
roles:
- - storage
+ - role: storage
+ when: stor4nfv is defined and stor4nfv == "Enable"
- hosts: storage_master
remote_user: root
diff --git a/deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml b/deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml
index 187e2a52..6d947623 100644
--- a/deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml
+++ b/deploy/adapters/ansible/kubernetes/roles/kargo/tasks/main.yml
@@ -199,6 +199,24 @@
regexp: '"calico", "weave", "canal", "flannel"',
replace: '"calico", "weave", "canal", "flannel", "2flannel"'}
+# yamllint disable rule:line-length
+- name: enable CSI plugin feature
+ lineinfile:
+ dest: "/opt/kargo_k8s/roles/kubespray-defaults/defaults/main.yaml"
+ regexp: "^kube_feature_gates:"
+ line: "{% raw %}kube_feature_gates: ['Initializers={{ istio_enabled|string }}', 'PersistentLocalVolumes={{ local_volumes_enabled|string }}', 'CSIPersistentVolume=True', 'MountPropagation=True']{% endraw %}"
+ when:
+ - stor4nfv is defined and stor4nfv == "Enable"
+# yamllint enable rule:line-length
+
+- name: enable CSI plugin runtime_config
+ lineinfile:
+ dest: /opt/kargo_k8s/roles/kubernetes/master/defaults/main.yml
+ insertafter: '^ - admissionregistration.k8s.io/v1alpha1'
+ line: ' - storage.k8s.io/v1alpha1'
+ when:
+ - stor4nfv is defined and stor4nfv == "Enable"
+
- name: run kargo playbook
shell: |
cd /opt/kargo_k8s
diff --git a/deploy/compass_conf/role/kubernetes_ansible.conf b/deploy/compass_conf/role/kubernetes_ansible.conf
index f86902e3..3e79cbb9 100755
--- a/deploy/compass_conf/role/kubernetes_ansible.conf
+++ b/deploy/compass_conf/role/kubernetes_ansible.conf
@@ -18,10 +18,12 @@ ROLES = [{
}, {
'role': 'storage_master',
'display_name': 'storage master',
- 'description': 'storage master'
+ 'description': 'storage master',
+ 'optional': True
}, {
'role': 'storage_node',
'display_name': 'storage node',
- 'description': 'storage node'
+ 'description': 'storage node',
+ 'optional': True
}
]
diff --git a/deploy/conf/hardware_environment/huawei-pod1/k8-nosdn-stor4nfv-ha.yml b/deploy/conf/hardware_environment/huawei-pod1/k8-nosdn-stor4nfv-ha.yml
new file mode 100644
index 00000000..6cf62db7
--- /dev/null
+++ b/deploy/conf/hardware_environment/huawei-pod1/k8-nosdn-stor4nfv-ha.yml
@@ -0,0 +1,74 @@
+##############################################################################
+# Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+TYPE: baremetal
+FLAVOR: cluster
+POWER_TOOL: ipmitool
+
+ipmiUser: root
+ipmiVer: '2.0'
+
+plugins:
+ - stor4nfv: "Enable"
+
+hosts:
+ - name: host1
+ mac: 'F8:4A:BF:55:A2:8D'
+ interfaces:
+ - eth1: 'F8:4A:BF:55:A2:8E'
+ ipmiIp: 172.16.130.26
+ ipmiPass: Opnfv@pod1
+ roles:
+ - kube_master
+ - etcd
+ - ha
+
+ - name: host2
+ mac: 'D8:49:0B:DA:5A:B7'
+ interfaces:
+ - eth1: 'D8:49:0B:DA:5A:B8'
+ ipmiIp: 172.16.130.27
+ ipmiPass: Opnfv@pod1
+ roles:
+ - kube_master
+ - etcd
+ - ha
+
+ - name: host3
+ mac: '78:D7:52:A0:B1:99'
+ interfaces:
+ - eth1: '78:D7:52:A0:B1:9A'
+ ipmiIp: 172.16.130.29
+ ipmiPass: Opnfv@pod1
+ roles:
+ - kube_master
+ - etcd
+ - ha
+ - storage_master
+
+ - name: host4
+ mac: 'D8:49:0B:DA:5B:5D'
+ interfaces:
+ - eth1: 'D8:49:0B:DA:5B:5E'
+ ipmiIp: 172.16.130.30
+ ipmiPass: Opnfv@pod1
+ roles:
+ - kube_node
+ - storage_node
+
+ - name: host5
+ mac: 'D8:49:0B:DA:56:85'
+ interfaces:
+ - eth1: 'D8:49:0B:DA:56:86'
+ ipmiIp: 172.16.130.31
+ ipmiPass: Opnfv@pod1
+ roles:
+ - kube_node
+ - storage_node
diff --git a/deploy/conf/hardware_environment/huawei-pod2/k8-nosdn-nofeature-ha.yml b/deploy/conf/hardware_environment/huawei-pod2/k8-nosdn-nofeature-ha.yml
new file mode 100644
index 00000000..a96a5259
--- /dev/null
+++ b/deploy/conf/hardware_environment/huawei-pod2/k8-nosdn-nofeature-ha.yml
@@ -0,0 +1,73 @@
+##############################################################################
+# Copyright (c) 2018 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+
+TYPE: baremetal
+FLAVOR: cluster
+POWER_TOOL: ipmitool
+
+ipmiVer: '2.0'
+
+hosts:
+ - name: host1
+ mac: 'EC:38:8F:79:0C:2C'
+ ipmiUser: root
+ ipmiPass: Opnfv@pod2
+ ipmiIp: 172.16.130.20
+ interfaces:
+ - eth1: 'EC:38:8F:79:0C:2D'
+ roles:
+ - kube_master
+ - etcd
+ - ha
+
+ - name: host2
+ mac: 'EC:38:8F:79:0C:48'
+ ipmiIp: 172.16.130.19
+ ipmiUser: root
+ ipmiPass: Opnfv@pod2
+ interfaces:
+ - eth1: 'EC:38:8F:79:0C:49'
+ roles:
+ - kube_master
+ - etcd
+ - ha
+
+ - name: host3
+ mac: 'EC:38:8F:79:10:CC'
+ ipmiIp: 172.16.130.18
+ ipmiUser: root
+ ipmiPass: Opnfv@pod2
+ interfaces:
+ - eth1: 'EC:38:8F:79:10:CD'
+ roles:
+ - kube_master
+ - etcd
+ - ha
+
+ - name: host4
+ mac: 'EC:38:8F:79:0C:6C'
+ ipmiIp: 172.16.130.17
+ ipmiUser: root
+ ipmiPass: Opnfv@pod2
+ interfaces:
+ - eth1: 'EC:38:8F:79:0C:6D'
+ roles:
+ - kube_node
+
+ - name: host5
+ mac: 'EC:38:8F:7A:E6:ED'
+ ipmiIp: 172.16.130.16
+ ipmiUser: root
+ ipmiPass: Opnfv@pod2
+ interfaces:
+ - eth1: 'EC:38:8F:7A:E6:EE'
+ roles:
+ - kube_node
diff --git a/deploy/conf/hardware_environment/huawei-pod2/k8-nosdn-stor4nfv-ha.yml b/deploy/conf/hardware_environment/huawei-pod2/k8-nosdn-stor4nfv-ha.yml
new file mode 100644
index 00000000..4fbea1f0
--- /dev/null
+++ b/deploy/conf/hardware_environment/huawei-pod2/k8-nosdn-stor4nfv-ha.yml
@@ -0,0 +1,79 @@
+##############################################################################
+# Copyright (c) 2018 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+
+TYPE: baremetal
+FLAVOR: cluster
+POWER_TOOL: ipmitool
+
+ipmiVer: '2.0'
+
+plugins:
+ - stor4nfv: "Enable"
+
+hosts:
+ - name: host1
+ mac: 'EC:38:8F:79:0C:2C'
+ ipmiUser: root
+ ipmiPass: Opnfv@pod2
+ ipmiIp: 172.16.130.20
+ interfaces:
+ - eth1: 'EC:38:8F:79:0C:2D'
+ roles:
+ - kube_master
+ - etcd
+ - ha
+
+ - name: host2
+ mac: 'EC:38:8F:79:0C:48'
+ ipmiIp: 172.16.130.19
+ ipmiUser: root
+ ipmiPass: Opnfv@pod2
+ interfaces:
+ - eth1: 'EC:38:8F:79:0C:49'
+ roles:
+ - kube_master
+ - etcd
+ - ha
+
+ - name: host3
+ mac: 'EC:38:8F:79:10:CC'
+ ipmiIp: 172.16.130.18
+ ipmiUser: root
+ ipmiPass: Opnfv@pod2
+ interfaces:
+ - eth1: 'EC:38:8F:79:10:CD'
+ roles:
+ - kube_master
+ - etcd
+ - ha
+ - storage_master
+
+ - name: host4
+ mac: 'EC:38:8F:79:0C:6C'
+ ipmiIp: 172.16.130.17
+ ipmiUser: root
+ ipmiPass: Opnfv@pod2
+ interfaces:
+ - eth1: 'EC:38:8F:79:0C:6D'
+ roles:
+ - kube_node
+ - storage_node
+
+ - name: host5
+ mac: 'EC:38:8F:7A:E6:ED'
+ ipmiIp: 172.16.130.16
+ ipmiUser: root
+ ipmiPass: Opnfv@pod2
+ interfaces:
+ - eth1: 'EC:38:8F:7A:E6:EE'
+ roles:
+ - kube_node
+ - storage_node
diff --git a/deploy/conf/hardware_environment/intel-pod17/k8-nosdn-nofeature-ha.yml b/deploy/conf/hardware_environment/intel-pod17/k8-nosdn-nofeature-ha.yml
index 7cc2c215..660f5e2e 100644
--- a/deploy/conf/hardware_environment/intel-pod17/k8-nosdn-nofeature-ha.yml
+++ b/deploy/conf/hardware_environment/intel-pod17/k8-nosdn-nofeature-ha.yml
@@ -27,6 +27,7 @@ hosts:
roles:
- kube_master
- etcd
+ - ha
- name: host2
mac: 'A4:BF:01:14:01:13'
@@ -39,6 +40,7 @@ hosts:
roles:
- kube_master
- etcd
+ - ha
- name: host3
mac: 'A4:BF:01:14:71:1E'
@@ -51,6 +53,7 @@ hosts:
roles:
- kube_master
- etcd
+ - ha
- name: host4
mac: 'A4:BF:01:16:2F:17'
diff --git a/plugins/barometer/roles/collectd/tasks/collectd.yml b/plugins/barometer/roles/collectd/tasks/collectd.yml
index 4167e71b..0f6a6266 100644
--- a/plugins/barometer/roles/collectd/tasks/collectd.yml
+++ b/plugins/barometer/roles/collectd/tasks/collectd.yml
@@ -143,6 +143,17 @@
dest: /root/collectd_sample_configs/virt.conf
when: libvirt_result|succeeded
+- name: configure virt conf extra stats when rdt is present
+ remote_user: root
+ shell: |
+ sed -i '/ExtraStats/s/^#//g' /root/collectd_sample_configs/virt.conf
+ when: rdt_result|failed and libvirt_result|succeeded
+
+- name: configure rrdtool conf
+ template:
+ src: rrdtool.conf.j2
+ dest: /root/collectd_sample_configs/rrdtool.conf
+
- name: configure intel_pmu conf
remote_user: root
template:
diff --git a/plugins/barometer/roles/collectd/templates/default_plugins.conf.j2 b/plugins/barometer/roles/collectd/templates/default_plugins.conf.j2
index bd1850e6..a4d632a6 100644
--- a/plugins/barometer/roles/collectd/templates/default_plugins.conf.j2
+++ b/plugins/barometer/roles/collectd/templates/default_plugins.conf.j2
@@ -11,21 +11,21 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-#Hostname ""
+Hostname "{{ inventory_hostname }}"
LoadPlugin cpufreq
LoadPlugin disk
-#LoadPlugin ethstat
-#LoadPlugin ipc
-#LoadPlugin ipmi
+LoadPlugin ethstat
+LoadPlugin ipc
+LoadPlugin ipmi
LoadPlugin load
LoadPlugin memory
LoadPlugin numa
LoadPlugin processes
-#LoadPlugin df
-#LoadPlugin turbostat
-#LoadPlugin uptime
-#LoadPlugin contextswitch
+LoadPlugin df
+LoadPlugin turbostat
+LoadPlugin uptime
+LoadPlugin contextswitch
LoadPlugin irq
LoadPlugin swap
diff --git a/plugins/barometer/roles/collectd/templates/rrdtool.conf.j2 b/plugins/barometer/roles/collectd/templates/rrdtool.conf.j2
new file mode 100644
index 00000000..50bd6603
--- /dev/null
+++ b/plugins/barometer/roles/collectd/templates/rrdtool.conf.j2
@@ -0,0 +1,21 @@
+# Copyright 2017-18 OPNFV
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+Loadplugin rrdtool
+
+<Plugin rrdtool>
+ DataDir "/tmp/collectd/rrd"
+ CacheFlush 120
+ WritesPerSecond 50
+</Plugin>
+
diff --git a/plugins/barometer/roles/collectd/templates/virt.conf.j2 b/plugins/barometer/roles/collectd/templates/virt.conf.j2
index 8048bc13..c6161237 100644
--- a/plugins/barometer/roles/collectd/templates/virt.conf.j2
+++ b/plugins/barometer/roles/collectd/templates/virt.conf.j2
@@ -27,6 +27,6 @@ LoadPlugin virt
# InterfaceFormat name
# PluginInstanceFormat name
# Instances 1
- ExtraStats "cpu_util disk disk_err domain_state fs_info job_stats_background pcpu perf vcpupin"
+# ExtraStats "cpu_util disk disk_err domain_state fs_info job_stats_background pcpu perf vcpupin"
</Plugin>