Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kubernetes Generic Check #436

Closed
moshloop opened this issue Mar 24, 2022 · 1 comment · Fixed by #1756
Closed

Kubernetes Generic Check #436

moshloop opened this issue Mar 24, 2022 · 1 comment · Fixed by #1756
Assignees
Labels
Milestone

Comments

@moshloop
Copy link
Member

moshloop commented Mar 24, 2022

kubernetesResource:
        
    - name: deploy a pod and check that it is accessible via ingress
       staticResources: # are deleted when the canary is deleted
         - Ingress spec
         - svc spec
       resources: # deleted after the check
         - A pod spec
       waitForReady: true # wait for resources to be ready before running checks
       timeout: 10m
       testResults: # extract test results from running pods
            -  path: /test/junit.xml
                type: junit # default
                pod:
                    name: {{.resources[0].metadata.name
                    # selector:
       checks:
         - http:
             url: {{.staticResources[0].ingress.spec.hostname }}             

Successor to pod, namespace jmeter and junit checks

Work started here: #368

@moshloop moshloop added this to the Backlog milestone Mar 20, 2023
@moshloop moshloop changed the title Rename junit check to pod-runner Kubernetes Generic Check Mar 14, 2024
@moshloop moshloop modified the milestones: Backlog, v1.0.0 Mar 15, 2024
@k8sexperiment
Copy link

It would be very cool to have a full, flexible Kubernetes check specification, especially for cloud environments:

Create a pod, and once it's ready, you can check:

External-dns/Ingress/Cert-manager via Ingress manifest: Once the Ingress is created, you can verify that a certificate was created for the host and a record was created via external-dns. Hence, if TLS ingress is successful, the URL check should return a 200/green status.

ImagePull: This is simple; if the pod is created and pulled using a custom registry, it should be working properly.

HPA/Keda: Utilizing k6 load test, check if the pod is scaling based on metrics.

WorkloadIdentity: Suppose correct credentials are added as annotations/labels to the pod's ServiceAccount and pod.spec.template. In that case, you might want to test access to the Cloud resources from the pod. You can mount secrets from a cloud vault or push/pull files from S3/GCS/Azure StorageAccount, etc. Again, this might be related to Kubernetes resources specification.

PVC Volume attached: Test CSI to ensure proper functionality.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants