litmus/litmus-portal
Ishan Gupta a4912e6e41
renaming-> analytics to observability, workflow dashboards to workflow statistics and application dashboards to monitoring dashboards (#3086)
* renaming-> analytics, workflow dashboards and application dashboards

Signed-off-by: ishangupta-ds <ishan@chaosnative.com>

* deep scan fix

Signed-off-by: ishangupta-ds <ishan@chaosnative.com>

* minor fix

Signed-off-by: ishangupta-ds <ishan@chaosnative.com>

Co-authored-by: Soumya Ghosh Dastidar <44349253+gdsoumya@users.noreply.github.com>
2021-08-17 12:27:06 +05:30
..
authentication Added checks to prevent DB inconsistency (#3098) 2021-08-07 14:27:44 +05:30
cluster-agents added version env check in event-tracker (#3101) 2021-08-07 20:39:59 +05:30
frontend renaming-> analytics to observability, workflow dashboards to workflow statistics and application dashboards to monitoring dashboards (#3086) 2021-08-17 12:27:06 +05:30
graphql-server Upgraded litmus version to v2.0.0. (#3115) 2021-08-11 13:36:54 +05:30
platforms/okteto Upgraded litmus version to v2.0.0. (#3115) 2021-08-11 13:36:54 +05:30
Makefile Minor fix in github workflow manifest for the path based frontend app build (#3005) 2021-07-13 16:58:09 +05:30
README.md Updating the chaoscenter readme (#3125) 2021-08-14 15:31:39 +05:30
cluster-k8s-manifest.yml Upgraded litmus version to v2.0.0. (#3115) 2021-08-11 13:36:54 +05:30
ingress.yml Adding {Ingress, ClusterIP, LoadBalancer} support for connecting external agent to the server (#2598) 2021-04-12 20:17:49 +05:30
litmus-portal-crds.yml updated CRDs and versions for CRs. (#2912) 2021-06-21 08:28:23 +05:30
namespaced-k8s-template.yml Upgraded litmus version to v2.0.0. (#3115) 2021-08-11 13:36:54 +05:30
run.sh Upgraded litmus version to v2.0.0. (#3115) 2021-08-11 13:36:54 +05:30

README.md

Litmus Portal

Litmus-Portal provides console and UI experience for managing, monitoring, and events around chaos workflows. Chaos workflows consist of a sequence of experiments run together to achieve the objective of introducing some kind of fault into an application or the Kubernetes platform.

Platforms Support

  • Minikube
  • GKE
  • KIND
  • EKS
  • Okteto Cloud
  • AKS
  • K3S
  • Civo Cloud
  • Kublr

Pre-requisites

  • Kubernetes 1.17 or later.

Installation

Applying k8s manifest

Litmus-2.0.0 (Stable)

kubectl apply -f https://raw.githubusercontent.com/litmuschaos/litmus/2.0.0/docs/2.0.0/litmus-2.0.0.yaml

Or

Master (Latest) Cluster scope. Install in litmus namespace by default.

kubectl apply -f https://raw.githubusercontent.com/litmuschaos/litmus/master/litmus-portal/cluster-k8s-manifest.yml

Or

Master (Latest) Namespaced scope. Replace <namespace> with the desired namespace.

export LITMUS_PORTAL_NAMESPACE="<namespace>"
kubectl create ns ${LITMUS_PORTAL_NAMESPACE}
kubectl apply -f https://raw.githubusercontent.com/litmuschaos/litmus/master/litmus-portal/litmus-portal-crds.yml
curl https://raw.githubusercontent.com/litmuschaos/litmus/2.0.0/docs/2.0.0/litmus-namespaced-2.0.0.yaml --output litmus-portal-namespaced-k8s-template.yml
envsubst < litmus-portal-namespaced-k8s-template.yml > ${LITMUS_PORTAL_NAMESPACE}-ns-scoped-litmus-portal-manifest.yml
kubectl apply -f ${LITMUS_PORTAL_NAMESPACE}-ns-scoped-litmus-portal-manifest.yml -n ${LITMUS_PORTAL_NAMESPACE}

Configuration Options for Cluster scope.

  • litmus-portal-operations-config configmap.

    AgentNamespace: litmus

  • All environment variables.

Configuration Options for Namespace scope.

  • litmus-portal-operations-config configmap.

    AgentNamespace: ${LITMUS_PORTAL_NAMESPACE}

  • All environment variables.

Retrieving external url to access the litmus portal

GKE/Okteto Cloud/EKS
export NODE_NAME=$(kubectl -n $LITMUS_PORTAL_NAMESPACE get pod  -l "component=litmusportal-frontend" -o=jsonpath='{.items[*].spec.nodeName}')
export EXTERNAL_IP=$(kubectl -n $LITMUS_PORTAL_NAMESPACE get nodes $NODE_NAME -o jsonpath='{.status.addresses[?(@.type=="ExternalIP")].address}')
export NODE_PORT=$(kubectl -n $LITMUS_PORTAL_NAMESPACE get -o jsonpath="{.spec.ports[0].nodePort}" services litmusportal-frontend-service)
echo "URL: http://$EXTERNAL_IP:$NODE_PORT"

Minikube

minikube -n $LITMUS_PORTAL_NAMESPACE --url litmusportal-frontend-service

Note: Default username: admin and password: litmus

User Guide for Litmus Portal

Litmus-Portal provides console or UI experience for managing, monitoring, and events round chaos workflows. Chaos workflows consist of a sequence of experiments run together to achieve the objective of introducing some kind of fault into an application or the Kubernetes platform.

View the User Guide here

Uninstallation

Litmus-2.0.0 (Stable)

kubectl delete -f https://raw.githubusercontent.com/litmuschaos/litmus/2.0.0/docs/2.0.0/litmus-2.0.0.yaml

Or

Master (Latest) Cluster scope. Uninstall in litmus namespace by default. (Only deleting litmus portal components)

kubectl delete -f https://raw.githubusercontent.com/litmuschaos/litmus/master/litmus-portal/cluster-k8s-manifest.yml

Or

Master (Latest) Namespaced scope. Replace <namespace> with the desired namespace.

export LITMUS_PORTAL_NAMESPACE="<namespace>"
kubectl delete -f https://raw.githubusercontent.com/litmuschaos/litmus/master/litmus-portal/litmus-portal-crds.yml
kubectl delete -f ${LITMUS_PORTAL_NAMESPACE}-ns-scoped-litmus-portal-manifest.yml -n ${LITMUS_PORTAL_NAMESPACE}
Additional information