All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning v2.0.0.
- Provisioned 3 virtual machines using Terraform modules
- Windows
WinRM
configured using Azure custom script extensions and Terraform - Linux target node is provisioned with NGINX using Terraform
file
andremote-exec
provisioners - Windows target node is configured with node exporter and IIS using Terraform
file
andremote-exec
provisioners - Cloudflare
DNS records
are updated automatically viaPowerShell
using the IP addresses from Terraform state - Azure custom script extension module for Linux is available too, but not used for the moment
- Whole infrastructure provision is fully automated using
Terraform
andAzure pipelines
- SSH keys copied securely inside Azure pipelines
- Fixed file encodings
(BOM characters, EOL)
to make sure consistent provision in Azure pipelines agent and locally - Setup
sudo add-apt-repository
in non-interactive mode - Efficient automatic upgrade of Linux system packages using Terraform
remote-exec
provisioners andBash
- Efficient automatic provision of
Prometheus server
usingBash
and Terraformremote-exec
provisioners - Efficient automatic provision of Linux
node exporter
for Prometheus usingBash
and Terraformremote-exec
provisioners - Added
PowerShell
scripts for quick start and stop of VMs usingAz PowerShell
- Deploy grafana
- Update readme
- Allow grafana port in NSG
- Configure Alert Manager
- Configure rules: CPU, RAM, Disk, Shutdown
- Minor fixes in scripts
- Configure rules: CPU, RAM, Disk, Shutdown (Windows)
- Stress test for linux:
stress-ng
- Stress test for windows:
heavyload
- Update readme
- Add grafana dashboard for linux node exporter
- Add grafana dashboard for windows node exporter