{"id":26267288,"url":"https://github.com/oslabs-beta/podmd","last_synced_at":"2025-08-12T01:08:25.196Z","repository":{"id":257862197,"uuid":"869049560","full_name":"oslabs-beta/PodMD","owner":"oslabs-beta","description":"Developer Tool Enabling Kubernetes Custom Pod Restart Configurations","archived":false,"fork":false,"pushed_at":"2024-11-07T23:06:01.000Z","size":28472,"stargazers_count":18,"open_issues_count":5,"forks_count":0,"subscribers_count":2,"default_branch":"dev","last_synced_at":"2025-04-30T19:07:10.847Z","etag":null,"topics":["aws","aws-eks","developer-tools","kubernetes","kubernetes-monitoring","pod--devops"],"latest_commit_sha":null,"homepage":"https://podmd.dev","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/oslabs-beta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"open-source-labs","custom":["https://donorbox.org/donations-to-oslabs-inc"]}},"created_at":"2024-10-07T16:23:35.000Z","updated_at":"2025-01-17T20:36:04.000Z","dependencies_parsed_at":"2024-11-03T00:19:09.554Z","dependency_job_id":"0a0b34e0-58e0-4855-8658-0d224080a57f","html_url":"https://github.com/oslabs-beta/PodMD","commit_stats":null,"previous_names":["oslabs-beta/pod-pulse","oslabs-beta/podmd"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/oslabs-beta/PodMD","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2FPodMD","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2FPodMD/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2FPodMD/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2FPodMD/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oslabs-beta","download_url":"https://codeload.github.com/oslabs-beta/PodMD/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2FPodMD/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269982061,"owners_count":24507301,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-11T02:00:10.019Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","aws-eks","developer-tools","kubernetes","kubernetes-monitoring","pod--devops"],"created_at":"2025-03-14T04:16:25.048Z","updated_at":"2025-08-12T01:08:25.175Z","avatar_url":"https://github.com/oslabs-beta.png","language":"JavaScript","funding_links":["https://github.com/sponsors/open-source-labs","https://donorbox.org/donations-to-oslabs-inc"],"categories":[],"sub_categories":[],"readme":"# PodMD\n\nPodMD is a tool for developers utilizing and maintaining kubernetes clusters.\\\nWith PodMD, you may set a specific configuration of desired pod metrics\\\nyou wish to monitor and enable an automatic restart of designated pods based\\\non your specific needs.\n\n## Getting Started\n\nIn order to use PodMD, you need to deploy Prometheus on your cluster to\\\nmonitor pod metrics. You may also wish to install Grafana, but it isn't\\\nnecessary for PodMD to function.\n\nAdditionally, it is _strongly_ recommended you utilize Helm for installing\\\nthe following tools. You can find instructions to install Helm below.\n\n# First: Initial Setup\n\nYou can deploy the application either locally, to Minikube, or on the cloud, to AWS.\\\nSee below for a detailed walkthrough.\n\n## Implementing Monitoring via Minikube\n\nIf using Minikube, perform the following steps to get your Kubernetes cluster\\\nrunning with Prometheus. Continue to last, optional step if you would like to\\\naccess visualizations with Grafana.\n\n1. Ensure that you have the following installed to your computer:\\\n   [Docker](https://www.docker.com/)\\\n   [Minikube](https://minikube.sigs.k8s.io/docs/start/)\\\n   [Helm](https://v3-1-0.helm.sh/docs/intro/install/)\\\n   [Kubernetes Kubectl](https://kubernetes.io/docs/tasks/tools/)\\\n   [Node.js](https://nodejs.org/en)\n2. If you already have a Minikube cluster in Docker that is no longer running\\\n   and you are trying to restart the tool, you must first delete the old cluster\\\n   by running the following command in your home directory:\n\n   ```\n   minikube delete\n   ```\n\n3. Make sure you have Docker running then start your cluster and install the\\\n   Prometheus-operator by running the following commands in your home directory:\n\n   ```\n   minikube start\n   ```\n\n   ```\n   helm repo add prometheus-community https://prometheus-community.github.io/helm-charts\n   helm repo add stable https://charts.helm.sh/stable\n   helm repo update\n   ```\n\n   ```\n   helm install prometheus prometheus-community/kube-prometheus-stack\n   ```\n\n4. Once Prometheus pods and services are running on your cluster, which can take\\\n   a few minutes, run Prometheus on [PORT 9090](https://localhost:9090/) with the following command:\n   ```\n   kubectl port-forward prometheus-prometheus-kube-prometheus-prometheus-0 9090\n   ```\n5. After navigating to [PORT 9090](https://localhost:9090/) you may enter commands in the\\\n   Prometheus dashboard if you would like to test its functionality. The search\\\n   bar requires the use of PromQL to gather various metrics. You can read more\\\n   here: [Prometheus Documentation | Query Examples](https://prometheus.io/docs/prometheus/latest/querying/examples/)\n6. Clone this PodMD repository to your computer.\n7. Install dependencies by running the following command from your new, local repository:\n   ```\n   npm install\n   ```\n\n## Implementing Monitoring via AWS EKS\n\n1. Ensure that you have the following installed to your computer:\\\n   [AWS Command Line Interface](https://aws.amazon.com/cli/)\\\n   [AWS EKS Command Line Interface (eksctl)](https://eksctl.io/installation/)\\\n   [Helm](https://v3-1-0.helm.sh/docs/intro/install/)\\\n   [Kubernetes Kubectl](https://kubernetes.io/docs/tasks/tools/)\\\n   [Node.js](https://nodejs.org/en)\n2. Clone this PodMD repository to your computer and run the following command from the\\\n   resulting directory :\n   ```\n   aws configure\n   ```\n   [AWS User Guide](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html)\n3. Create AWS EKS Clusters, example command is provided below with region set to us-west-1.\\\n   Clusters must be at least size medium to operate:\n   ```\n   eksctl create cluster --name=prometheus-3 --region=us-west-1 --version=1.31 --nodegroup-name=promnodes --node-type t2.medium --nodes 2\n   ```\n4. Once AWS Cluster is running, install the Prometheus-operator by running the following commands in your home directory:\n   ```\n   helm repo add prometheus-community https://prometheus-community.github.io/helm-charts\n   helm repo add stable https://charts.helm.sh/stable\n   helm repo update\n   ```\n5. Deploy Prometheus on your cluster by running the following command in your home directory:\n   ```\n   helm install prometheus prometheus-community/kube-prometheus-stack\n   ```\n6. Once Prometheus pods and services are running on your cluster, which can take\\\n   a few minutes, run Prometheus on [PORT 9090](https://localhost:9090/) with the following command:\n   ```\n   kubectl port-forward prometheus-prometheus-kube-prometheus-prometheus-0 9090\n   ```\n7. After navigating to [PORT 9090](https://localhost:9090/) you may enter commands in the\\\n   Prometheus dashboard if you would like to test its functionality. The search\\\n   bar requires the use of PromQL to gather various metrics. You can read more\\\n   here: [Prometheus Documentation | Query Examples](https://prometheus.io/docs/prometheus/latest/querying/examples/)\n8. Install dependencies by running the following command from your new, local repository:\n   ```\n   npm install\n   ```\n\n# Next: Running Application\n\nYou can run the application either in your browser or in a desktop application. See below for\\\ndetailed instructions on how to run the application:\n\n## Running Application in Browser\n\n1. Build the application by running the following command from your new, local repository:\n   ```\n   npm run build\n   ```\n2. Start the application by running the following command from your new, local repository:\n   ```\n   npm start\n   ```\n\n## Launch Desktop Application\n\n1. Build and run Electron app by running the following command from your new, local\\\n   repository:\n   ```\n   npm run electron\n   ```\n\n# Optional: Accessing Grafana Visualizations\n\nShould you also wish to run Grafana in your browser, this can by done by running the\\\nfollowing command from your home directory:\n\n```\nkubectl port-forward deployments/prometheus-grafana 3000\n```\n\nNavigate to [PORT 3000](https://localhost:3000/). Finally, you will need to login to access visualizations. The default\\\nusername is `admin` and the default password is `prom-operator`.\n\nPodMD\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foslabs-beta%2Fpodmd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foslabs-beta%2Fpodmd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foslabs-beta%2Fpodmd/lists"}