Skip to content

Instantly share code, notes, and snippets.

@aduartem
Last active May 21, 2022 19:45
Show Gist options
  • Save aduartem/e73cbf0d440f513193af8bae8a8f83df to your computer and use it in GitHub Desktop.
Save aduartem/e73cbf0d440f513193af8bae8a8f83df to your computer and use it in GitHub Desktop.
Guía de CentOS 7

Guía de CentOS 7

Post instalación base

Configurar DHCP Client para que se inicie automáticamente al iniciar el sistema

En la siguiente ruta "/etc/sysconfig/network-scripts/" se encuentran los archivo de configuración para ethernet y para wifi. Revisar que estos archivo tengan el parámetro ONBOOT=yes. Estos archivos comienzan con "ifcfg-".

ONBOOT=yes

Agregar al usuario al grupo wheel

Como usuario root ejecutar el siguiente comando:

$ usermod -a -G wheel nombre_usuario

Revisar que los usuarios del grupo wheel puedan usar el comando sudo

Abrir el archivo sudoers

$ vi /etc/sudoers

Revisar que no se encuentre comentada la siguiente línea:

%wheel ALL=(ALL) ALL

De estar comentada quitar el signo "#".

Programas básicos

net-tools

El paquete net-tools nos permite usar comandos como el ifconfig, entre otros.

$ sudo yum install net-tools

Secure Shell

Cliente ssh, nos permite usar comandos como el ssh, ssh-keygen, entre otros.

$ sudo yum install openssh

Tree

Paquete para visualizar de manera rápido el árbol de carpetas/directorios.

$ sudo yum install tree

ZSH

$ sudo yum install zsh

Wget

$ sudo yum install wget

Curl

$ sudo yum install curl

Locate

$ sudo yum install mlocate
$ sudo updatedb

Para realizar una búsqueda:

$ locate nombre_archivo

vim

$ sudo yum install vim

Entorno de escritorio

Gnome Desktop

$ sudo yum groupinstall "GNOME Desktop" "Graphical Administration Tools"

Cambiar systemd default.target a runlevel5.target:

$ sudo ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target

Reiniciamos la máquina para iniciar el servidor en modo gráfico:

$ reboot

En modo gráfico: click en "License information" --> click en el checkbox de "acepto términos y condiciones" --> Click en "Done" --> Click en "Finish Configuration".

MATE

Instalar repositorio epel:

$ sudo yum -y update
$ sudo yum -y install epel-release

Instalar X Window System:

$ sudo yum groupinstall "X Window system"

Instalar MATE desktop:

$ sudo yum groupinstall "MATE Desktop"

Cambiar systemd default.target a graphical.target:

$ sudo ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

Cambiar al nuevo escritorio new desktop environment:

$ sudo systemctl isolate graphical.target

Programas

Instalación de MongoDB 4 en CentOS 7 / RHEL 7

Cambiamos a usuario root:

$ su -

Agregar repositorio de MongoDB:

vim /etc/yum.repos.d/mongodb.repo
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/testing/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc

Instalar MongoDB:

$ yum -y install mongodb-org

Chequear la versión de MongoDB instalada:

$ mongod --version

Establecer ulimit linux:

Por defecto, la mayoría de los sistemas tienen valores ulimit bajos predeterminados para procesos, archivos abiertos, memoria, etc. Estas configuraciones pueden causar problemas en el funcionamiento de MongoDB. Entonces, necesitamos aumentar estos valores para una mejor operación. Para hacer eso:

Crearemos un archivo dentro del directorio /etc/security/limits.d:

vim /etc/security/limits.d/99-mongodb-nproc.conf

Agregamos el siguiente contenido en el archivo y lo guardamos:

mongod soft nofile 64000
mongod hard nofile 64000
mongod soft nproc 64000
mongod hard nproc 64000

Se recomienda deshabilitar SELinux en CentOS 7 / RHEL 7. Si de todas formas quieres usar SELinux entonces ejecuta el siguiente comando para habilitar el acceso:

$ semanage port -a -t mongod_port_t -p tcp 27017

Nota: En caso que salga el error " – semanage command not found", instalar el siguiente paquete:

$ yum install policycoreutils-python

Control MongoDB service

Iniciar servicio:

$ systemctl start mongod

Detener servicio:

$ systemctl stop mongod

Reiniciar servicio:

$ systemctl start mongod

Chequear status del servicio:

$ systemctl status mongod

Chequear si MongoDB está escuchando el puerto 27017:

$ netstat -antup | grep -i 27017

Output:

tcp        0      0 127.0.0.1:27017         0.0.0.0:*               LISTEN      1522/mongod

Acceso a MongoDB shell

$ mongo

Output:

MongoDB shell version v4.0.0-rc7
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 4.0.0-rc7
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
        http://docs.mongodb.org/
Questions? Try the support group
        http://groups.google.com/group/mongodb-user
Server has startup warnings: 
2018-06-27T03:57:31.469+0000 I CONTROL  [initandlisten] 
2018-06-27T03:57:31.469+0000 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2018-06-27T03:57:31.469+0000 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2018-06-27T03:57:31.469+0000 I CONTROL  [initandlisten] 
2018-06-27T03:57:31.469+0000 I CONTROL  [initandlisten] 
2018-06-27T03:57:31.469+0000 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2018-06-27T03:57:31.469+0000 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2018-06-27T03:57:31.469+0000 I CONTROL  [initandlisten] 
2018-06-27T03:57:31.469+0000 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2018-06-27T03:57:31.469+0000 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2018-06-27T03:57:31.470+0000 I CONTROL  [initandlisten] 
---
Enable MongoDB's free cloud-based monitoring service to collect and display
metrics about your deployment (disk utilization, CPU, operation statistics,
etc).

The monitoring data will be available on a MongoDB website with a unique
URL created for you. Anyone you share the URL with will also be able to
view this page. MongoDB may use this information to make product
improvements and to suggest MongoDB products and deployment options to you.

To enable free monitoring, run the following command:
db.enableFreeMonitoring()
---

> 

How to install mongodb 4 on CentOS 7

RabbitMQ

Antes de instalar RabbitMQ es necesario instalar otros programas. A continuación la instalación de estos programas:

$ sudo yum -y update

Instalar wget:

$ sudo yum install wget

Instalar epel-release:

$ sudo yum -y install epel-release

Actualizar el repositorio:

$ sudo yum -y update

Instalar Erlang usando el siguiente comando:

$ sudo yum -y install erlang socat

Para chequear la versión instalada:

$ erl -version

Para utilizar Erlang shell

$ erl

ctrl + c para salir.

Instalar RabbitMQ:

$ wget https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server-3.6.10-1.el7.noarch.rpm

Importar el GPG key:

$ sudo rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc

Instalar el paquete RPM:

$ rpm -Uvh rabbitmq-server-3.6.10-1.el7.noarch.rpm

Con esto RabbitMQ esta instalado.

Habilitar el servicio:

sudo systemctl enable rabbitmq-server

Iniciar el servicio:

sudo systemctl start rabbitmq-server

Verificar el status del servicio:

sudo systemctl status rabbitmq-server

Modificar Firewall y SELinux Rules

Si tiene Firewall instalado y en ejecución, deberá permitir el puerto 8161 a través del firewall. Ejecute el siguiente comando para el mismo:

$ sudo firewall-cmd --zone=public --permanent --add-port=4369/tcp
$ sudo firewall-cmd --zone=public --permanent --add-port=25672/tcp
$ sudo firewall-cmd --zone=public --permanent --add-port=5671-5672/tcp
$ sudo firewall-cmd --zone=public --permanent --add-port=15672/tcp
$ sudo firewall-cmd --zone=public --permanent --add-port=61613-61614/tcp
$ sudo firewall-cmd --zone=public --permanent --add-port=1883/tcp
$ sudo firewall-cmd --zone=public --permanent --add-port=8883/tcp
$ sudo firewall-cmd --reload

Si tiene SELinux habilitado, deberá ejecutar el siguiente comando para permitir el servicio RabbitMQ:

$ sudo setsebool -P nis_enabled 1

Acceso al administrador web

$ sudo rabbitmq-plugins enable rabbitmq_management

Cambiamos el propietario y grupo del directorio rabbitmq:

$ sudo chown -R rabbitmq:rabbitmq /var/lib/rabbitmq/

Para acceder al panel de administración de RabbitMQ, abre un navegador y accede a la siguiente dirección web:

http://Your_Server_IP:15672/

Crear usuario administrador

$ sudo rabbitmqctl add_user admin StrongPassword
$ sudo rabbitmqctl set_user_tags admin administrator
$ sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment