Provisioning, configurazione e rimozione delle risorse
Utilizzare Terraform per distribuire, modificare e rimuovere le risorse nel cloud in modo efficiente.
Informazioni sui file di stato Terraform
Terraform memorizza le informazioni sullo stato per tenere traccia delle risorse dell'infrastruttura gestita, mappare le risorse distribuite alla configurazione, tenere traccia dei metadati e migliorare le prestazioni per le distribuzioni dell'infrastruttura di grandi dimensioni.
Per impostazione predefinita, il file terraform.tfstate
è memorizzato sull'host locale. Questo funzionamento predefinito non è ottimale negli ambienti IT in cui più utenti devono creare ed eliminare le risorse definite in una determinata configurazione. Per controllare la distribuzione e la gestione delle risorse in un ambiente multiutente, memorizzare i file di stato Terraform nello storage degli oggetti Oracle Cloud Infrastructure e condividere i file di stato e i file di lock tra tutti gli utenti.
Vedere Utilizzo dell'area di memorizzazione degli oggetti per i file di stato Terraform.
Creazione delle risorse
Dopo aver impostato le variabili nel file terraform.tfvars
, utilizzare l'interfaccia CLI Terraform per distribuire le risorse definite nella configurazione di Terraform.
Apply complete! Resources: 33 added, 0 changed, 0 destroyed.
Outputs:
admin_private_ip = 10.0.1.10
bastion_public_ip = 203.0.113.101
kubeconfig = export KUBECONFIG=generated/kubeconfig
ocirtoken = <sensitive>
ssh_to_admin = ssh -i /home/joe/.ssh/id_rsa -J opc@203.0.113.101 opc@10.0.1.10
ssh_to_bastion = ssh -i /home/joe/.ssh/id_rsa opc@203.0.113.101
- L'output
kubeconfig
visualizza il comando che è possibile utilizzare per impostare la variabile di ambienteKUBECONFIG
sull'host locale. Eseguire questo comando se si desidera utilizzare l'interfaccia CLIkubectl
dall'host locale per gestire il cluster Kubernetes. Il comando impostaKUBECONFIG
sul filegenerated/kubeconfig
, che Terraform crea durante l'applicazione della configurazione. - L'output
ssh_to_admin
visualizza il comandossh
che è possibile utilizzare per connettersi all'host di amministrazione. - L'output
ssh_to_bastion
visualizza il comandossh
che è possibile utilizzare per connettersi all'host di base.
Nota:
È possibile visualizzare questo output Terraform in qualsiasi momento eseguendo il comandoterraform output
Consenti all'host di amministrazione di gestire le risorse
Per consentire all'host di amministrazione di gestire le risorse nel compartimento, puoi designare tale host come principal dell'istanza. Usare questa funzione se si desidera eseguire i comandi CLI o effettuare chiamate API dall'host di amministrazione per gestire le risorse nella topologia.
Nota:
Qualsiasi utente in grado di connettersi a un'istanza di computazione mediante SSH eredita i privilegi di contesto dell'istanza concessi all'istanza. Indicare se si desidera designare l'host di amministrazione come principal di istanza. È possibile disattivare o attivare questa funzione in qualsiasi momento senza alcun impatto sull'host di amministrazione.-
Per designare l'host di amministrazione come principal di istanza, impostare quanto segue in
terraform.tfvars
, quindi eseguireterraform apply
.admin_instance_principal = true
L'host di amministrazione è diventato membro di un gruppo dinamico e viene creata un'istruzione di criterio per consentire al gruppo dinamico di gestire tutte le risorse nel compartimento.
-
Per ritirare i privilegi del principal dell'istanza dall'host di amministrazione, impostare quanto segue in
terraform.tfvars
, quindi eseguireterraform apply
.admin_instance_principal = false
Abilitare o disabilitare le notifiche per l'host di base
È possibile utilizzare il servizio di notifica di Oracle Cloud Infrastructure per ricevere messaggi di stato dall'host di base quando vengono applicati gli aggiornamenti o quando Oracle Ksplice rileva un tentativo di esplosione conosciuto.
Nota:
Il codice Terraform in questa soluzione configura le notifiche solo quando si usa l'immagine Oracle Autonomous Linux predefinita.-
Per abilitare le notifiche per l'host di base, impostare le variabili seguenti in
terraform.tfvars
:bastion_notification_enabled = true bastion_notification_endpoint = "email_address" bastion_notification_protocol = "EMAIL" bastion_notification_topic = "topic_name"
Di seguito è riportato un esempio di
terraform.tfvars
con le variabili correlate alle notifiche definite.bastion_notification_enabled = true bastion_notification_endpoint = "joe@example.com" bastion_notification_protocol = "EMAIL" bastion_notification_topic = "bastion"
- Se l'host di base è già stato creato e si desidera abilitare le notifiche ora, impostare queste variabili ed eseguire di nuovo
terraform apply
.- I criteri richiesti vengono definiti per consentire all'host di base di pubblicare le notifiche.
- Viene creato un argomento di notifica e l'indirizzo e-mail specificato è sottoscritto all'argomento.
- L'host di base è configurato per l'invio delle notifiche.
Dopo aver creato le risorse, si riceverà un messaggio di posta elettronica in cui viene richiesto di confermare la sottoscrizione.
-
Per disabilitare le notifiche, impostare quanto segue in
terraform.tfvars
ed eseguireterraform apply
.bastion_notification_enabled = false admin_notification_enabled = false