[TP] Project 1
What you will learn in this TP :
- Install a dynatrace agent: oneagent
- Understand available parameters
- Reconfigure an agent
- Optimize your infra/costs
- Disable monitoring of processes, containers, ...
- choice of operators
- Management and assignment of teams
- using dt.owner and owner
Introduction
This project aims to make you manipulate different concepts around Dynatrace and especially to combine them in order to achieve a goal. To do this, we will install and configure a Docker server and install the Dynatrace agent to get a 360 view of the server.Test environment
To complete this lab, you will need an Ubuntu environment (But the lab is doable with other OS/distributions). On this machine, we will create 2 virtual machines with the following characteristics:- Virtual machine 1:
- Name: gl-145-pr
- vCPU: 1
- RAM: 1 GB
- IP: 192.168.56.2
- Virtual machine 2:
- Name: gl-463-rc
- vCPU: 1
- RAM: 1 GB
- IP: 192.168.56.3
REMINDER: This lab is dedicated to Dynatrace configuration but since it is an advanced lab, you will need DevOps concepts and knowledge that are not specific to Dynatrace but will be used in your configurations. You will need the following skills, for which you can follow the free training:Of course, we will provide as much information as possible to help you advance even without these prerequisites.
- Docker: View training
- Vagrant: View training
- Traefik: View training
- Prometheus: View training
- Grafana: View training
- DevOps: View training
To do this, you must install Vagrant and Virtualbox on your machine. Once done, you just need to run the following commands:
git clone https://github.com/RousselTM/dynatrace-formation
cd dynatrace-formation/tp
vagrant up
Pre-configuration
The following actions are required to prepare your test environment.Dynatrace Agent
What you will learn in this section :We will see how to install and reconfigure an agent.
- Install a dynatrace agent: oneagent
- Understand available parameters
- Reconfigure an agent
To review the session on oneagent installation, you can click on this link: Installation and configuration of oneagent
-
Installation
You must install the oneagent on the machine 'rousseltm-prod-1' by setting the hostgroup as 'PROD_TP'.INFORMATION: To prepare your transition to IaC, we recommend downloading the sources via CLI. In addition to the IaC advantage, the URL will automatically provide the version corresponding to the Dynatrace server updates. This avoids version mismatch between the console and the agents.
-
Verifications
You must access the dynatrace console and verify that your machine shows up properly. Which application shows the machines that report? You must also verify that the hostgroup shows up properly. Which application can also allow you to see all the elements on which there is a oneagent? -
Les PATH
During an installation, it may be necessary to modify the default folders to adapt to disk formatting. You must provide the configurations to set during agent installation to customize:- Installation folder
- Logs folder
- ...
-
Reconfiguration
As indicated in the training, we might need to modify parameters of the oneagent for various reasons: setup error, missing parameter, migration to a new cluster...CRITICAL: The easy way would be to reinstall the agent but resulting in the creation of a new ID and therefore the loss of history. You must therefore reconfigure it instead. Oneagent reconfiguration
You must therefore modify the agent's configuration to add or update:- hostgroup: PROD_TP1
- TAGS: ENV=PROD, PROJECT=P1, APP=A1
- Owner: T1
Discovery
In this section, we will use Dynatrace to get a 360 view of the infrastructure.-
Mapping
You must find how to get the mapping of your infrastructure: Datacenter, machines, processes...
Configuration
What you will learn in this section :In this section, we will see what a 'detected name' is and how to create custom names
- Optimize your infra/costs
- Disable monitoring of processes, containers, ...
- choice of operators
-
Host
You must configure Dynatrace so that it renames the machines following this template:- All machines with Hostgroup: '$HOSTGROUP - $DETECTEDNAME'
- All machines without Hostgroup: 'ERROR - $DETECTEDNAME'
-
Process group
Dynatrace will automatically group processes it judges identical together (if it does not identify a Hostgroup). You will have different applications on Docker that it will group while in reality they are different. You must create the configuration to force dynatrace to separate them based on the 'ROUSSELTM_APP' environment variable: -
Services
-
Tags
You must add a configuration that will create on all services of type 'Web request service' the tag 'ROUSSELTM_APP' with the value being the server name content.CRITICAL: Ideally, in a company, you must ensure that each entity has the minimum number of tags to identify: direction, department, team, project ...
We also want the 'Host' and the 'Process group' hosting them to inherit these tags. -
Zones
As you have noticed, all entities are put together. For this demo environment it is not a problem but in a company it will be necessary to create management zones to organize this.REMINDER: In addition to allowing the classification of entities in dynatrace, it will also allow you to manage security.
You must therefore create a management zone that will contain all services, process groups, machines having the tag 'ROUSSELTM_APP=APP1'REMINDER: In a company, you will have to add other rules in the management zone to take into account other elements APPLICATION, DATABASES, ...
-
Process
By default, Dynatrace will collect information on everything it discovers. In a company, you will have processes, containers ... that you do not want to monitor. You must configure Dynatrace so that it does not monitor all containers ending in '-build'.REMINDER: You already have default configurations in Settings -> Processes and containers -> Built-in container monitoring rules
-
Serverless
Your company uses serverless? You must enable the configuration so that Dynatrace can detect your containers.
Owners
What you will learn in this section :If your Dynatrace instance is properly configured, you should be able to know who owns each resource (entity). We saw in the course that it is possible to do this in different ways (tags, metadata...) but the most recommended is the use of tags. But this information is more technical to classify and process your data and does not allow identifying the people who intervene on the entity: developer, operator, ... Dynatrace therefore provides you with the owner function to allow you to fill this gap.
- Management and assignment of teams
- using dt.owner and owner
-
Creation
You must create the team 'Project 1' with the following characteristics:- Team name: Project 1
- Description: your description
- Team ID: project1
- Functions: Development and Operations
-
Assignment
You must assign this team to all VMs/containers of the team in question.
Course Glossary
The use of artificial intelligence and machine learning to automate and improve IT operations (e.g., anomaly detection, reducing alert noise).
An open source framework providing standards, APIs, and SDKs to collect and export observability data (traces, metrics, logs) in an agnostic way.
Recommended Articles
Understand the evolution of billing in Dynatrace: the difference between the ...
Discover why and how to configure Grafana Alloy so that it monitors itself, c...
Discover how to enable, secure, and use Grafana Alloy's built-in web interfac...
Discover the fundamental concepts of Grafana Alloy, the transition from the s...
Master Grafana Alloy's declarative syntax (River language), learn to manipula...
Learn how to configure Grafana Alloy to collect, transform, and forward metri...
Discover how to configure Grafana Alloy to read log files, journald, or netwo...
Dive into distributed trace processing. Learn how to ingest OTLP, Jaeger, or ...
Discover how to configure continuous profiling in your environments using Gra...
Learn how to manage large-scale Grafana Alloy deployments. Configure Clusteri...
Discover Grafana Assistant, the artificial intelligence integrated into Grafa...
Comparison between Grafana Alloy and Dynatrace ActiveGate. Understand the fun...