Cargando



Cómo instalar y configurar Katello en CentOS 7

Este tutorial te enseña cómo instalar y configurar Katello en CentOS 7.


sep 13 2017 18:39
Profesional
Total de Apartados : 5
sep 13 2017 18:40

Al administrar diversas maquinas en ambientes Linux es ideal que como administradores, jefes de IT o personal de soporte contemos con herramientas tanto físicas como a nivel de software para una óptima gestión y administración centralizada de cada una de ellas.

 

Independiente de si manejamos 10, 100 o 1000 equipos es un objetivo claro el contar con aplicaciones integrales que nos permitan llevar a cabo cada tarea de soporte de la mejor manera posible.

 

Para este tipo de situaciones se ha desarrollado Katello y es por esta razón que hoy Solvetic analizará de forma detallada que es, como configurar y como usar Katello en CentOS 7 y de esta forma contar siempre con una utilidad más que ayudara a llevar nuestras tareas de soporte de una forma mucho más dinámica y sencilla.

 

Qué es Katello
Katello es un plugin de administración de ciclo de vida de sistemas para Foreman, y es bueno que todos tengamos claro qué es Foreman. Foreman es una herramienta completa de gestión del ciclo de vida para servidores tanto a nivel físico como virtual.

 

Al usar Foreman, se ofrece a los administradores de sistemas la posibilidad de automatizar fácilmente las tareas repetitivas, implementar rápidamente las aplicaciones y gestionar de forma proactiva los servidores, en las instalaciones o en la nube lo cual es una tendencia hoy en día.

 

Katello nos permite administrar miles de máquinas con un solo clic de forma dinámica.

 

Katello tiene la capacidad de extraer contenido de repositorios remotos en entornos aislados y hacer que la administración de suscripciones sea fácil aumentando aún mucho más la productividad y el uso de recursos dentro de la organización.
En la actualidad Katello está en la capacidad de administrar sistemas basados en Fedora y Red Hat Enterprise Linux (RHEL).

 

Componentes de Katello
Katello está compuesto por dos tipos de componentes, internos y externos.
A nivel interno tenemos los siguientes:
  • Candlepin: Administra la gestión de suscripciones.
  • Pulp: Administra el contenido.
  • Smart Proxy: Cumple funciones similares a un proxy para algunos de los servicios como DNS, DHCP y configuración de Puppetmaster.
A nivel externo contamos con los siguientes elementos:
  • Foreman: Como hemos mencionado, es una aplicación de código abierto que nos permite gestionar sistemas físicos y virtuales automáticamente usando los módulos Kickstart y Puppet.
  • Servidor de cápsula: Actúa como servidor proxy para algunos de los servicios de Katello como almacenamiento de repositorio, DNS, DHCP y configuraciones de servidor.

 

Requisitos de hardware y de puertos para Katello
Antes de instalar Katello debemos contar con los siguientes requisitos mínimos:

 

A nivel de hardware:

  • Dos CPU lógicos.
  • 8 GB de memoria RAM (Se recomiendan 12 GB).
  • El sistema de archivos donde se aloja el directorio /var/lib/pulp debe contar con mínimo 30 GB de espacio para cada sistema operativo a usar.
  • El directorio /var/spool/squid/ puede llegar a ocupar 10 GB de espacio ya que es una ubicación temporal para algunos tipos de sincronización de repositorios.
  • El sistema de archivos donde está el directorio /var/lib/mongodb necesitara al menos 4 GB para su instalación.
  • El sistema de archivos raíz necesita al menos 20 GB de espacio en disco.

 

A nivel de puertos será necesario lo siguiente para la conexión externa:

  • 80 TCP - HTTP, el cual es usado para fines de aprovisionamiento.
  • 443 TCP - HTTPS, usado para acceso web y comunicación api.
  • 5647 TCP - qdrouterd , usado para las acciones del cliente y la cápsula.
  • 9090 TCP – HTTPS, usado para la comunicación con el proxy inteligente.

 

 


1. Establecer el hostname en CentOS 7

 

Paso 1

El primer paso a dar consiste en renombrar el host con la siguiente sintaxis:
hostnamectl set-hostname katello.(nombre).local

 

Paso 2

En caso de no contar con un servidor DNS en nuestro sistema, será necesario actualizar el archivo /etc/hosts con el nombre anteriormente asignado de la siguiente forma:
echo "192.168.0.7 katello.solvetic.local solvetic" >> /etc/hosts

 

 

Nota
En la dirección IP debemos asignar la que tiene actualmente el sistema.

 


2. Ajustes de firewall para Katello en CentOS 7


Una vez definido el nombre del host, el siguiente paso consiste en establecer las reglas de firewall para Katello con el fin de habilitar los puertos.

 

Paso 1

Alli ejecutaremos la siguiente línea:
firewall-cmd --permanent --zone=public --add-port=80/tcp --add-port=443/tcp --add-port=5647/tcp --add-port=9090/tcp

 

Paso 2

Ahora agregaremos el permiso para el proxy inteligente ejecutando lo siguiente:
firewall-cmd --permanent --zone=public  --add-port=8140/tcp --add-port=8443/tcp --add-port=8000/tcp --add-port=67/udp --add-port=68/udp --add-port=69/udp

 

Paso 3

Reiniciaremos el servicio del firewall ejecutando lo siguiente:
firewall-cmd –reload

 

 


3. Configurar el servidor NTP en CentOS 7


El siguiente paso consiste en configurar el servidor NTP para que el servidor pueda sincronizarse con el servidor de tiempo NTP de forma correcta. Para ello ejecutaremos las siguientes líneas.

 

Paso 1

En primer lugar instalamos NTP:
yum install -y ntp

 

Paso 2

Reiniciamos el servicio NTP:
service ntpd restart

 

Paso 3

Finalmente ejecutamos las siguientes líneas:
timedatectl set-timezone Europe/Madrid (Podemos establecer la zona horaria)
ntpdate -u es.pool.ntp.org

 

 

Nota
Para comprobar la zona horaria junto con el servidor NTP podemos ir al siguiente enlace oficial de NTP y allí ubicar la zona geográfica deseada:
http://www.pool.ntp.org/zone/es

 

 


4. Instalar los repositorios oficiales de Katello en CentOS 7


El siguiente paso a dar consiste en la instalación de los repositorios de Katello los cuales son requeridos para su funcionamiento.

 

Paso 1

Será necesario ejecutar las siguientes líneas:
yum -y localinstall http://fedorapeople.org/groups/katello/releases/yum/3.2/katello/el7/x86_64/katello-repos-latest.rpm

yum -y localinstall http://yum.theforeman.org/releases/1.13/el7/x86_64/foreman-release.rpm

yum -y localinstall http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm

yum -y localinstall http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

yum -y install foreman-release-scl

 

Paso 2

Una vez este proceso concluya veremos lo siguiente:

 

 

Paso 3

Procedemos a actualizar de nuevo los paquetes ejecutando
yum -y update
Nota
En el caso de usar RHEL 7 debemos ejecutar las siguientes líneas para los repositorios:
yum -y  --disablerepo="*" --enablerepo=rhel-7-server-rpms install yum-utils wget
yum-config-manager --disable "*"
yum-config-manager --enable rhel-7-server-rpms
yum-config-manager --enable rhel-7-server-optional-rpms
yum-config-manager --enable rhel-7-server-extras-rpms

 

 


5. Instalar y usar Katello en CentOS 7

 

Paso 1

Con los repositorios instalados el siguiente paso será instalar los paquetes de Katello y para ello ejecutamos lo siguiente:
yum -y install katello

 

Paso 2

Allí debemos esperar a que todos los paquetes sean descargados e instalados en el sistema, este proceso puede tardar entre 20 a 30 minutos. Una vez finalizado veremos lo siguiente:

 

 

 

Paso 3

Ahora configuraremos Katello usando Foreman y contamos con dos opciones. La primer opción es configurar en una sola línea el usuario y contraseña de acceso a Katello:
foreman-installer --scenario katello --foreman-admin-username admin --foreman-admin-password <Contraseña>
Paso 4

La segunda opción consiste en ejecutar la línea siguiente y allí tomar nota de los detalles de la cuenta.
foreman-installer --scenario katello
Paso 5

Finalmente para acceder a Katello debemos ir al navegador e ingresar lo siguiente:
http://Direccion-IP

 

Paso 6

Allí accederemos con las credenciales definidas anteriormente. Al acceder este será el entorno. Allí podremos iniciar todo el proceso de configuración y gestión.

 

 

 

Así Katello es una alternativa practica a la hora de administrar múltiples equipos en ambientes CentOS o RHEL.

 

Te explicamos todos los pasos que debes seguir para instalar cPanel y WHM para el control y gestión de servidores CentOS 7.


¿Te ayudó este Tutorial?


1 Comentarios


alexldemise
feb 20 2019 11:07

Buenas, he seguido paso a paso el tutorial sobre un "CentOS Linux release 7.6.1810 (Core)" y al ejecutar"foreman-installer --scenario katello --foreman-admin-username admin --foreman-admin-password admin" me salen muchos errores:

 

 Execution of '/usr/bin/yum -d 0 -e 0 -y list python-qpid-qmf' returned 1: Error: No matching Packages to list
/usr/share/ruby/vendor_ruby/puppet/util/execution.rb:219:in `execute'
/usr/share/ruby/vendor_ruby/puppet/provider/command.rb:23:in `execute'
/usr/share/ruby/vendor_ruby/puppet/provider.rb:237:in `block in has_command'
/usr/share/ruby/vendor_ruby/puppet/provider.rb:463:in `block in create_class_and_instance_method'
/usr/share/ruby/vendor_ruby/puppet/provider/package/yum.rb:100:in `install'
/usr/share/ruby/vendor_ruby/puppet/type/package.rb:73:in `block (3 levels) in <module:Puppet>'
/usr/share/ruby/vendor_ruby/puppet/property.rb:197:in `call_valuemethod'
/usr/share/ruby/vendor_ruby/puppet/property.rb:498:in `set'
/usr/share/ruby/vendor_ruby/puppet/property.rb:581:in `sync'
/usr/share/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:204:in `sync'
/usr/share/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:128:in `sync_if_needed'
/usr/share/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:81:in `perform_changes'
/usr/share/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:20:in `evaluate'
.........
.........
/usr/share/ruby/vendor_ruby/puppet/application/apply.rb:198:in `main'
/usr/share/ruby/vendor_ruby/puppet/application/apply.rb:159:in `run_command'
/usr/share/ruby/vendor_ruby/puppet/application.rb:381:in `block (2 levels) in run'
/usr/share/ruby/vendor_ruby/puppet/application.rb:507:in `plugin_hook'
/usr/share/ruby/vendor_ruby/puppet/application.rb:381:in `block in run'
/usr/share/ruby/vendor_ruby/puppet/util.rb:496:in `exit_on_fail'
/usr/share/ruby/vendor_ruby/puppet/application.rb:381:in `run'
/usr/share/ruby/vendor_ruby/puppet/util/command_line.rb:146:in `run'
/usr/share/ruby/vendor_ruby/puppet/util/command_line.rb:92:in `execute'
/usr/bin/puppet:8:in `<main>'
 /Stage[main]/Qpid::Install/Package[python-qpid-qmf]/ensure: change from absent to present failed: Execution of '/usr/bin/yum -d 0 -e 0 -y list python-qpid-qmf' returned 1: Error: No matching Packages to list
Installing Done [100%] [.....................]
Something went wrong! Check the log for ERROR-level output
The full log is at /var/log/foreman-installer/katello.log

 

 

 

Al final de /var/log/foreman-installer/katello.log aparce:

 

........

........

[ERROR 2019-02-20 10:04:52 main] /usr/share/ruby/vendor_ruby/puppet/context.rb:64:in `override'
[ERROR 2019-02-20 10:04:52 main] /usr/share/ruby/vendor_ruby/puppet.rb:246:in `override'
[ERROR 2019-02-20 10:04:52 main] /usr/share/ruby/vendor_ruby/puppet/application/apply.rb:198:in `main'
[ERROR 2019-02-20 10:04:52 main] /usr/share/ruby/vendor_ruby/puppet/application/apply.rb:159:in `run_com
mand'
[ERROR 2019-02-20 10:04:52 main] /usr/share/ruby/vendor_ruby/puppet/application.rb:381:in `block (2 leve
ls) in run'
[ERROR 2019-02-20 10:04:52 main] /usr/share/ruby/vendor_ruby/puppet/application.rb:507:in `plugin_hook'
[ERROR 2019-02-20 10:04:52 main] /usr/share/ruby/vendor_ruby/puppet/application.rb:381:in `block in run'
[ERROR 2019-02-20 10:04:52 main] /usr/share/ruby/vendor_ruby/puppet/util.rb:496:in `exit_on_fail'
[ERROR 2019-02-20 10:04:52 main] /usr/share/ruby/vendor_ruby/puppet/application.rb:381:in `run'
[ERROR 2019-02-20 10:04:52 main] /usr/share/ruby/vendor_ruby/puppet/util/command_line.rb:146:in `run'
[ERROR 2019-02-20 10:04:52 main] /usr/share/ruby/vendor_ruby/puppet/util/command_line.rb:92:in `execute'
[ERROR 2019-02-20 10:04:52 main] /usr/bin/puppet:8:in `<main>'
[ERROR 2019-02-20 10:04:52 main]/Stage[main]/Qpid::Install/Package[python-qpid-qmf]/ensure: change from absent to present failed: Execution of '/usr/bin/yum -d 0 -e 0 -y list python-qpid-qmf' returned 1: Error: No matching Packages to list
[DEBUG 2019-02-20 10:04:52 main] Cleaning /etc/foreman-installer/scenarios.d/d20190220-23141-1sbczbd
[DEBUG 2019-02-20 10:04:52 main] Cleaning /tmp/kafo_hiera20190220-23141-hkvmwe
[DEBUG 2019-02-20 10:04:52 main] Cleaning /tmp/default_values.yaml
No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X