La Web De Gonza

El experimentador que no sabe lo que está buscando no comprenderá lo que encuentra. Claude Bernard (1813-1878) Fisiólogo francés.

martes, 5 de enero de 2010

Mini-guía Creación de servicios en Centos 5.3

Si quieres crear uno que no existe por ejemplo uno para jboss se crearia este archivo en /etc/init.d/

#vim jboss

este es el contenido que deberíamos poner

#!/bin/bash
#
#
# jboss Startup script for the Jboss Web Server---Esto debe ir en la linea 4 obligatoriamente
#
# chkconfig: - 99 01 ----------El 99 significa el orden del proceso al arrancar, y el 01 al apagar *
# description: Jboss is a World Wide Web server.
#
# processname: jboss-script ---Nombre que le damos al proceso (el nombre que queramos)
# pidfile: /var/run/jboss-script.pid -- Nombre del archivo dnd guardamos los id del proceso (nombre que queramos)

JAVA_HOME=/opt/jdk
START=/opt/jboss/bin/run.sh
STOP="/opt/jboss/bin/shutdown.sh -S"
export JAVA_HOME
case "$1" in
start)
echo "Iniciando JBoss..."
$START & ---- El simbolo "&" con esto se ejecutaría background
;;
stop)
echo "Parando JBoss..."
$STOP
;;
restart)
echo "Parando JBoss..."
$STOP
sleep 20
echo "Iniciando JBoss..."
$START &
;;
esac
exit 0

despues de hacer esto tan solo tenemos que poner :

#chkconfig --add jboss
#chkconfig jboos on

Niveles de ejecución (runlevel) típicos en Linux

El término runlevel o nivel de ejecución se refiere al modo de operación en los sistemas operativos que implementan el estilo de sistema de arranque de iniciación tipo UNIX System V.

En términos prácticos, cuando el computador entra al runlevel 0, está apagado, y cuando entra al runlevel 6, se reinicia. Los runlevels intermedios (1 a 5) difieren en relación a qué unidades de disco se montan, y qué servicios de red son iniciados. Los niveles más bajos se utilizan para el mantenimiento o la recuperación de emergencia, ya que por lo general no ofrecen ningún servicio de red. Los detalles particulares de configuración del runlevel varía bastante entre
sistemas operativos, y ligeramente entre los administradores de sistema.

* El orden del correo de arranque tiene relación con el de parada por lo que no deberíamos tomar un valor aleatorio, exactamente la parada debe ser el “numero” 100 menos el numero de el orden de arranque, en este caso es 100 -99 = 1 por eso nuestra parada es la 01, si fuera 95 seria 100 – 95 = 5 por lo que la parada debería ser 05

El sistema de runlevel reemplazó al script tradicional /etc/rc en UNIX, versión 7.

0 Alto Alto o cierre del sistema (Apagado).

1 Modo de usuario único (Monousuario) No configura la interfaz de red o los demonios de inicio, ni permite que ingresen otro usuarios que no sean el usuario root, sin contraseña. Este nivel de ejecución permite reparar problemas, o hacer pruebas en el sistema.

2 Multiusuario Multiusuario sin soporte de red.

3 Multiusuario con soporte de red. Inicia el sistema normalmente.

4 No usado.

5 Multiusuario gráfico (X11) Similar al nivel de ejecución 3 + display manager.

Añadir / Quitar servicios al inicio del sistema Red-Hat, CentOS ...

Para configurar los servicios que queremos arranquen automáticamente en el sistema, podremos usar el comando chkconfig.

Lo primero que podemos hacer es listar los servicios que actualmente arrancan automáticamente al inicio del sistema:

chkconfig --list

Este comando nos mostrará un listado de los servicios del sistema, y nos indicará, para cada nivel de corrida (runlevels) si dicho servicio está activado o desactivado, ejemplo:

NetworkManager 0:desactivado 1:desactivado 2:desactivado 3:desactivado 4:desactivado 5:desactivado 6:desactivado
acpid 0:desactivado 1:desactivado 2:desactivado 3:activo 4:activo 5:activo 6:desactivado
anacron 0:desactivado 1:desactivado 2:activo 3:activo 4:activo 5:activo 6:desactivado
apf 0:desactivado 1:desactivado 2:desactivado 3:activo 4:activo 5:activo 6:desactivado
auditd 0:desactivado 1:desactivado 2:activo 3:activo 4:activo 5:activo 6:desactivado
autofs 0:desactivado 1:desactivado 2:desactivado 3:activo 4:activo 5:activo 6:desactivado
avahi-daemon 0:desactivado 1:desactivado 2:desactivado 3:activo 4:activo 5:activo 6:desactivado
avahi-dnsconfd 0:desactivado 1:desactivado 2:desactivado 3:desactivado 4:desactivado 5:desactivado 6:desactivado
bandmin 0:desactivado 1:desactivado 2:activo 3:activo 4:activo 5:activo 6:desactivado
bluetooth 0:desactivado 1:desactivado 2:activo 3:desactivado 4:activo 5:activo ...
...
...

Cada columna representa un runlevel, y cada fila un servicio de sistema. Recordad que podéis saber en que runlevel arranca vuestro sistema revisando el fichero /etc/inittab:

# Default runlevel. The runlevels used by RHS are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
#
id:3:initdefault:

para añadir servicios se haria de la siguiente forma

chkconfig --add nombredelservicio

para quitarlos

chkconfig --del nombredelservicio

Entrando al tema, podemos añadir o quitar servicios de run level del siguiente modo:

chkconfig --level nombredelservicio on
chkconfig --level nombredelservicio off



Colorin colorado este cuento a finalizado ;).

Mini-tutorial Integración Tomcat + Apache + Virtual Host + SSL Centos 5.3

Decir que donde ponga los virtual host pondre ( para abrir y ) para cerrar pero en realidad es para abrir <> para cerrar.

Vamos a suponer que nuestra aplicación esta es opencms que corre bajo Tomcat y tenemos que conectarla a apache para que use ssl, tambien asumiremos que la ip de nuestro equipo es 10.0.8.88 y que el nombre de equipo es pepito, y la aplicación es raulito.

En este documento nos saltamos la parte de la instalación de opencms y asumimos que esta instalado, ya que este no es el objetivo de esta guía.

yum install httpd httpd-devel mod_ssl libtool automake

nos vamos a:

cd /etc/httpd/conf/httpd.conf

Y ahí añadimos:

JkWorkersFile "/etc/httpd/conf/workers.properties" -- definir conexión con tomcat
JkLogFile "/var/log/httpd/mod_jk.log" --------- el log de el conector de tomcat
JkLogLevel info ------------ el nivel de información del log (warm, info,error)

NameVirtualHost 10.0.8.88:80
NameVirtualHost 10.0.8.88:443

(VirualHost 10.0.8.88:80)
ServerName pepito ---------------------- nombre del servidor
ServerName 10.0.8.88 ---------------------- ip del servidor
Redirect / https://10.0.8.88/ ------ redirigimos las peticiones a ssl
(/VirtualHost)

ahora nos vamos a en la carpeta que estamos /etc/httpd/conf creamos el archivo:

vim workers.properties
y lo rellenamos de esta manera
worker.list=connector --------- nombre que le damos a nuesto conector
# Define a worker using ajp13
connector.port=8009 --------- puerto de conexión con tomcat
connector.host=localhost --------- en nuestro caso el tomcat esta en localhost
connector.type=ajp13 --------- tipo de lenguaje entre tomcat y apache

Compilar e instalar el conector JK

Existen dos versiones del conector, JK y JK2. Aunque parezca raro la versión que nos interesa instalar es la primera, ya que la segunda está descontinuada. El código fuente se puede descargar desde la web de Tomcat.

Vamos a compilar el módulo mod_jk.so (debería colocarlo en la carpeta de módulos del servidor Apache):

cp -p jakarta-tomcat-connectors-1.2.15-src.tar.gz /usr/local/src/

cd /usr/local/src

tar xvzf jakarta-tomcat-connectors-1.2.15-src.tar.gz

rm jakarta-tomcat-connectors-1.2.15-src.tar.gz

cd jakarta-tomcat-connectors-1.2.15-src/jk/native/

./buildconf.sh

./configure --with-apxs=/usr/local/apache/bin/apxs

make

make install

ahora nos vamos a :

vim /etc/httpd/conf/httpd.conf

una linea por debajo de esta :

LoadModule version_module modules/mod_version.so

añadimos esta :

LoadModule jk_module /usr/lib/httpd/modules/mod_jk.so

y ahora en ese mismo documento detrás de las lineas :

(VirualHost 10.0.8.88:80)
ServerName pepito ---------------------- nombre del servidor
ServerName 10.0.8.88 ---------------------- ip del servidor
Redirect / https://10.0.8.88/ ------ redirigimos las peticiones a ssl
(/VirtualHost)


añadimos:


(VirtualHost 10.0.8.88:443)

ServerName pepito
ServerName 10.0.8.88
ServerAlias 10.0.8.88
ServerAlias pepito

SSLEngine on
# este es el certificado por defecto y su key, si queréis usar otros ponedlos aquí
SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key

JkMount /raulito connector
JkMount /raulito/* connector

(/VirutalHost)

Esto es todo, creo que de esta manera de forma sencilla hemos integrado tomcat con apache mediante un conector y a su vez hemos redirigido la pagina por ssl.

Insignia identificativa de Facebook

Seguidores

Datos personales

Aqui comienza mi andanza

Estimados amigos y ciber-personajes,

Aquí comienza mi Blog, estamos de inauguración :D,

Bueno estos son los contenidos que vamos a tratar aquí,

Ocio:
- Manga y sus derivados,
- Videojuegos
Oficio:
- Sistemas Linux

Por ahora no soy muy ambicioso, pero poco a poco espero que esto vaya creciendo.

Un abrazo a Tod@s y bienvenidos.