官方JFrog人工和x射线Ansible Collection

Ansible已经成为运维团队用来自动化IT任务的最流行的工具之一。它允许他们在最大的企业规模上快速管理其It系统的配置。这包括内部部署和云中的软件和基础设施。它的开源根源使它能够成长为一个拥有同样广阔的集成生态系统的大型全球社区。几乎任何你能想到的软件或基础设施都有一个Ansible模块,可以由Ansible管理。JFrog最大的企业客户使用Ansible来管理数千台服务器。
官方JFrog Ansible Collection现已在Ansible Galaxy市场,使其简单有效地管理JFrog Artifactory和JFrog Xray在您的网络。
包含在JFrog Ansible Collection中的内容
JFrog的Ansible系列包含几个允许您安装最新版本的Ansible角色Artifactory和x光许多不同配置的解决方案。从简单的单个服务器安装到冗余和高可用性设置,此集合为任何体系结构提供了灵活性。此外,如果您想添加Postgresql数据库和NGINX的组件,还提供了可选的角色。集合中包含的示例清单和剧本文件涵盖了大多数流行的用例。
使用JFrog Ansible Collection
为了展示如何使用这个Ansible集合,让我们安装一个简单的Artifactory和Xray集群,它们共享同一个数据库。

安装Ansible和JFrog Ansible集合
首先,我们需要在客户端上安装Ansible。有几种方法根据您的系统安装Ansible。Ansible使用SSH连接到主机。最好的做法是设置SSH密钥对并将公钥放在主机上。Ansible文档描述如何做到这一点。一些云提供商通过为您设置SSH密钥使这更容易。

JFrog Ansible集合可以从Ansible星系使用如下命令:
Ansible-galaxy collection install jfrog.installers
制定战术手册
要运行剧本来安装Artifactory和Xray,我们必须首先设置一个库存文件。目录文件指定我们的主机和安装所需的变量。下面是三个服务器的清单文件示例。的数据库Group指定具有两个数据库的单个数据库主机:artifactory和xraydb。的artifactorygroup指定单个Artifactory主机。的x光group指定单个x射线主机。最后,每个组和主机都有其所需的变量。这个目录文件是我们安装软件的剧本的输入。
inventory.yml
——all: vars: ansible_user: "ubuntu" children: database: hosts: 34.239.106.0: dbs: - {db_name: "artifactory", db_owner: "artifactory"} - {db_name: "xraydb", db_owner: "xray"} db_users: - {db_user: "artifactory", db_password: "artifactory"} - {db_user: "xray", db_password: "xray"} artifactory: hosts: 54.237.206.135: artifactory_license1: x artifactory_license2: x artifactory_license3: x artifactory_license4: x artifactory_license5: x master_key:"c97b862469de0d94fbb7d48130637a5a" join_key: "9bcca98f375c0728d907cc6ee39d4f02" db_download_url: "https://jdbc.postgresql.org/download/postgresql-42.2.12.jar" db_type: "postgresql" db_driver: "org.postgresql. "Driver" db_url: "jdbc:postgresql://10.0.0.59:5432/artifactory" db_user: "artifactory" db_password: " art1factor0ry " server_name: "ec2-54-237- 207-135.comput-1.amazonaws.com " xray: hosts: 100.25.106.174: jfrog_url: "https://ec2-54-236-201-125.compute-1.amazonaws.com" master_key: "c97b862469de0d94fbb7d48130637a5a" join_key: "9bcca98f375c0728d907cc6ee39d4f02" db_type: "postgresql" db_driver: "org.postgresql. "驱动程序" db_url: "postgres://10.0.0.59:5432/xraydb?Sslmode =disable" db_user: "xray" db_password: "xray"
我们的剧本非常简单,因为它使用了我们的JFrog Ansible角色。这些角色包含安装软件的任务。为我们的数据库组中,我们指定了postgres的角色。为artifactory组中,我们指定工件角色。对于x射线组,我们指定x射线角色。
playbook.yml
--- - hosts:数据库角色—postgres—hosts:人工角色—人工角色—hosts: x射线角色—x射线
现在我们可以根据我们的库存执行我们的剧本了。
Ansible-playbook - inventory。yml playbook.yml
这将启动Ansible在所有服务器上安装我们的软件。事情就是这么简单。
这是一个非常简单的部署。但是,使用Ansible在拥有数百台服务器的更大规模上安装软件是非常常见的。Ansible运行并行自动化任务,并从Ansible客户端管理这些任务。对于JFrog Artifactory和Xray服务器的全球分布式网络来说,这种类型的大规模服务器部署是很自然的。这就是为什么Ansible是管理JFrog服务器的好工具。