All Projects → Dynatrace → Dynatrace-OneAgent-Ansible

Dynatrace / Dynatrace-OneAgent-Ansible

Licence: MIT license
This Ansible role installs Dynatrace OneAgent.

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Dynatrace-OneAgent-Ansible

Hooka
😎 A webhook server with zero coding
Stars: ✭ 180 (+429.41%)
Mutual labels:  integration, deployment
logzio aws serverless
AWS Lambda function that ships Cloudwatch Logs to logz.io
Stars: ✭ 31 (-8.82%)
Mutual labels:  integration
nexus-platform-plugin
Nexus Platform Plugin for Jenkins
Stars: ✭ 25 (-26.47%)
Mutual labels:  integration
emaile2e-javascript-client
Test email integration with your app using MailSlurp
Stars: ✭ 14 (-58.82%)
Mutual labels:  integration
DahuaVTO
Control Dahua VTO/VTH devices from Home Assistant
Stars: ✭ 98 (+188.24%)
Mutual labels:  integration
tgintegration
Integration test and automation library for Telegram Messenger bots based on Pyrogram.
Stars: ✭ 113 (+232.35%)
Mutual labels:  integration
Sketchtoswift
📲 Generate Swift from Sketch
Stars: ✭ 251 (+638.24%)
Mutual labels:  integration
ltest
A Testing Framework for LFE (successor to lfeunit)
Stars: ✭ 31 (-8.82%)
Mutual labels:  integration
dropship
Super simple deployment tool
Stars: ✭ 62 (+82.35%)
Mutual labels:  deployment
extensions
Code Generators and Extensions for vanilla-rtb stack
Stars: ✭ 16 (-52.94%)
Mutual labels:  integration
taskcluster-github
Integrate Taskcluster with Github.
Stars: ✭ 13 (-61.76%)
Mutual labels:  integration
home assistant omnik solar
Home Assistant Omnik Solar sensor component
Stars: ✭ 15 (-55.88%)
Mutual labels:  integration
ha-eskom-loadshedding
Fetches loadshedding data from Eskom
Stars: ✭ 48 (+41.18%)
Mutual labels:  integration
CSGSI
A simple C# library to interface with Counter-Strike: Global Offensive's Game State Integration
Stars: ✭ 124 (+264.71%)
Mutual labels:  integration
deployment-controller
基于Fabric8模拟Kubernetes的Deployment实现一个Controller
Stars: ✭ 60 (+76.47%)
Mutual labels:  deployment
trello-habitica
Keep in sync your Trello cards with Habitica
Stars: ✭ 32 (-5.88%)
Mutual labels:  integration
fem mesh matlab
MATLAB Toolbox for Handling 2D and 3D FEM Meshes
Stars: ✭ 23 (-32.35%)
Mutual labels:  integration
openkit-dotnet
OpenKit .NET Reference Implementation
Stars: ✭ 16 (-52.94%)
Mutual labels:  dynatrace
dinobuildr
A macOS deployment utility developed by Mozilla IT
Stars: ✭ 26 (-23.53%)
Mutual labels:  deployment
neo4j-jdbc
JDBC driver for Neo4j
Stars: ✭ 110 (+223.53%)
Mutual labels:  integration

⚠️⚠️⚠️The most up to date version of the oneagent role is now accessible directly via Dynatrace.⚠️⚠️⚠️

Please visit this link for more info: Install OneAgent using Ansible


Ansible Role: Dynatrace OneAgent

This ansible role deploys the Dynatrace OneAgent on Linux and Windows Operating Systems with different available configurations and ensures the OneAgent service maintains a running state. It provides the tasks to interact with the various OneAgent configuration files.

Note: This role is still in active development. There may be unidentified issues and the role variables may change as development continues.

Requirements

To use this Role requires the following:

  • ansible >= 2.9.0

You will then need to supply the role with two critical pieces of information:

  • The environment URL: Managed {your-domain}/e/{your-environment-id} | SaaS {your-environment-id}.live.dynatrace.com
  • The PaaS token of your environment for downloading the OneAgent installer

Refer to the customize OneAgent installation documentation on Dynatrace Supported Operating Systems This role uses the Dynatrace deployment API for downloading the installer for each supported OS. See Deployment API

Installation

Ansible Galaxy

Use ansible-galaxy install dynatrace.oneagent to install the latest stable release of the role on your system.

Git

Use git clone https://github.com/Dynatrace/Dynatrace-OneAgent-Ansible.git to pull the latest edge commit of the role from GitHub.

Role variables

The following variables are available in defaults/main/ and can be overriden:

Name Default Description
dynatrace_environment_url "" URL of the target Dynatrace environment without http(s) (SaaS or Managed)
dynatrace_paas_token "" The API Token retrieved from the "Deploy Dynatrace" installer page
dynatrace_oneagent_version "latest" The required version of the OneAgent in 1.155.275.20181112-084458 format
dynatrace_oneagent_download_dir Linux: /tmp/ Windows: C:\Windows\Temp\ Dynatrace OneAgent installer file download directory
dynatrace_oneagent_install_args --set-app-log-content-access=true --set-infra-only=false Dynatrace OneAgent install parameters defined as a list of items
dynatrace_oneagent_host_tags "" Values to automatically add tags to a host, should contain a list of strings or key/value pairs. Spaces are used to separate tag values.
dynatrace_oneagent_host_metadata "" Values to automatically add metadata to a host, should contain a list of strings or key/value pairs. Spaces are used to separate metadata values.
dynatrace_oneagent_hostname "" Overrides an automatically detected host name.
dynatrace_oneagent_state: "started" Set initial oneagent state. Recommended values: started or stopped
dynatrace_oneagent_restart_state "restarted" Set oneagent state when configuration changes are made. Recommended values: restarted or reloaded
dynatrace_oneagent_package_state "present" oneagent package state; use present to make sure it's installed, or latest
dynatrace_oneagent_package_download_validate_certs yes oneagent package download using secure https; use no to skip tls verification

Example Playbook

Most basic OneAgent installation using a SAAS tenant

---
- hosts: all
  become: true
  roles:
    - role: dynatrace.oneagent
  vars:
    dynatrace_environment_url: {your-environment-id}.live.dynatrace.com
    dynatrace_paas_token: {your-paas-token}

OneAgent installation using a managed tenant with a specific version. The required version of the OneAgent must be in 1.155.275.20181112-084458 format. See Deployment API - GET available versions of OneAgent

---
- hosts: all
  become: true
  roles:
    - role: dynatrace.oneagent
  vars:
    dynatrace_environment_url: {your-domain}/e/{your-environment-id}
    dynatrace_paas_token: {your-paas-token}
    dynatrace_oneagent_version: 1.189.99.20200317-150951

Advanced configuration - Download OneAgent installer to a custom directory with additional OneAgent install parameters should be defined as follows (will override default install args):

---
- hosts: all
  become: true
  roles:
    - role: dynatrace.oneagent
  vars:
    dynatrace_environment_url: {your-environment-id}.live.dynatrace.com
    dynatrace_paas_token: {your-paas-token}
    dynatrace_oneagent_download_dir: /home/user1/
    dynatrace_oneagent_install_args:
      APP_LOG_CONTENT_ACCESS: 1
      INFRA_ONLY: 0
      HOST_GROUP: CENTOS_VM
      INSTALL_PATH: /var/

Setting tags, metadata and custom hostname

---
- hosts: all
  become: true
  roles:
    - role: dynatrace.oneagent
  vars:
    dynatrace_environment_url: {your-environment-id}.live.dynatrace.com
    dynatrace_paas_token: {your-paas-token}
    dynatrace_oneagent_host_tags: TestHost Gdansk role=fallback
    dynatrace_oneagent_host_metadata: Environment=Prod Organization=D1P [email protected] Support=https://www.dynatrace.com/support
    dynatrace_oneagent_hostname: ansible.host.vm

NOTE: On Windows, the become: yes option is not needed and will fail as it is not supported. Since windows paths are different than a traditional Linux system, review Path Formatting for Windows to avoid issues during install.

Testing

Testing and contributing to this ansible role requires the following:

  • ansible >= 2.9.0
  • VirtualBox >= 6.0.14
  • ruby >= 2.6.5
  • vagrant >= 2.2.6
  • python ~= 3.7.4

Test Kitchen is used in combination with InSpec to automatically test OneAgent deployments using this Ansible Role. By default, Test Kitchen uses Vagrant to create virtual machines thru the VirtualBox hypervisor. This requires that the tester's workstation has VT-x or AMD-V virtualization enabled, as well as at least 1 CPU and 2048MB of RAM available.

To test modifications to this Role, follow the steps below:

  1. Install Test Kitchen and dependencies:

    gem install bundler
    bundle install
  2. Install Ansible and dependencies:

    pip install -r requirements.txt
  3. Define required variables in vars.yml file. For example:

    ~$ cat vars.yml
    dynatrace_environment_url: {your-environment-id}.live.dynatrace.com
    dynatrace_paas_token: {your-paas-token}
  4. Run all tests

    kitchen test

License

Licensed under the MIT License. See the LICENSE file for details.

Author Information

Dynatrace ACE Innovation Team: [email protected]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].