赢得自定义新的遗物弹球机!只需将数据书呆子提交以注册Futureestack。 现在注册

如何使用Ansible部署新的遗物Java APM代理

读了5分钟

建于现代分布式架构的企业公司通常具有其应用程序运行的主机的扩散。这样的团队使用自动化工具,如Ansible.,提供无缝部署,尤其是在比例下。这包括自动化应用程序堆栈的所有部分 - 从配置底层容器或VM,以便与应用程序代码一起部署任何监视代理。

与新的遗物一个地方的角色,现在可以提供Ansible Galaxy.,您现在可以部署,配置和更新新的遗物Java代理商在常见的应用程序服务器和框架上运行,包括Apache Tomcat.eclipse码头野猫, 和春靴子

什么是一个不安的角色?

Ansible.,角色允许您将相关的任务和所有变量和依赖关系分组为单个自包含的便携式实体。将您的任务分组成角色是最大化Ansible的模块化和可重用能力的最佳方法之一,因为将事物组织到角色中,让您可以在不同类型的服务器之间重用常用配置步骤。

角色提供了一个标准化的文件和目录结构,可允许自动将变量,任务,处理程序和默认值加载到您的ansible剧本,这是“可重复的,可重用,简单的配置管理和多机部署系统”,用于部署应用程序。

不要错过它:了解更多信息Ansible角色和最佳实践。

使用新的遗物ansible角色部署Java代理

您可以通过Ansible Galaxy CLI导入新的遗物Ansible角色。我们支持角色中的大多数配置路径,并为您提供包含自己的配置文件的选项。

使用此角色在指定的主机组中更新代理,并在出现任何问题时提供现有配置文件的自动备份。

有关完整要求,配置详细信息和其他信息,请参阅新的遗物github repo

第1步:下载并安装角色

从Ansible Galaxy CLI,运行:

Ansible-Galaxy Install Newrelic.Newrelic_Java_Agent

第2步:创建您的PlayBook和库存文件

下面您可以找到一个示例播放簿和示例库存文件,其中包含使用该角色所需的基本配置项。有关更多详细信息和进一步的配置选项,请参阅repo。

ansible角色使用变量有两个目的:角色配置和代理配置。

角色配置变量描述如何设置主机,以便角色可以将代理文件安装到正确的位置,并设置您的Java环境以运行代理。以下角色配置变量是必需的为您的PlayBook运行:

  • server_type.您的应用程序使用的Web服务器。可能的值是:Tomcat,码头和野生(仅限独立模式)。
  • server_root.Web服务器在主机上的位置。代理的jar,配置和日志文件将居住在此目录的子目录中。
  • jvm_conf_file.Web服务器配置文件的路径引用新的遗物Java代理。对于Tomcat,例如,它是setenv.sh.。如果不存在,则将创建文件。
  • server_user./server_group.Web服务器运行的用户和组。用于设置罐子的所有权和newrelic.yml.文件
  • 服务名称Web服务器运行的服务名称。使用Assibe使用以在安装代理后重新启动Web服务器。(如果是可选的,则不需要RESTART_WEB_SERVER.变量设置为错误的

代理配置变量可以在您的PlayBook中全局设置,或在您的库存文件中或每个主机或每个组。这些变量用于创建newrelic.yml.Java代理用于确定其配置的文件。代理配置进入了nr_java_agent_config字典并添加到Java代理的配置文件中,newrelic.yml.。回购包含高级配置设置列表,但以下代理配置变量是必需的为您的PlayBook运行:

以下示例PlayBook和库存文件包含使用该角色所需的基本配置项:

样本PlayBook(代理_install.yml.

- 主机:linux_java_servers vars:nr_java_agent_config:license_key:your_license_key app_name:您的app name server_type:tomcat server_root:/ var / lib / tomcat8 jvm_conf_file:/usr/share/tomcat8/bin/setenv.sh server_user:tomcat8 server_group:tomcat8 service_name:tomcat8RESTART_WEB_SERVER:TRUE任务: -  include_role:name:newrelic_java_agent

样本库存文件(Inventory.yml.

linux_java_servers:#host group vars:#ansible配置可以在这里去ansible_user:ubuntu#也可以配置这个角色,适用于所有hosts server_type:tomcat主机:java_server_one:ansible_host:127.0.40.1#主机 - 特定代理配置进入nr_java_agent_host_config:#覆盖App_name在PlayBook app_name中设置:示例app java_server_two:ansible_host:127.0.40.2#将使用PlayBook中的App_name设置

第3步:执行您的剧本

您现在可以运行您的PlayBook来使用Ansible在整个主机清单中部署Java APM代理。为此,请运行以下命令:

ANSIBLE-PLAYBOOK -I示例/ INVENTORY.YML示例/ Agent_Install.yml

支持我们的开源使命

在新的遗物中,我们已经承诺支持整个开发人员社区的开放来源计划。项目支持OpenTeLemetry.为客户提供了一种方法来从新的遗物平台中获得额外的价值,而不完全依赖于专有的新遗物功能。通过发布此Ansible作用,我们正在将此开源承诺扩展到我们的部署,onboard和更新进程。

新的遗物Ansible角色是开源贡献Apache 2.0许可证。我们欢迎要求改进。请记住,当您提交拉动请求时,您需要签署CLA。如果您想执行我们的公司CLA,或者您有任何疑问,请删除我们电子邮件