Updated K8s-related scripts to create Services pod in MOS child cluster
Related-PROD: PROD-36128
Change-Id: I9f6bd0c5096226fd9d7ba063ce881dee8655a704
diff --git a/k8s/_init_pod.sh b/k8s/_init_pod.sh
new file mode 100644
index 0000000..9c30e9d
--- /dev/null
+++ b/k8s/_init_pod.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+cd /artifacts
+# Installing prerequisites
+apt -y update
+apt -y install python3-pip vim git iperf3 mtr htop
+pip3 install rally-openstack python-neutronclient pyghmi
+
+# Prepare Rally
+rally db create
+
+# Create openstack env
+rally env create --from-sysenv --name openstack
+rally env check
+
+# Prepare rally for kubernetes
+bash res-files/k8s/gen_kubespec.sh ./mos-kubeconf.yaml
+git clone https://github.com/Mirantis/rally-plugins.git
+cd rally-plugins/
+pip3 install .
+rally plugin list | grep kubernetes
+
+# Configure kubernetes
+rally env create --name kubernetes --spec /artifacts/kubespec_generated.yaml
+rally env check
+cd /artifacts
diff --git a/k8s/k8s-resources.yaml b/k8s/qa-pod.yaml
similarity index 71%
rename from k8s/k8s-resources.yaml
rename to k8s/qa-pod.yaml
index af974d7..57c4a6d 100644
--- a/k8s/k8s-resources.yaml
+++ b/k8s/qa-pod.yaml
@@ -1,41 +1,7 @@
apiVersion: v1
-kind: Namespace
-metadata:
- name: qa-space
----
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: qa-pv
- namespace: qa-space
- labels:
- type: local
-spec:
- storageClassName: volumes-nvme
- capacity:
- storage: 50Gi
- accessModes:
- - ReadWriteOnce
- hostPath:
- path: "/tmp/artifacts"
----
-apiVersion: v1
-kind: PersistentVolumeClaim
-metadata:
- name: qa-pvc
- namespace: qa-space
-spec:
- storageClassName: volumes-nvme
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 50Gi
----
-apiVersion: v1
kind: Pod
metadata:
- name: qa-pod
+ name: qa-ubuntu-pod
namespace: qa-space
spec:
containers:
@@ -97,11 +63,15 @@
secretKeyRef:
key: OS_DEFAULT_DOMAIN
name: keystone-keystone-admin
-# enable this image is rally is not enough
-# image: mirantis.azurecr.io/openstack/heat:ussuri-bionic-20201121180111
- image: xrally/xrally-openstack:2.1.0
imagePullPolicy: IfNotPresent
- name: qa-pod
+# enable this image if rally is not enough,
+# but rally will be needed to be installed manually
+ name: ubuntu
+ image: ubuntu:20.04
+# xrally container has a lot of packages missing.
+# It is better to install rally on ubuntu, than install missing packages on rally image
+# name: rally-perf
+# image: xrally/xrally-openstack:2.1.0
volumeMounts:
- mountPath: /artifacts
name: qa-pv
@@ -112,4 +82,3 @@
- name: qa-pv
persistentVolumeClaim:
claimName: qa-pvc
-
diff --git a/k8s/qa-res.yaml b/k8s/qa-res.yaml
new file mode 100644
index 0000000..398192c
--- /dev/null
+++ b/k8s/qa-res.yaml
@@ -0,0 +1,34 @@
+apiVersion: v1
+kind: Namespace
+metadata:
+ name: qa-space
+---
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+ name: qa-pv
+ namespace: qa-space
+ labels:
+ type: local
+spec:
+ storageClassName: volumes-hdd
+ capacity:
+ storage: 50Gi
+ accessModes:
+ - ReadWriteOnce
+ persistentVolumeReclaimPolicy: Retain
+ hostPath:
+ path: "/tmp/artifacts"
+---
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+ name: qa-pvc
+ namespace: qa-space
+spec:
+ storageClassName: volumes-hdd
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 50Gi