1. Ondersteuning
  2. Knowledge Base
  3. Uptrends Terraform
  4. Ondersteuning voor Terraform in Uptrends

Ondersteuning voor Terraform in Uptrends

Opmerking: Ondersteuning voor Terraform in Uptrends is beschikbaar voor accounts op Enterprise-niveau.

Dit artikel biedt informatie over hoe u uw bestaande Uptrends-monitoringconfiguratie naar Terraform kunt migreren. Als u nog niet bekend bent met het concept van Terraform, raden we u aan de Engelstalige Terraform-documentatie te lezen voor meer informatie.

Uptrends biedt integratie met en ondersteuning voor Terraform, een krachtige Infrastructure as Code (IaC)-tool waarmee u uw volledige Uptrends-monitoringconfiguratie kunt beheren, waaronder controleregels, alertconfiguraties en andere resources door gebruik van code.

Met Uptrends Terraform kunt u:

  • Uw Uptrends-configuratie gemakkelijk onderhouden en automatiseren door gebruik van configuratiebestanden in plaats van deze te beheren met een UI-gebaseerde omgeving of via de Uptrends API.
  • Uw configuratiebestanden beheren met versiebeheersystemen zoals Git om wijzigingen efficiënt te volgen en rollbacks uit te voeren met behulp van een GitOps-benadering.
  • De configuratie definiëren en die snippets hergebruiken binnen uw structuur.
  • Uw bestaande Uptrends-configuratie downloaden en direct aan de slag gaan.

U vindt de Uptrends Terraform Registry hier.

Vereisten

Er moet aan de volgende vereisten zijn voldaan om de Uptrends Terraform te gebruiken:

  • Installeer Terraform op uw lokale machine.
  • Een actief Uptrends-account. Als u er nog geen heeft, meld u dan aan en probeer Uptrends nu uit.
  • Uptrends API key. U kunt eenvoudig een Uptrends API key creëren door te klikken op Maak uw Terraform-gebruiker op de Uptrends Terraform-hub. U kunt ook uw bestaande API keys gebruiken voor authenticatie bij Terraform.
  • Een IDE om uw configuratiebestanden te beheren en te bewerken in een code-editor. Als u Visual Studio Code gebruikt, zorg er dan voor dat u de HashiCorp Terraform-extensie heeft geïnstalleerd voor syntaxmarkering en automatische aanvulling.

Uw Terraform-infrastructuur configureren

Ga als volgt te werk om uw infrastructuur te configureren:

  1. Controleer of aan alle vereisten is voldaan.

  2. Creëer een directory voor uw Terraform-configuratie.

    a. Creëer in de directory een bestand, main.tf.

  3. Ga naar de Uptrends Terraform-hub voor de instructies voor de eerste installatie.

    a. In Stap 1: Starten met monitoring, kopieert en plakt u de configuratie in uw main.tf-bestand:

terraform {
    required_providers {
        itrs-uptrends = {
            source = "registry.terraform.io/ITRS-Group/itrs-uptrends"
            version = "1.0.1" # Depends on the latest version available

        }
    }
}

provider "itrs-uptrends" {
    username = "your_username" # Replace with your Uptrends API username
    password = "your_password" # Replace with your Uptrends API password
    alias = "uptrendsauthenticated"
}

Als u een API key heeft gecreëerd met Maak uw Terraform-gebruiker, worden de velden username en password automatisch ingevuld. Gebruik anders uw bestaande API-inloggegevens in de configuratie.

  1. Voer terraform init uit om Terraform te initialiseren. Een .terraform.lock.hcl-bestand en een .terraform-directory worden toegevoegd aan de root directory.

Terraform init command

Nadat u uw infrastructuur heeft geconfigureerd, kunt u uw huidige Uptrends-controleregelconfiguratie in Terraform gebruiken. Om dit te doen importeert u resources van het Uptrends-platform.

U kunt ook uw resources definiëren en beheren door een resource te creëren, bij te werken of te vernietigen.

Resources van het Uptrends-platform importeren

Als u uw bestaande configuratie van het Uptrends-platform naar Terraform wilt halen, kunt u bestanden importeren om uw resources aan uw Terraform-state toe te voegen. Op deze manier hoeft u niet alles handmatig helemaal opnieuw te creëren.

Ga als volgt te werk om resources te importeren:

  1. Ga naar Uptrends Terraform-hub.
  2. In Stap 2: Statussen importeren > Klik op Alles downloaden.
  3. Pak de gedownloade bestanden uit en plaats ze in de root directory, op hetzelfde niveau als main.tf.
  4. Voer terraform plan -generate-config-out="name_of_generated_file.tf" uit om de configuratie te genereren. Met deze opdracht kunt u de wijzigingen die Terraform aan uw infrastructuur zal aanbrengen vooraf bekijken en controleren op basis van uw configuratiebestanden en de huidige state.

Importeer Uptrends resources in Terraform

U ziet dat er een nieuw bestand, name_of_generated_file.tf, is gecreëerd in de root directory. Dit bestand bevat de configuratie voor de resources die zijn geïmporteerd.

Als u voor elk resourcetype aparte configuratiebestanden wilt genereren, verwerkt u de importbestanden één voor één en geeft u elk uitvoerbestand een unieke naam (bijvoorbeeld name_of_resource_type.tf).

  1. Voer terraform apply uit om de importwijzigingen te bevestigen.

Nadat de import is voltooid, kunt u de import state blocks verwijderen.

  1. Controleer of het bestand terraform.tfstate is bijgewerkt met de geïmporteerde resources.

Resources definiëren

Door een resource in Terraform te definiëren, kunt u resources in uw Uptrends-account creëren, bijwerken en vernietigen. U kunt meerdere resources definiëren in uw main.tf-bestand of in afzonderlijke .tf-bestanden in dezelfde directory.

Elk resource block definieert een specifieke Uptrends-resource die u wilt beheren. Bijvoorbeeld alertdefinities, controleregels, operators en meer. Zodra een resource is gedefinieerd, wordt een terraform.tfstate-bestand gecreëerd. Dit bestand volgt alle resources en wijzigingen die door Terraform worden beheerd.

Raadpleeg de Uptrends Terraform-documentatie voor meer informatie over de beschikbare resources.

Een resource creëren

Ga als volgt te werk om een resource te creëren:

  1. Voeg een resource block toe.
  2. Voer terraform apply uit om wijzigingen te bevestigen.
  3. Typ yes om verder te gaan met de wijzigingen.

Een bericht bevestigt dat de resources zijn gecreëerd. Controleer of het bestand terraform.tfstate is bijgewerkt met de nieuwe resources.

Een resource bijwerken

Ga als volgt te werk om een resource bij te werken:

  1. Wijzig een resource block volgens uw vereisten.
  2. Voer terraform apply uit om wijzigingen te bevestigen.
  3. Typ yes om verder te gaan met de wijzigingen.

Als dit lukt, ziet u een bericht dat de resources zijn bijgewerkt. Controleer of het bestand terraform.tfstate is bijgewerkt met de gewijzigde resources.

Een resource vernietigen

Om een resource te vernietigen doet u het volgende:

  1. Identificeer het resource block dat u wilt verwijderen. U vindt de blocks in uw bestand main.tf of in andere .tf-bestanden in dezelfde directory.
  2. Voer een van de volgende handelingen uit:
  • Om een specifieke resource te verwijderen verwijdert u het resource block uit de configuratie en voert u terraform apply uit.
  • To remove all managed resources, run terraform destroy.
  1. Typ yes om verder te gaan met de wijzigingen.

Als dit lukt, ziet u een bericht dat de resources zijn vernietigd. Controleer of het bestand terraform.tfstate is bijgewerkt met de wijzigingen

Omgaan met ingrijpende wijzigingen

Als een nieuwe versie van de itrs-uptrends-provider ingrijpende wijzigingen introduceert, zoals wijzigingen in attribute- of resourcenamen, moet u alle betrokken resources opnieuw importeren. Als de wijzigingen niet specifiek worden vermeld, raden we aan alle resources opnieuw te importeren om compatibiliteit te garanderen.

Als u resources heeft hernoemd, houd er dan rekening mee dat als er tijdens de bètafase een ingrijpende wijziging wordt aangekondigd, het opnieuw importeren van die resources uw naamgevingswijzigingen overschrijft.

Problemen oplossen

Als u problemen ondervindt, voer dan de opdracht terraform plan uit om uw huidige configuratie te vergelijken met de bestaande Terraform-state. Dit helpt u bij het identificeren van afwijkingen en potentiële problemen. Raadpleeg voor meer informatie de officiële documentatie van Terraform plan command.

U kunt ook contact opnemen met ons Support team en de volgende informatie verstrekken:

  • De acties die u heeft uitgevoerd die tot de bug hebben geleid of deze hebben veroorzaakt.
  • De resource block die is geconfigureerd vanuit uw .tf-bestand.
  • De resource state van uw terraform.tfstate.
  • De uitvoer van de opdracht terraform plan.
Door deze website te gebruiken, stemt u in met het gebruik van cookies in overeenstemming met ons Cookiebeleid.