Invalid scenario configuration file: scenarios/openshift/openshift-kube-apiserver.yml expected list, found dict
githubshekar opened this issue · comments
Kraken plugin_scenarios is faling with error invalid scenarios/openshift/openshift-kube-apiserver.yml file. kindly support to resolve this problem.
[root@97be754b9099 krkn]# python3.9 run_kraken.py -c /kraken/config/config_container.yaml
_ _
| | ___ __ __ _| | _____ _ __
| |/ / '__/ _` | |/ / _ \ '_ \
| <| | | (_| | < __/ | | |
|_|\_\_| \__,_|_|\_\___|_| |_|
2022-10-11 06:46:57,782 [INFO] Starting kraken
2022-10-11 06:46:57,793 [INFO] Initializing client to talk to the Kubernetes cluster
2022-10-11 06:47:10,167 [INFO] Publishing kraken status at http://0.0.0.0:8081
2022-10-11 06:47:10,168 [INFO] Publishing kraken status at http://0.0.0.0:8081
2022-10-11 06:47:10,168 [INFO] Starting http server at http://0.0.0.0:8081
2022-10-11 06:47:10,169 [INFO] Fetching cluster info
2022-10-11 06:47:10,209 [INFO] Error while reconciling 4.10.26: the cluster operator ingress is degraded
2022-10-11 06:47:10,210 [INFO] Server URL: https://api.cluster736.slocp.net.com:6443
2022-10-11 06:47:10,210 [INFO] Generated a uuid for the run: 20906478-a725-469f-8eec-802c3eec2b3d
2022-10-11 06:47:10,210 [INFO] Daemon mode not enabled, will run through 1 iterations
2022-10-11 06:47:10,210 [INFO] Executing scenarios for iteration 0
2022-10-11 06:47:10,210 [INFO] connection set up
127.0.0.1 - - [11/Oct/2022 06:47:10] "GET / HTTP/1.1" 200 -
2022-10-11 06:47:10,212 [INFO] response RUN
2022-10-11 06:47:10,219 [ERROR] Error while running scenarios/openshift/openshift-kube-apiserver.yml: Invalid scenario configuration file: scenarios/openshift/openshift-kube-apiserver.yml expected list, found dict
2022-10-11 06:47:10,219 [INFO]
2022-10-11 06:47:10,220 [ERROR] Post scenarios are still failing at the end of all iterations
[root@97be754b9099 krkn]# cat /kraken/config/config_container.yaml
kraken:
distribution: openshift # Distribution can be kubernetes or openshift
kubeconfig_path: /root/.kube/config # Path to kubeconfig
exit_on_failure: False # Exit when a post action scenario fails
port: 8081
publish_kraken_status: True # Can be accessed at http://0.0.0.0:8081
signal_state: RUN # Will wait for the RUN signal when set to PAUSE before running the scenarios, refer docs/signal.md for more details
litmus_version: v1.13.6 # Litmus version to install
litmus_uninstall: False # If you want to uninstall litmus if failure
chaos_scenarios: # List of policies/chaos scenarios to load
# - container_scenarios: # List of chaos pod scenarios to load
# - - scenarios/openshift/container_etcd.yml
# - plugin_scenarios:
# - scenarios/openshift/etcd.yml
# - scenarios/openshift/regex_openshift_pod_kill.yml
- plugin_scenarios:
# - scenarios/openshift/openshift-apiserver.yml
- scenarios/openshift/openshift-kube-apiserver.yml
cerberus:
cerberus_enabled: False # Enable it when cerberus is previously installed
cerberus_url: # When cerberus_enabled is set to True, provide the url where cerberus publishes go/no-go signal
check_applicaton_routes: False # When enabled will look for application unavailability using the routes specified in the cerberus config and fails the run
performance_monitoring:
deploy_dashboards: False # Install a mutable grafana and load the performance dashboards. Enable this only when running on OpenShift
repo: "https://github.com/cloud-bulldozer/performance-dashboards.git"
kube_burner_binary_url: "https://github.com/cloud-bulldozer/kube-burner/releases/download/v0.9.1/kube-burner-0.9.1-Linux-x86_64.tar.gz"
capture_metrics: False
config_path: config/kube_burner.yaml # Define the Elasticsearch url and index name in this config
metrics_profile_path: config/metrics-aggregated.yaml
prometheus_url: # The prometheus url/route is automatically obtained in case of OpenShift, please set it when the distribution is Kubernetes.
prometheus_bearer_token: # The bearer token is automatically obtained in case of OpenShift, please set it when the distribution is Kubernetes. This is needed to authenticate with prometheus.
uuid: # uuid for the run is generated by default if not set
enable_alerts: False # Runs the queries specified in the alert profile and displays the info or exits 1 when severity=error
alert_profile: config/alerts # Path to alert profile with the prometheus queries
tunings:
wait_duration: 60 # Duration to wait between each chaos scenario
iterations: 1 # Number of times to execute the scenarios
daemon_mode: False # Iterations are set to infinity which means that the kraken will cause chaos forever
[root@97be754b9099 krkn]#
Hi @githubshekar, the issue should be resolved in the latest config, please let us know if there are any issues. Thanks.