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

refactor: DevOps and AWS course task 8 #1734

Merged
merged 1 commit into from
Dec 2, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 26 additions & 33 deletions devops/modules/4_monitoring-configuration/task_8.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,47 +7,40 @@ In this task, you will install Grafana on your Kubernetes (K8s) cluster using a
## Steps

1. **Install Grafana**

- Follow the instructions to install Grafana using the Helm chart by Bitnami. Refer to the [Grafana documentation](https://grafana.com/docs/) for more details.
- Ensure Grafana is available from the internet via an encrypted connection.

2. **Create Dashboard**

2. **Configure Grafana**
- Add a new data source pointing to the existing Prometheus installation.
- Create a dashboard with main K8s metrics visualized, such as CPU and memory utilization, nodes capacity, etc.

3. **Store Artifacts in Git**

- Store the Helm chart and configuration files for Grafana deployment in a new git repository.

4. **Additional Tasks**
- Document the Grafana setup, including the dashboard creation, in a README file.
3. **Create a Dashboard**
- Create a dashboard with basic metrics visualized, such as CPU and memory utilization, storage usage, etc.
4. **Document the Setup**
- Create a README file documenting the Grafana setup, including the dashboard creation.

## Submission

- Provide a PR with the Helm chart and configuration files for Grafana deployment in a new repository.
- Ensure that Grafana is installed and available from the internet via an encrypted connection.
- Provide a screenshot of the Grafana dashboard with main K8s metrics visualized.
- Provide a README file documenting the Grafana setup, including the dashboard creation.
- Provide a PR with automation of a Grafana deployment in Kubernetes with IaC or CI/CD pipeline.
- Provide an output of `kubectl get pods` with running Grafana.
- Include a screenshot or configuration of the Prometheus data source configuration.
- Include a screenshot of the dashboard created.
- Include a JSON file of the dashboard layout.
- Provide a README file documenting the Grafana deployment and configuration.

## Evaluation Criteria (100 points for covering all criteria)

1. **Grafana Installation (40 points)**

1. **Grafana Installation (30 points)**
- Grafana is installed on the K8s cluster using the Helm chart by Bitnami.
- Grafana is available from the internet via an encrypted connection.

2. **Dashboard Creation (30 points)**

- A new data source pointing to the existing Prometheus installation is added.
- A dashboard is created with main K8s metrics visualized, such as CPU and memory utilization, nodes capacity, etc.

3. **Repository Submission (10 points)**
- A data source pointing to the existing Prometheus installation is added.
2. **Dashboard Creation (40 points)**
- A dashboard is created with basic metrics visualized, such as CPU and memory utilization, storage usage, etc.
3. **Deployment Automation (10 points)**
- Automation of deployment with IaC or CI/CD pipeline is created.
4. **Additional Tasks (20 points)**
- Admin user password is created with a separate secret. (10 points)
- A JSON file of the dashboard layout is provided. (5 points)
- The Grafana setup, including the dashboard creation, is documented in a README file. (5 points)

- A repository is created with the Helm chart and configuration files for Grafana deployment.
## References

4. **Additional Tasks (20 points)**
- **Documentation (10 points)**
- The Grafana setup, including the dashboard creation, is documented in a README file.
- **Security Configuration (10 points)**
- Grafana is configured with proper authentication and security settings.
- [Grafana Documentation](https://grafana.com/docs/)
- [Helm Chart for Grafana](https://github.com/bitnami/charts/tree/main/bitnami/grafana)
- [Tool to impose load](https://linux.die.net/man/1/stress)
- [Understanding Machine CPU Usage](https://www.robustperception.io/understanding-machine-cpu-usage/)
Loading