Ansible AWX, ese gran aliado para la automatización

En este post, os mostraré cómo instalar Ansible AWX.

Ansible AWX es la versión open source de Ansible Tower, una interfaz gráfica para manejar Ansible de forma cómoda y más amigable (lo dice uno qué viene de puppet y Foreman XD)

1) Requisitos del servidor

  • CentOS 7
  • 2GB de memoria
  • 1 vCPU
  • 20GB de espacio en disco

Verificamos la configuración SElinux y que esté en modo permisivo:

[root@localhost ~]# sestatus

SELinux status: enabled

SELinuxfs mount: /sys/fs/selinux

SELinux root directory: /etc/selinux

Loaded policy name: targeted

Current mode: permissive

Mode from config file: permissive

Policy MLS status: enabled

Policy deny_unknown status: allowed

Max kernel policy version: 28

[root@localhost ~]#

NOTA: Se puede modificar con el fichero /etc/selinux/config

Editamos el fichero de hosts /etc/hosts para que se resuelva a si mismo:

[root@localhost ~]# cat /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.1.150 ansible-awx

Habilitamos el firewall:

[root@localhost ~]# systemctl enable firewalld

[root@localhost ~]# systemctl start firewalld

[root@localhost ~]# firewall-cmd --add-service=http --permanent;firewall-cmd --add-service=http --permanent

success

success

[root@localhost ~]# systemctl restart firewalld

Habilitamos el repositorio EPEL para CentOS7:

[root@localhost ~]# yum install -y epel-release

Complementos cargados:fastestmirror

base | 3.6 kB 00:00:00

extras | 3.4 kB 00:00:00

updates | 3.4 kB 00:00:00

(1/4): base/7/x86_64/group_gz | 166 kB 00:00:00

(2/4): extras/7/x86_64/primary_db | 156 kB 00:00:00

(3/4): updates/7/x86_64/primary_db | 1.3 MB 00:00:00

(4/4): base/7/x86_64/primary_db | 6.0 MB 00:00:05

Determining fastest mirrors

* base: centos.uvigo.es

* extras: centos.uvigo.es

* updates: ftp.rediris.es

Resolviendo dependencias

--> Ejecutando prueba de transacción

---> Paquete epel-release.noarch 0:7-11 debe ser instalado

--> Resolución de dependencias finalizada

Dependencias resueltas

=====================================================================================================================================================================================

Package Arquitectura Versión Repositorio Tamaño

=====================================================================================================================================================================================

Instalando:

epel-release noarch 7-11 extras 15 k

Resumen de la transacción

=====================================================================================================================================================================================

Instalar 1 Paquete

Tamaño total de la descarga: 15 k

Tamaño instalado: 24 k

Downloading packages:

advertencia:/var/cache/yum/x86_64/7/extras/packages/epel-release-7-11.noarch.rpm: EncabezadoV3 RSA/SHA256 Signature, ID de clave f4a80eb5: NOKEY

No se ha instalado la llave pública de epel-release-7-11.noarch.rpm

epel-release-7-11.noarch.rpm | 15 kB 00:00:00

Obteniendo clave desde file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

Importando llave GPG 0xF4A80EB5:

Usuarioid : "CentOS-7 Key (CentOS 7 Official Signing Key) <[email protected]>"

Huella : 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5

Paquete : centos-release-7-4.1708.el7.centos.x86_64 (@anaconda)

Desde : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

Instalando : epel-release-7-11.noarch 1/1

Comprobando : epel-release-7-11.noarch 1/1

Instalado:

epel-release.noarch 0:7-11

¡Listo!

[root@localhost ~]#

Necesitaremos posgresql para instalar AWX así que, habilitamos el repositorio:

[root@localhost ~]# yum install -y http://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

Complementos cargados:fastestmirror

pgdg-centos96-9.6-3.noarch.rpm | 4.7 kB 00:00:00

Examinando /var/tmp/yum-root-0SnzF2/pgdg-centos96-9.6-3.noarch.rpm: pgdg-centos96-9.6-3.noarch

Marcando /var/tmp/yum-root-0SnzF2/pgdg-centos96-9.6-3.noarch.rpm para ser instalado

Resolviendo dependencias

--> Ejecutando prueba de transacción

---> Paquete pgdg-centos96.noarch 0:9.6-3 debe ser instalado

--> Resolución de dependencias finalizada

Dependencias resueltas

=====================================================================================================================================================================================

Package Arquitectura Versión Repositorio Tamaño

=====================================================================================================================================================================================

Instalando:

pgdg-centos96 noarch 9.6-3 /pgdg-centos96-9.6-3.noarch 2.7 k

Resumen de la transacción

=====================================================================================================================================================================================

Instalar 1 Paquete

Tamaño total: 2.7 k

Tamaño instalado: 2.7 k

Downloading packages:

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

Instalando : pgdg-centos96-9.6-3.noarch 1/1

Comprobando : pgdg-centos96-9.6-3.noarch 1/1

Instalado:

pgdg-centos96.noarch 0:9.6-3

¡Listo!

[root@localhost ~]#

Instalamos posgreSQL:

[root@localhost ~]# yum install postgresql96-server -y

Complementos cargados:fastestmirror

epel/x86_64/metalink | 16 kB 00:00:00

epel | 4.7 kB 00:00:00

pgdg96 | 4.1 kB 00:00:00

(1/5): epel/x86_64/group_gz | 88 kB 00:00:00

epel/x86_64/updateinfo FAILED

http://mirror.uv.es/mirror/fedora-epel/7/x86_64/repodata/b62e792850fe8655cca05e6a7487b8d89320ee5518dea64da995a6f484581831-updateinfo.xml.bz2: [Errno 14] HTTP Error 404 - Not FoundA

Intentando con otro espejo.

To address this issue please refer to the below knowledge base article

http://access.redhat.com/articles/1320623

If above article doesn't help to resolve this issue please create a bug on http://bugs.centos.org/

(2/5): epel/x86_64/updateinfo | 950 kB 00:00:00

(3/5): pgdg96/7/x86_64/group_gz | 249 B 00:00:00

(4/5): pgdg96/7/x86_64/primary_db | 207 kB 00:00:00

(5/5): epel/x86_64/primary_db | 6.5 MB 00:00:01

Loading mirror speeds from cached hostfile

* base: centos.uvigo.es

* epel: mirrors.colocall.net

* extras: centos.uvigo.es

* updates: ftp.rediris.es

Resolviendo dependencias

--> Ejecutando prueba de transacción

---> Paquete postgresql96-server.x86_64 0:9.6.11-1PGDG.rhel7 debe ser instalado

--> Procesando dependencias: postgresql96-libs(x86-64) = 9.6.11-1PGDG.rhel7 para el paquete: postgresql96-server-9.6.11-1PGDG.rhel7.x86_64

--> Procesando dependencias: postgresql96(x86-64) = 9.6.11-1PGDG.rhel7 para el paquete: postgresql96-server-9.6.11-1PGDG.rhel7.x86_64

--> Procesando dependencias: libpq.so.5()(64bit) para el paquete: postgresql96-server-9.6.11-1PGDG.rhel7.x86_64

--> Ejecutando prueba de transacción

---> Paquete postgresql96.x86_64 0:9.6.11-1PGDG.rhel7 debe ser instalado

---> Paquete postgresql96-libs.x86_64 0:9.6.11-1PGDG.rhel7 debe ser instalado

--> Resolución de dependencias finalizada

Dependencias resueltas

=====================================================================================================================================================================================

Package Arquitectura Versión Repositorio Tamaño

=====================================================================================================================================================================================

Instalando:

postgresql96-server x86_64 9.6.11-1PGDG.rhel7 pgdg96 4.5 M

Instalando para las dependencias:

postgresql96 x86_64 9.6.11-1PGDG.rhel7 pgdg96 1.4 M

postgresql96-libs x86_64 9.6.11-1PGDG.rhel7 pgdg96 318 k

Resumen de la transacción

=====================================================================================================================================================================================

Instalar 1 Paquete (+2 Paquetes dependientes)

Tamaño total de la descarga: 6.3 M

Tamaño instalado: 28 M

Downloading packages:

(1/3): postgresql96-9.6.11-1PGDG.rhel7.x86_64.rpm | 1.4 MB 00:00:01

(2/3): postgresql96-libs-9.6.11-1PGDG.rhel7.x86_64.rpm | 318 kB 00:00:01

(3/3): postgresql96-server-9.6.11-1PGDG.rhel7.x86_64.rpm | 4.5 MB 00:00:00

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Total 3.6 MB/s | 6.3 MB 00:00:01

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

Instalando : postgresql96-libs-9.6.11-1PGDG.rhel7.x86_64 1/3

Instalando : postgresql96-9.6.11-1PGDG.rhel7.x86_64 2/3

Instalando : postgresql96-server-9.6.11-1PGDG.rhel7.x86_64 3/3

Comprobando : postgresql96-libs-9.6.11-1PGDG.rhel7.x86_64 1/3

Comprobando : postgresql96-server-9.6.11-1PGDG.rhel7.x86_64 2/3

Comprobando : postgresql96-9.6.11-1PGDG.rhel7.x86_64 3/3

Instalado:

postgresql96-server.x86_64 0:9.6.11-1PGDG.rhel7

Dependencia(s) instalada(s):

postgresql96.x86_64 0:9.6.11-1PGDG.rhel7 postgresql96-libs.x86_64 0:9.6.11-1PGDG.rhel7

¡Listo!

Instalamos el resto de paquetería necesaria (nginx, ansible, wget…)

[root@localhost ~]# yum install -y rabbitmq-server wget memcached nginx ansible

2) Instalación Ansible AWX

Añadimos el repositorio:

[root@localhost ~]# wget -O /etc/yum.repos.d/awx-rpm.repo http://copr.fedorainfracloud.org/coprs/mrmeee/awx/repo/epel-7/mrmeee-awx-epel-7.repo

--2019-01-11 12:04:34-- http://copr.fedorainfracloud.org/coprs/mrmeee/awx/repo/epel-7/mrmeee-awx-epel-7.repo

Resolviendo copr.fedorainfracloud.org (copr.fedorainfracloud.org)... 209.132.184.54

Conectando con copr.fedorainfracloud.org (copr.fedorainfracloud.org)[209.132.184.54]:443... conectado.

Petición HTTP enviada, esperando respuesta... 200 OK

Longitud: 306 [text/plain]

Grabando a: “/etc/yum.repos.d/awx-rpm.repo”

100%[===========================================================================================================================================>] 306 --.-K/s en 0s

2019-01-11 12:04:39 (96,0 MB/s) - “/etc/yum.repos.d/awx-rpm.repo” guardado [306/306]

[root@localhost ~]#

Instalamos con yum:

[root@localhost ~]# yum install -y awx

Inicializamos la BBDD:

[root@localhost ~]# /usr/pgsql-9.6/bin/postgresql96-setup initdb

Initializing database ... OK

[root@localhost ~]#

Inicializamos el servicio de mensajeria Rabbitmq:

[root@localhost ~]# systemctl start rabbitmq-server

[root@localhost ~]# systemctl enable rabbitmq-server

Created symlink from /etc/systemd/system/multi-user.target.wants/rabbitmq-server.service to /usr/lib/systemd/system/rabbitmq-server.service.

[root@localhost ~]#

Arrancamos el servicio PosgreSQL:

[root@localhost ~]# systemctl enable postgresql-9.6

Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql-9.6.service to /usr/lib/systemd/system/postgresql-9.6.service.

[root@localhost ~]# systemctl start postgresql-9.6

Arrancamos el servicio memcached:

[root@localhost ~]# systemctl enable memcached

Created symlink from /etc/systemd/system/multi-user.target.wants/memcached.service to /usr/lib/systemd/system/memcached.service.

[root@localhost ~]# systemctl start memcached

Creamos el usuario para la BBDD (ignoramos el error):

[root@localhost ~]# sudo -u postgres createuser -S awx

could not change directory to "/root": Permiso denegado

Creamos la BBDD (ignoramos también el error):

[root@localhost ~]# sudo -u postgres createdb -O awx awx

could not change directory to "/root": Permiso denegado

Importamos los datos en la BBDD:

[root@localhost ~]# sudo -u awx /opt/awx/bin/awx-manage migrate

Operations to perform:

Apply all migrations: auth, conf, contenttypes, main, oauth2_provider, sessions, sites, social_django, sso, taggit

Running migrations:

Applying contenttypes.0001_initial... OK

Applying taggit.0001_initial... OK

Applying taggit.0002_auto_20150616_2121... OK

Applying contenttypes.0002_remove_content_type_name... OK

Applying auth.0001_initial... OK

Applying main.0001_initial... OK

Applying main.0002_squashed_v300_release... OK

Applying main.0003_squashed_v300_v303_updates... OK

Applying main.0004_squashed_v310_release... OK

Applying conf.0001_initial... OK

Applying conf.0002_v310_copy_tower_settings... OK

Applying main.0005_squashed_v310_v313_updates... OK

Applying main.0006_v320_release... OK

Applying main.0007_v320_data_migrations...2019-01-11 11:12:12,521 DEBUG awx.main.migrations Removing all Rackspace InventorySource from database.

2019-01-11 11:12:12,840 DEBUG awx.main.migrations Removing all Azure Credentials from database.

2019-01-11 11:12:13,015 DEBUG awx.main.migrations Removing all Azure InventorySource from database.

2019-01-11 11:12:13,187 DEBUG awx.main.migrations Removing all InventorySource that have no link to an Inventory from database.

2019-01-11 11:12:13,919 DEBUG awx.main.models.credential adding Machine credential type

2019-01-11 11:12:13,922 DEBUG awx.main.models.credential adding Source Control credential type

2019-01-11 11:12:13,925 DEBUG awx.main.models.credential adding Vault credential type

2019-01-11 11:12:13,927 DEBUG awx.main.models.credential adding Network credential type

2019-01-11 11:12:13,929 DEBUG awx.main.models.credential adding Amazon Web Services credential type

2019-01-11 11:12:13,932 DEBUG awx.main.models.credential adding OpenStack credential type

2019-01-11 11:12:13,934 DEBUG awx.main.models.credential adding VMware vCenter credential type

2019-01-11 11:12:13,937 DEBUG awx.main.models.credential adding Red Hat Satellite 6 credential type

2019-01-11 11:12:13,939 DEBUG awx.main.models.credential adding Red Hat CloudForms credential type

2019-01-11 11:12:13,942 DEBUG awx.main.models.credential adding Google Compute Engine credential type

2019-01-11 11:12:13,944 DEBUG awx.main.models.credential adding Microsoft Azure Resource Manager credential type

2019-01-11 11:12:13,946 DEBUG awx.main.models.credential adding Insights credential type

2019-01-11 11:12:13,949 DEBUG awx.main.models.credential adding Red Hat Virtualization credential type

2019-01-11 11:12:13,951 DEBUG awx.main.models.credential adding Ansible Tower credential type

OK

Applying main.0008_v320_drop_v1_credential_fields... OK

Applying main.0009_v322_add_setting_field_for_activity_stream... OK

Applying main.0010_v322_add_ovirt4_tower_inventory... OK

Applying main.0011_v322_encrypt_survey_passwords... OK

Applying main.0012_v322_update_cred_types... OK

Applying main.0013_v330_multi_credential... OK

Applying auth.0002_alter_permission_name_max_length... OK

Applying auth.0003_alter_user_email_max_length... OK

Applying auth.0004_alter_user_username_opts... OK

Applying auth.0005_alter_user_last_login_null... OK

Applying auth.0006_require_contenttypes_0002... OK

Applying auth.0007_alter_validators_add_error_messages... OK

Applying auth.0008_alter_user_username_max_length... OK

Applying conf.0003_v310_JSONField_changes... OK

Applying conf.0004_v320_reencrypt... OK

Applying conf.0005_v330_rename_two_session_settings... OK

Applying conf.0006_v331_ldap_group_type... OK

Applying sessions.0001_initial... OK

Applying main.0014_v330_saved_launchtime_configs... OK

Applying main.0015_v330_blank_start_args... OK

Applying main.0016_v330_non_blank_workflow... OK

Applying main.0017_v330_move_deprecated_stdout... OK

Applying main.0018_v330_add_additional_stdout_events... OK

Applying main.0019_v330_custom_virtualenv... OK

Applying main.0020_v330_instancegroup_policies... OK

Applying main.0021_v330_declare_new_rbac_roles... OK

Applying main.0022_v330_create_new_rbac_roles... OK

Applying main.0023_v330_inventory_multicred... OK

Applying main.0024_v330_create_user_session_membership... OK

Applying main.0025_v330_add_oauth_activity_stream_registrar... OK

Applying oauth2_provider.0001_initial... OK

Applying main.0026_v330_delete_authtoken... OK

Applying main.0027_v330_emitted_events... OK

Applying main.0028_v330_add_tower_verify... OK

Applying main.0030_v330_modify_application... OK

Applying main.0031_v330_encrypt_oauth2_secret... OK

Applying main.0032_v330_polymorphic_delete... OK

Applying main.0033_v330_oauth_help_text... OK

Applying main.0034_v330_delete_user_role...2019-01-11 11:12:45,224 INFO rbac_migrations Computing role roots..

2019-01-11 11:12:45,225 INFO rbac_migrations Found 0 roots in 0.000160 seconds, rebuilding ancestry map

2019-01-11 11:12:45,225 INFO rbac_migrations Rebuild completed in 0.000004 seconds

2019-01-11 11:12:45,225 INFO rbac_migrations Done.

OK

Applying main.0035_v330_more_oauth2_help_text... OK

Applying main.0036_v330_credtype_remove_become_methods... OK

Applying main.0037_v330_remove_legacy_fact_cleanup... OK

Applying main.0038_v330_add_deleted_activitystream_actor... OK

Applying main.0039_v330_custom_venv_help_text... OK

Applying main.0040_v330_unifiedjob_controller_node... OK

Applying main.0041_v330_update_oauth_refreshtoken... OK

Applying main.0042_v330_org_member_role_deparent...2019-01-11 11:12:48,635 INFO rbac_migrations Computing role roots..

2019-01-11 11:12:48,636 INFO rbac_migrations Found 0 roots in 0.000145 seconds, rebuilding ancestry map

2019-01-11 11:12:48,636 INFO rbac_migrations Rebuild completed in 0.000005 seconds

2019-01-11 11:12:48,636 INFO rbac_migrations Done.

OK

Applying main.0043_v330_oauth2accesstoken_modified... OK

Applying main.0044_v330_add_inventory_update_inventory... OK

Applying main.0045_v330_instance_managed_by_policy... OK

Applying main.0046_v330_remove_client_credentials_grant... OK

Applying main.0047_v330_activitystream_instance... OK

Applying main.0048_v330_django_created_modified_by_model_name... OK

Applying main.0049_v330_validate_instance_capacity_adjustment... OK

Applying main.0050_v340_drop_celery_tables... OK

Applying main.0051_v340_job_slicing... OK

Applying main.0052_v340_remove_project_scm_delete_on_next_update... OK

Applying main.0053_v340_workflow_inventory... OK

Applying main.0054_v340_workflow_convergence... OK

Applying oauth2_provider.0002_08_updates... OK

Applying oauth2_provider.0003_auto_20160316_1503... OK

Applying oauth2_provider.0004_auto_20160525_1623... OK

Applying oauth2_provider.0005_auto_20170514_1141... OK

Applying oauth2_provider.0006_auto_20171214_2232... OK

Applying sites.0001_initial... OK

Applying sites.0002_alter_domain_unique... OK

Applying social_django.0001_initial... OK

Applying social_django.0002_add_related_name... OK

Applying social_django.0003_alter_email_max_length... OK

Applying social_django.0004_auto_20160423_0400... OK

Applying social_django.0005_auto_20160727_2333... OK

Applying social_django.0006_partial... OK

Applying social_django.0007_code_timestamp... OK

Applying social_django.0008_partial_timestamp... OK

Applying sso.0001_initial... OK

Applying sso.0002_expand_provider_options... OK

[root@localhost ~]#

Inicializamos la configuración de AWX:

[root@localhost ~]# echo "from django.contrib.auth.models import User; User.objects.create_superuser('admin', 'root@localhost', 'password')" | sudo -u awx /opt/awx/bin/awx-manage shell

[root@localhost ~]# sudo -u awx /opt/awx/bin/awx-manage create_preload_data

Default organization added.

Demo Credential, Inventory, and Job Template added.

(changed: True)

[root@localhost ~]# sudo -u awx /opt/awx/bin/awx-manage provision_instance --hostname=$(hostname)

Successfully registered instance localhost.localdomain

(changed: True)

2019-01-11 11:14:43,068 DEBUG awx.main.dispatch publish awx.main.tasks.apply_cluster_membership_policies(047f737a-4f3e-48c6-9b90-7e9cf40fc4bf, queue=awx_private_queue)

[root@localhost ~]# sudo -u awx /opt/awx/bin/awx-manage register_queue --queuename=tower --hostnames=$(hostname)

2019-01-11 11:15:13,889 DEBUG awx.main.dispatch publish awx.main.tasks.apply_cluster_membership_policies(f994f4f4-73b3-458f-8d74-d25ec77fb7af, queue=awx_private_queue)

Creating instance group tower

2019-01-11 11:15:13,917 DEBUG awx.main.dispatch publish awx.main.tasks.apply_cluster_membership_policies(55edd072-140a-4bff-972b-d11c69b27c81, queue=awx_private_queue)

Added instance localhost.localdomain to tower

(changed: True)

[root@localhost ~]#

3) Configuración NGINX

Inicialmente hacemos un backup de la actual config:

[root@localhost ~]# cd /etc/nginx/

[root@localhost nginx]# pwd

/etc/nginx

[root@localhost nginx]# cp nginx.conf nginx.conf.bkp

[root@localhost nginx]#

Nos descargamos el nuevo fichero de configuración:

[root@localhost nginx]# wget -O /etc/nginx/nginx.conf http://raw.githubusercontent.com/sunilsankar/awx-build/master/nginx.conf

--2019-01-11 12:17:13-- http://raw.githubusercontent.com/sunilsankar/awx-build/master/nginx.conf

Resolviendo raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.120.133

Conectando con raw.githubusercontent.com (raw.githubusercontent.com)[151.101.120.133]:443... conectado.

Petición HTTP enviada, esperando respuesta... 200 OK

Longitud: 2621 (2,6K) [text/plain]

Grabando a: “/etc/nginx/nginx.conf”

100%[===========================================================================================================================================>] 2.621 --.-K/s en 0s

2019-01-11 12:17:14 (25,4 MB/s) - “/etc/nginx/nginx.conf” guardado [2621/2621]

[root@localhost nginx]#

Habilitamos y arrancamos el servicio NGINX:

[root@localhost nginx]# systemctl start nginx

[root@localhost nginx]# systemctl enable nginx

Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

[root@localhost nginx]#

Arrancamos los servicios AWX:

[root@localhost nginx]# systemctl start awx-cbreceiver

[root@localhost nginx]# systemctl start awx-channels-worker

[root@localhost nginx]# systemctl start awx-daphne

[root@localhost nginx]# systemctl start awx-web

Habilitamos los servicio para que arranquen automáticamente:

[root@localhost nginx]# systemctl enable awx-cbreceiver

Created symlink from /etc/systemd/system/multi-user.target.wants/awx-cbreceiver.service to /usr/lib/systemd/system/awx-cbreceiver.service.

[root@localhost nginx]# systemctl enable awx-channels-worker

Created symlink from /etc/systemd/system/multi-user.target.wants/awx-channels-worker.service to /usr/lib/systemd/system/awx-channels-worker.service.

[root@localhost nginx]# systemctl enable awx-daphne

Created symlink from /etc/systemd/system/multi-user.target.wants/awx-daphne.service to /usr/lib/systemd/system/awx-daphne.service.

[root@localhost nginx]# systemctl enable awx-web

Created symlink from /etc/systemd/system/multi-user.target.wants/awx-web.service to /usr/lib/systemd/system/awx-web.service.

[root@localhost nginx]#

4) Acceso al portal

Se accede al portal a través de un navegador web:

http://ip_or_fqdn/#/login

Usuario: admin Pass:password

awx01

awx02

awx03

http://pbs.twimg.com/media/DXxZPHrWkAA8NyC.jpg

Dejar una contestacion

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.