Amministrazione dell'agente dell' Instana su Red Hat OpenShift
Dopo aver installato l'agente, configuralo e gestiscilo secondo le tue esigenze. Consulta l'elenco seguente per conoscere tutte le opzioni di configurazione dell'agente disponibili su Red Hat OpenShift.
Verifica dello stato del pod
Dopo aver installato l'agente, è possibile verificare lo stato dei pod nella distribuzione dell'agente utilizzando i seguenti comandi:
kubectl get pods -n instana-agent
kubectl get agent instana-agent -n instana-agent -o yaml | yq ".status"
In una buona distribuzione, il 'STATUS di tutti i pod nello spazio dei nomi deve essere 'Running. La risorsa personalizzata 'instana-agent dovrebbe visualizzare anche 'status: Running, come mostrato nell'esempio seguente:
$ kubectl get pods -n instana-agent
NAME READY STATUS RESTARTS AGE
controller-manager-6478cb4c6f-8s29b 1/1 Running 0 70m
instana-agent-8ftnj 1/1 Running 0 70m
instana-agent-9w4vc 1/1 Running 0 70m
instana-agent-k8sensor-5bbf568976-5pjk2 1/1 Running 0 3h2m
instana-agent-k8sensor-5bbf568976-h96hr 1/1 Running 0 3h2m
instana-agent-k8sensor-5bbf568976-lnbsg 1/1 Running 0 3h2m
instana-agent-zpmrj 1/1 Running 0 70m
$ kubectl get agent instana-agent -n instana-agent -o yaml | yq ".status"
conditions:
- lastTransitionTime: "2024-08-06T08:12:03Z"
message: most recent reconcile of agent CR completed without issue
observedGeneration: 2
...
observedGeneration: 2
oldVersionsUpdated: true
operatorVersion: 0.0.1-dev
status: Running
Configurazione dell'agent
È possibile configurare l'agente Instana per Kubernetes e Red Hat OpenShift in due modi diversi, a seconda del metodo utilizzato per installare l'agente.
Configurazione dell'agente installato tramite l'operatore
Per configurare l'agente Instana installato tramite un operatore, procedere come segue:
Apri il file di risorse personalizzate YAML
instana-agent.customresource.yaml.Salvare le configurazioni sotto '
spec.agent.configuration_yaml. Vedi il seguente esempio:spec: agent: configuration_yaml: | # Example of configuration yaml template # Host com.instana.plugin.host: tags: - 'dev' - 'app1'Applica le modifiche eseguendo il seguente comando:
kubectl apply -f instana-agent.customresource.yaml
Per un esempio dettagliato del file ` YAML `, consultare instana_v1_extended_instanaagent.yaml.
Per ulteriori informazioni sulla configurazione degli agenti, consultare la sezione "Configurazione degli agenti host tramite il file di configurazione degli agenti ".
Configurazione dell'agente installato tramite il grafico " Helm "
Per configurare l'agente di Instana installato tramite il grafico " Helm ", scegliere uno dei seguenti metodi:
Specificare la configurazione sulla riga di comando utilizzando il flag '
--set agent.configuration_yaml=<config>.Aggiungere la configurazione al file di configurazione del grafico Helm '
values.yaml. Passare il file al comando Helm install (durante l'installazione) o Helm upgrade (dopo l'installazione) usando il flag '-f.
Per un elenco dettagliato di tutti i parametri di configurazione, consultare la tabella all'indirizzo InstanaHelm.
Personalizzazione dell' Container Registry
A seconda dell'ambiente Red Hat OpenShift, potrebbe essere necessario personalizzare il Red Hat OpenShift Container Registry.
Aggiunta di flussi di immagini
Se non è possibile prelevare le immagini dal IBM Cloud Container Registryicr.io), è necessario aggiungere manualmente due flussi di immagini. Nel Red Hat OpenShift Container Registry, accedere allo spazio dei nomi 'instana-agent e aggiungere i seguenti flussi di immagini:
Name: instana-agent
Image: icr.io/instana/agent:latest
Il flusso di immagini risultante è 'docker-registry.default.svc:5000/instana-agent/instana-agent:latest.
Name: k8sensor
Image: icr.io/instana/k8sensor:latest
Il flusso di immagini risultante è 'docker-registry.default.svc:5000/instana-agent/k8sensor:latest.
Utilizza i rispettivi nuovi flussi di immagini nell' YAML
Personalizzazione del monitoraggio con ConfigMap
È possibile personalizzare il monitoraggio secondo le proprie esigenze configurando il file 'agent.configuration_yaml. Per ulteriori informazioni, consultare il Manuale di riferimento alla configurazione.
Per ulteriori informazioni sulla configurazione, consultare la sezione "Configurazione dell'agente host".
Aggiornamento dell'installazione dell'agente
A seconda del metodo di installazione utilizzato, è possibile aggiornare l'agente Instana per Red Hat OpenShift in diversi modi.
Aggiornamento di un impianto dell'operatore
L'aggiornamento dell'installazione dell'agente comporta due fasi:
- Aggiornamento dell'operatore
- Aggiornamento delle immagini
Per aggiornare l'Operator all'ultima versione tramite OLM, segui i passaggi descritti nella sezione "Approvazione manuale di un aggiornamento dell'Operator in sospeso" nella documentazione di Red Hat OpenShift.
È anche possibile configurare l'operatore in modo che si aggiorni automaticamente. Per ulteriori informazioni, consultare la sezione Modifica del canale di aggiornamento per un operatore.
Per aggiornare manualmente l'operatore tramite l'interfaccia utente di Instana, procedere come segue:
Nella pagina iniziale dell'interfaccia utente di Instana, fare clic su "Agenti e addetti alla raccolta ". Nella scheda " Instana Agents ", seleziona "Installa agenti".
Nella pagina del catalogo di distribuzione dell'agente, fare clic sul riquadro OpenShift - Operator.
Copiare ed eseguire il comando per distribuire il nuovo operatore. Vedere il seguente esempio di comando:
kubectl apply -f https://github.com/instana/instana-agent-operator/releases/latest/download/instana-agent-operator.yamlNota: per aggiornare l'operatore a una versione specifica, eseguire il seguente comando:
Per l'elenco delle versioni dell'operatore disponibili, consultare le Note di rilascio relative all'operatore dell'agente di Instana.kubectl apply -f https://github.com/instana/instana-agent-operator/releases/download/<operator_version>/instana-agent-operator.yaml
Una volta aggiornato l'operatore, procedere all'aggiornamento delle immagini.
Aggiornamento di un'installazione di grafici Helm
L'aggiornamento dell'installazione dell'agente comporta due fasi:
- Aggiornamento del grafico " Helm "
- Aggiornamento delle immagini
Per aggiornare il grafico dell' Helm e dell'agente, eseguire i seguenti comandi:
helm pull --repo https://agents.instana.io/helm --untar instana-agent
kubectl apply -f instana-agent/crds
oc adm policy add-scc-to-user privileged -z instana-agent -n instana-agent
oc adm policy add-scc-to-user anyuid -z instana-agent-remote -n instana-agent
helm upgrade --namespace instana-agent instana-agent \
--repo https://agents.instana.io/helm instana-agent \
--reuse-values
--version <helm-version> al comando. Per l'elenco delle versioni disponibili del grafico " Helm ", consultare le note di rilascio relative al grafico " Instana " dell'agente Helm.instana-agent/crds cartella. Pertanto, tale kubectl apply -f instana-agent/crds fase non è necessaria.Una volta aggiornato l'operatore, procedere all'aggiornamento delle immagini.
Aggiornamento delle immagini degli agenti di Instana
Il DaemonSet 'instana-agent e il deployment 'k8sensor sono impostati per estrarre l'immagine più recente all'avvio del pod. Per forzare l'aggiornamento, eseguire i seguenti comandi:
kubectl rollout restart ds instana-agent -n instana-agent
kubectl rollout restart deployment k8sensor -n instana-agent
Instana non offre un meccanismo per aggiornare automaticamente queste immagini. È possibile utilizzare soluzioni adatte alle proprie esigenze, come CronJobs quelle dotate di privilegi sufficienti per gestire restart i carichi di lavoro, oppure strumenti più avanzati OpenShift GitOps come gli imagestream.
Gestione degli agenti tramite la dashboard di gestione agenti
È possibile eseguire le seguenti operazioni utilizzando la dashboard Gestione agenti nell'interfaccia utente di Instana :
- Modifica delle modalità dell'agente
- Modifica del livello di log
- Aggiornamento degli agenti
- Agenti di ripristino
- Agenti di riavvio
- Visualizzazione dei sensori
- [Gestione della configurazione]
- Auto-monitoraggio
Per aprire il dashboard Gestione agenti, procedere come segue:
- Nella barra laterale dell'interfaccia utente di Instana, seleziona "Infrastruttura".
- Fare clic su un host monitorato specifico.
- Nella dashboard dell'host, fare clic su Apri gestione agenti.
Configurazione dell'accesso alla rete per le applicazioni monitorate
È necessario configurare l'accesso alla rete dei seguenti tipi di applicazioni affinché possano comunicare con l'agente:
- Node.js
- Go
- Ruby
- Python
- .NET Core
Queste applicazioni devono conoscere l'indirizzo IP su cui l'agente è in ascolto. L'agente ascolta automaticamente l'IP dell'host. È possibile utilizzare il seguente snippet di ` API ` per passare l'IP dell'host, contenuto in una variabile d'ambiente, al pod dell'applicazione:
spec:
containers:
env:
- name: INSTANA_AGENT_HOST
valueFrom:
fieldRef:
fieldPath: status.hostIP
Monitoraggio dei nodi del piano di controllo (precedentemente noti come nodi master)
Per impostazione predefinita, l'agente host non viene pianificato sui nodi del piano di controll Kubernetes. Per informazioni su come monitorare i nodi del piano di controllo, consultare la sezione Monitoraggio dei nodi del piano di controllo.
Per un controllo più diretto, installa l'agente separatamente sui nodi del piano di controllo.
Monitoraggio Kubernetes NGINX Ingress
Per le linee guida su come configurare l'Ingress di Kubernetes NGINX e il nostro agente per l'acquisizione delle metriche di NGINX, consultare la pagina di monitoraggio NGINX. È possibile eseguire il tracciamento di Ingress su Kubernetes NGINX anche tramite il progetto OpenTracing; consultare la sezione "Tracciamento distribuito per Ingress su NGINX " per le istruzioni su come configurarlo.
Invio dei dati a più backend
Per aggiungere ulteriori backend utilizzando l' helm e e l'operatore, eseguire il comando seguente. È possibile utilizzare backend aggiuntivi per configurare l'agente Instana oppure lasciare il campo vuoto.
Come utilizzare helm :
helm install instana-agent \ --repo https://agents.instana.io/helm \ --namespace instana-agent \ --create-namespace \ --set agent.key=my-key \ --set agent.endpointHost='<your_host_agent_endpoint>' \ --set agent.endpointPort=443 \ --set cluster.name='<your_cluster_name>' \ --set zone.name='zone-name' \ --set "agent.additionalBackends[0].endpointHost=<your_host_agent_endpoint>" \ --set "agent.additionalBackends[0].key=<your_agent_key>" \ --set "agent.additionalBackends[0].endpointPort=443" \ --set "agent.additionalBackends[1].endpointHost=<your_other_host_agent_endpoint>" \ --set "agent.additionalBackends[1].key=<your_other_agent_key>" \ --set "agent.additionalBackends[1].endpointPort=443" \ instana-agentUtilizzo dell'operatore:
apiVersion: instana.io/v1 kind: InstanaAgent metadata: name: instana-agent namespace: instana-agent spec: zone: name: edited-zone # (optional) name of the zone of the host cluster: name: my-cluster agent: endpointHost: <your_host_agent_endpoint> endpointPort: "443" env: {} key: <your_agent_key> additionalBackends: - endpointHost: <your_host_agent_endpoint> endpointPort: "443" key: <your_agent_key> configuration_yaml: | # You can leave this empty, or use this to configure your instana agent. # See https://github.com/instana/instana-agent-operator/blob/main/config/samples/instana_v1_extended_instanaagent.yaml for the extended version.
Per abilitare la segnalazione a più backend da un agente Kubernetes, consultare la configurazione dell'agente Docker.
Configurazione dei segreti
È possibile utilizzare Secrets per archiviare e gestire dati sensibili come credenziali, token o chiavi. Per ulteriori dettagli, consulta la pagina Kubernetes secrets.