- Fork this repository to your profile, clone it to your local machine, navigate into the directory, then run
npm install
. - Ensure your local and/or cloud clusters are deployed, then within the root directory, create a
.env.local
file and paste in the following:NODE_ENV = development MONGO_URI = "[REPLACE THIS WITH YOUR MONGODB CONNECTION STRING]" NEXTAUTH_URL = https://localhost:3500 BCRYPT_SALT = 10 NEXTAUTH_SECRET = 12345678910 KUBECOST_IP = "[REPLACE THIS WITH YOUR DEPLOYED KUBECOST IP ADDRESS]" LOCAL_KUBECOST_IP = "[REPLACE THIS WITH YOUR LOCAL KUBECOST IP ADDRESS]" LOCAL_CLUSTER_IP = "localhost:3300" LOCAL_CLUSTER_NAME = "[REPLACE THIS WITH THE UNIQUE EMBED ID FROM YOUR LOCAL CLUSTER'S GRAFANA SHARE LINK]" DEPLOYED_CLUSTER_IP = "[REPLACE THIS WITH YOUR DEPLOYED* CLUSTER IP ADDRESS]" DEPLOYED_CLUSTER_NAME = "[REPLACE THIS WITH THE UNIQUE EMBED ID FROM YOUR CLOUD HOSTED GRAFANA SHARE LINK]" DEPLOYED_CLUSTER_NAME_2 = "[OPTIONAL: REPLACE THIS WITH THE UNIQUE EMBED ID FROM YOUR CLOUD HOSTED GRAFANA SHARE LINK]"
- Be sure to replace the areas of all caps text including the enclosing square brackets with the specified information, then save the file.
- *Functions for both depolyments on AWS and/or Google.
- For more detailed instructions, please visit our website os-poseidon.com/setup.
- Be sure to replace the areas of all caps text including the enclosing square brackets with the specified information, then save the file.
- Regarding your command options:
npm run port
runs the application on port 3500 specifically for cloud deployments.npm run forward
runs the application on port 3500 for both local and cloud deployments.npm run test
assures that any processes on port 3500 is killed then in parallel runs the application on that port and opens Cypress.
- Cloud and local K8s cluster support
- Cluster metric visualization
- Cost-analysis via Kubecost
- Apply a regex functionality to identify the id name from embed urls and provide an input field in the registration form to store cluster IP addresses for the client's ease of use.
- Connect a feature to directly customize cluster specifics
- Implement an authentication hierarchy to allow for role and privilege assignments. This secures and regulates any manipulations to an organization's clusters.
- Create a filter for the graphs on the dashboard for cluster and data types.
- Integrate D3.js for graph styling.
- Move forward with AWS hosting for online deployment of the app which allows for greater scalability and dependability.
- Develop a notification system within the application to enable users to receive notifications, such as through the Slack API, in case their clusters experiences downtime.
- Improve visual comfort and reduce eye strain by implementing dark mode and including dynamic display scaling.
Joshuah Edwards | Sarah Chow | Alina Grafkina | Will Moody |
---|---|---|---|