Icecast es un servidor para realizar live streaming
La instalación se realiza de la siguiente forma.
1. Instalar paquete
apt-get install icecast2
2. Modificar el archivo de configuración
vi /etc/icecast2/icecast.xml
Modificamos los siquientes apartados
<clients>1000</clients>
<source-password>med4universidad</SOURCE-PASSWORD>
<relay-password>rmed4universidad</RELAY-PASSWORD>
<admin-password>logsm3aic</ADMIN-PASSWORD>
3. Creamos un punto de montaje sencillo
<mount>
<mount-name>/envivo.ogg</MOUNT-NAME>
<username>tvdirecta</username>
<password>p4sstvd1r</password>
<max-listeners>100</MAX-LISTENERS>
</mount>
4. Edición del archivo de inicio
vi /etc/default/icecast2
# Change this to true when done to enable the init.d script
ENABLE=true
Lo aprendido y compartido
Blog de dedicado a compartir las experiencias sobre los temas que me atraen y rodean, estos temas son: Administración IT. Desarrollo de Software. Educación. Salud. Adminsitración de Recursos Humanos.
lunes, 3 de agosto de 2009
jueves, 30 de julio de 2009
Instalación de un servidor Linux desde cero
La instalación de un servidor Linux consta de tres pasos básicos para asegurar su buen funcionamiento y un optimo rendimiento del hardware, estos pasos son: Planeación de la instalación, etapa previa a la instalación, también conocida como preinstalación, en esta etapa se planea el sistema a instalar y se realiza un reconocimiento tanto del hardware como de los paquetes a instalar; luego se encuentra la instalación, tratando siempre de que se realice de la forma más limpia posible, es decir, instalando solo los paquetes necesarios y por último la afinación de parámetros de los subsistemas principales o de los paquetes objetivo del servidor, dentro de este paso se encuentra una afinación básica de la seguridad.
1. Preinstalación de un servidor
La preinstalación inicia desde el momento mismo en el cual se selecciona el sistema operativo que queremos instalar, es importante realizar un reconocimiento de cuál es la última distribución o versión estable del sistema operativo, realizar lecturas acerca de parches de seguridad y del mantenimiento mismo del sistema, es decir, tiempo de soporte, etapas de desarrollo, liberación de versiones, licenciamiento, etc.
Luego de seleccionar el Sistema Operativo se debe definir la política de redundancia en software en nuestro equipo, comúnmente esta política se toma de acuerdo a la criticidad del sistema a montar y de la continuidad de la información y servicios que el sistema prestará.
Es recomendable para un sistema crítico pensar en redundancia, recordemos que la seguridad y la redundancia son directamente proporcionales al costo, no siempre obtenemos lo que queremos.
Una primera protección al sistema es adquirir un hardware redundante, es decir, dos fuentes de poder redundantes, dos tarjetas de red, dos procesadores (aunque en muchos casos los dos procesadores se piden es para ganar velocidad de procesamiento), realizar el montaje de protección eléctrica necesario y una UPS que garanticen que mi sistema brindará confiabilidad, seguridad, continuidad de la información y del servicio de presta.
1.1. Discos
En esta parte de la planeación trate al máximo de pensar en un sistema mínimo de discos con espejo 1 a 1 para todos los discos, de ser posible siempre con controladora espejo por hardware y no por software.
Así que antes que nada cconfigure el arreglo de discos del servidor según se indique en los manuales de la controladora o en el software administrador del sistema de almacenamiento en caso de utilizar una SAN.
1.2. Particiones
En el momento de planear nuestro sistema de archivos y establecer los tamaños de almacenamiento destinados a nuestro servidor debemos tener en cuenta que las siguientes particiones son básicas.
Partición Tamaño Descripción
/ 6 Gb Raíz del sistema
Swap 8 Gb Área de intercambio
/boot 200 Mb Imagen del kernel
/usr 5 Gb Archivos de programas
/tmp 6 Gb Archivos temporales
/var 6 Gb Librerías e intercambio
/var/log 11 Gb Logs del sistema
Dependiendo del las funcionalidades o metas de mi servidor se pueden tener las siguientes particiones
/datos 100 Gb Para los datos de la instalación Moodle
/basedatos 20 Gb Para las bases de datos
/respaldo 100 Gb Respaldos de espacios Moodle
/home No utilizado Para las cuentas de los usuarios
Además es recomendable dejar una zona del disco donde poder realizar backups, es decir una nueva partición /respaldo
2. Instalación del sistema operátivo en Debian
2.1. Instalación del sistema Operativo.
- Inicio de la instalación de Debian
- Seleccione Install en el menú inicial
- Seleccione el lenguaje, Español
- Seleccione el país - Colombia
- Elija la distribución del teclado - Ingles estados unidos
- El sistema realiza un análisis del hardware y del disco de instalación. En esta etapa es posible que el sistema arroje errores por hardware no reconocido, se recomienda tomar nota de los firmware faltantes y luego instalarlos.
Para el caso de nuestra instalación no se reconoce el hardware de red, el firmware necesario es el ql2400_fw.bin y el bnx_06_4.0.5.fw. La búsqueda de estos firmware en internet arroja como resultados dos paquetes .deb para ser instalados.
- Se recomienda no realizar la conexión a la red, saltar la conexión.
- Nombre de la maquina – mimaquina
- Particionamiento de los discos según se realice la planeación
- Luego debe aceptar los cambios y escribirlos en el disco
- El formatea las particiones que tenga que formatear y luego realiza la instalación del sistema base.
- Luego ingresamos las claves del root
- Creamos un nuevo usuario, por lo general diferente de admin o admon, le colocamos una clave segura, es decir, conformada mínimo por 8 caracteres, mayúsculas minúsculas y números.
- Luego seleccionamos e instalamos aplicaciones, instalamos un "sistema standar"
- Instalar el sistema desde cero, no instalar juegos, sistemas de mensajería, aplicaciones de quemar CD ni no es necesario, openoffice, pop, imap, postfix, samba, telnet, ftp, etc.
- Reiniciamos
La instalación de un servidor Linux consta de tres pasos básicos para asegurar su buen funcionamiento y un optimo rendimiento del hardware, estos pasos son: Planeación de la instalación, etapa previa a la instalación, también conocida como preinstalación, en esta etapa se planea el sistema a instalar y se realiza un reconocimiento tanto del hardware como de los paquetes a instalar; luego se encuentra la instalación, tratando siempre de que se realice de la forma más limpia posible, es decir, instalando solo los paquetes necesarios y por último la afinación de parámetros de los subsistemas principales o de los paquetes objetivo del servidor, dentro de este paso se encuentra una afinación básica de la seguridad.
1. Preinstalación de un servidor
La preinstalación inicia desde el momento mismo en el cual se selecciona el sistema operativo que queremos instalar, es importante realizar un reconocimiento de cuál es la última distribución o versión estable del sistema operativo, realizar lecturas acerca de parches de seguridad y del mantenimiento mismo del sistema, es decir, tiempo de soporte, etapas de desarrollo, liberación de versiones, licenciamiento, etc.
Luego de seleccionar el Sistema Operativo se debe definir la política de redundancia en software en nuestro equipo, comúnmente esta política se toma de acuerdo a la criticidad del sistema a montar y de la continuidad de la información y servicios que el sistema prestará.
Es recomendable para un sistema crítico pensar en redundancia, recordemos que la seguridad y la redundancia son directamente proporcionales al costo, no siempre obtenemos lo que queremos.
Una primera protección al sistema es adquirir un hardware redundante, es decir, dos fuentes de poder redundantes, dos tarjetas de red, dos procesadores (aunque en muchos casos los dos procesadores se piden es para ganar velocidad de procesamiento), realizar el montaje de protección eléctrica necesario y una UPS que garanticen que mi sistema brindará confiabilidad, seguridad, continuidad de la información y del servicio de presta.
1.1. Discos
En esta parte de la planeación trate al máximo de pensar en un sistema mínimo de discos con espejo 1 a 1 para todos los discos, de ser posible siempre con controladora espejo por hardware y no por software.
Así que antes que nada cconfigure el arreglo de discos del servidor según se indique en los manuales de la controladora o en el software administrador del sistema de almacenamiento en caso de utilizar una SAN.
1.2. Particiones
En el momento de planear nuestro sistema de archivos y establecer los tamaños de almacenamiento destinados a nuestro servidor debemos tener en cuenta que las siguientes particiones son básicas.
Partición Tamaño Descripción
/ 6 Gb Raíz del sistema
Swap 8 Gb Área de intercambio
/boot 200 Mb Imagen del kernel
/usr 5 Gb Archivos de programas
/tmp 6 Gb Archivos temporales
/var 6 Gb Librerías e intercambio
/var/log 11 Gb Logs del sistema
Dependiendo del las funcionalidades o metas de mi servidor se pueden tener las siguientes particiones
/datos 100 Gb Para los datos de la instalación Moodle
/basedatos 20 Gb Para las bases de datos
/respaldo 100 Gb Respaldos de espacios Moodle
/home No utilizado Para las cuentas de los usuarios
Además es recomendable dejar una zona del disco donde poder realizar backups, es decir una nueva partición /respaldo
2. Instalación del sistema operátivo en Debian
2.1. Instalación del sistema Operativo.
- Inicio de la instalación de Debian
- Seleccione Install en el menú inicial
- Seleccione el lenguaje, Español
- Seleccione el país - Colombia
- Elija la distribución del teclado - Ingles estados unidos
- El sistema realiza un análisis del hardware y del disco de instalación. En esta etapa es posible que el sistema arroje errores por hardware no reconocido, se recomienda tomar nota de los firmware faltantes y luego instalarlos.
Para el caso de nuestra instalación no se reconoce el hardware de red, el firmware necesario es el ql2400_fw.bin y el bnx_06_4.0.5.fw. La búsqueda de estos firmware en internet arroja como resultados dos paquetes .deb para ser instalados.
- Se recomienda no realizar la conexión a la red, saltar la conexión.
- Nombre de la maquina – mimaquina
- Particionamiento de los discos según se realice la planeación
- Luego debe aceptar los cambios y escribirlos en el disco
- El formatea las particiones que tenga que formatear y luego realiza la instalación del sistema base.
- Luego ingresamos las claves del root
- Creamos un nuevo usuario, por lo general diferente de admin o admon, le colocamos una clave segura, es decir, conformada mínimo por 8 caracteres, mayúsculas minúsculas y números.
- Luego seleccionamos e instalamos aplicaciones, instalamos un "sistema standar"
- Instalar el sistema desde cero, no instalar juegos, sistemas de mensajería, aplicaciones de quemar CD ni no es necesario, openoffice, pop, imap, postfix, samba, telnet, ftp, etc.
- Reiniciamos
martes, 7 de julio de 2009
Instalación del sistema de Video Conferencia DimDim versión Opensource 4.5 en un servidor Linux Lenny 5.0.1
Instalación del sistema de Video Conferencia DimDim versión Opensource 4.5 en un servidor Linux Lenny 5.0.1
Tomado de http://www.generation-linux.fr/
Présentation et installation de Dimdim sur Debian Lenny
Primero tenemos que instalar algunos programas y servicios.
1. OpenOffice
Debemos descargar la última versión del OpenOffice de la pagina oficial
http://download.openoffice.org/other.html
En esta pagina encontramos una serie de repositorios y de instaladores del programa, nos interesa la columna que etiquetada como "Linux DEB", en la fila "Spanish.
La versión al momento de la descarga era la 3.1.0
Descargamos desde la URL
http://openoffice.bouncer.osuosl.org/?product=OpenOffice.org&os=linuxinteldeb&lang=es&version=3.1.0
El archivo descargado es un .tar.gz
Descomprimimos el archivo
# tar xvfz OOo_3.1.0_LinuxIntel_install_es_deb.tar.gz
Nos movemos al directorio DEBS creado en la descomprensión, allí se encuentran los archivos .deb de OpenOffice
# cd DEBS
Instalamos los archivos .deb suministrados
# dpkg -i *.deb
2. Java
Para realizar la instalación de sun-java6-bin primero debemos verificar la existencia de algunas dependencias así:
# dpkg -l debconf sun-java6-jre unixodbc
Ahora, estas dependencias tienen muchas más dependencias, por lo tanto debemos verificar todas estas dependencias
# dpkg -l debconf java-common locales sun-java6-jre unixodbc debconf-i18n perl-base dpkg libc6 libc6.1 libgcc1 liblocale-gettext-perl libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl gcc-4.3-base perlapi-5.10.0
Comenzamos por instalar los paquetes debconf java-common locales
# apt-get install debconf java-common locales
Si todo va bien instalamos el Java luego de descargarlo de
http://packages.debian.org/lenny/sun-java6-bin
y también
http://packages.debian.org/lenny/sun-java6-jre
Instalamos los paquetes .deb
# dpkg -i sun-java6-bin_6-12-1_i386.deb
Modificamos o agregamos algunas variables de ambiente necesarias para su funcionamiento
Creamos la variable de ambiente
# echo "JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.12" >> /root/.bashrc
La exportamos
# echo "export JAVA_HOME" >> /root/.bashrc
Ahora, aunque se puede ejecutar el comando java, es recomendado agregar el comando al $PATH
echo "PATH=$JAVA_HOME/bin:$PATH" >> /root/.bashrc
echo "export PATH" >> /root/.bashrc
Para comprobar que todo funcione debe desconectarse y volver a acceder y ejecutar el comando
# env
y ver las lineas
PATH=/usr/lib/jvm/java-6-sun-1.6.0.12/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.12
3. Instalación de paquetes necesarios
Se deben instalar algunos paquetes que son necesarios
apt-get install gawk
apt-get install zip unzip
apt-get install python-uno python2.5-dev
apt-get install openoffice.org-java-common openoffice.org-headless
apt-get install bin-utils build-essential
apt-get install psmisc
4. Instalación de Python Modules
DimDim utiliza algunos modulos de Phyton, a continuación se detalla cada uno de ellos.
La pagina de descargas es http://cherrypy.org/wiki/CherryPyDownload
La forma de instalarlo es
# wget http://download.cherrypy.org/cherrypy/3.1.2/CherryPy-3.1.2.tar.gz
# tar xvfz CherryPy-3.1.2.tar.gz
# cd CherryPy-3.1.2
# chmod +x *
# python2.5 setup.py install
# python2.5
>>>import cherrypy
>>>
Ctrl+D
La pagina oficial es http://trac.saddi.com/flup
La pagina de descargas es http://www.saddi.com/software/flup/dist/
# wget http://www.saddi.com/software/flup/dist/flup-1.0.tar.gz
# tar xvfz flup-1.0.2.tar.gz
# cd flup-1.0
# chmod +x *
# python2.5 ez_setup.py -U setuptools
# python2.5 setup.py install
# python2.5
>>> import flup
>>>
Ctrl+D
La pagina de descargas es http://curl.haxx.se/download.html
La forma de instalarlo es
# wget http://curl.haxx.se/download/curl-7.19.5.tar.gz
# tar xvfz curl-7.19.5.tar.gz
# cd curl-7.19.5
# ./configure
# make
# make install
# ln -s /usr/local/lib/libcurl.so.4 /usr/lib/libcurl.so.4
Si el archivo /usr/lib/libcurl.so.4 ya se encuentra lo debe borrar
(rm /usr/lib/libcurl.so.4)
#easy_install-2.5 pycurl
# cd ..
# python2.5
>>>import pycurl
>>>
Ctrl+D
La forma de instalarlo es
# wget http://deron.meranda.us/python/demjson/dist/demjson-1.4.tar.gz
# tar xvfz demjson-1.4.tar.gz
# cd demjson-1.4
chmod +x *
python2.5 setup.py install
python2.5
>>>import demjson
>>>
Ctrl+D
Instalacion del DIMDIM
DimDim no posee un instalador para debian, en la pagina de descarga http://sourceforge.net/projects/dimdim/files/ existe un instalador para Centos
Descargue el archivo Dimdim_RPM_Package_CentOS_5.2_v4.5.zip
Descomprima el archivo
# unzip Dimdim_RPM_Package_CentOS_5.2_v4.5.zip
Ingrese al directorio
# cd Dimdim_RPM_Package_CentOS_5.2_v4.5
Instale Alien
apt-get install alien
Convertimos el paquete .rpm a un paquete .deb
alien Dimdim-4.5_SF_i386.rpm
Instalamos el paquete deb generado
dpkg -i dimdim_4.5-2_i386.deb
DimDim queda instalado en la ruta /usr/local/dimdim-4.5/, lo movemos
mv /usr/local/dimdim-4.5 /usr/local/dimdim
Nos movemos al directorio dimdim
cd /usr/local/dimdim/
Desomprimimos un directorio que trae la instalación
tar xvf CobrowsingManager.tar.gz
Modificaciones necesarias
Permisos de ejecución a algunos directorios y archivos
chmod +x /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/bin/*
chmod +x /usr/local/dimdim/red5/*
chmod +x /usr/local/dimdim/red5/conf/*
chmod +x /usr/local/dimdim/nginx/sbin/*
chmod +x /usr/local/dimdim/DTP3/Reflector/*
chmod +x /usr/local/dimdim/Mediaserver/mods/*
chmod +x /usr/local/dimdim/Mediaserver/www/pages/*
chmod +x /usr/bin/*
chmod +x /usr/lib/*
chmod +x /usr/local/share/*
chmod +x CobrowsingManager/cob/*
chmod +x StartDimdim.sh
chmod +x StopDimdim.sh
chmod +x Config-ipaddress.pl
Modificación de parametros
Editar el archivo
vi /usr/local/dimdim/Mediaserver/mods/toolkit/osconfig.py
Reemplaze la linea
return os.path.dirname('/opt/openoffice.org2.4/program/')
por
return os.path.dirname('/opt/openoffice.org3/program/')
Editar el archivo
vi /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/conf/wrapper.conf
Replace : wrapper.java.command=DIMDIM_JAVA_HOME/bin/java
Por: wrapper.java.command=/usr/lib/jvm/java-6-sun-1.6.0.12/bin/java
Editar el archivo
vi /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/conf/server.xml
Reemplaze : <connector port="DIMDIM_PORT_NUMBER" maxhttpheadersize="8192">Por: <connector address="127.0.0.1" port="40000" maxhttpheadersize="8192">
Editar el archivo
vi /usr/local/dimdim/StopDimdim.sh
Reemplaze : cd /usr/local/dimdim-4.5/ConferenceServer/apache-tomcat-5.5.17/bin/
Por: cd /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/bin/
Editar el archivo
vi /usr/local/dimdim/StartDimdim.sh
Reemplaze : cd /usr/local/dimdim-4.5/ConferenceServer/apache-tomcat-5.5.17/bin/
Por: cd /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/bin/
Editar el archivo
vi /usr/local/dimdim/Mediaserver/mods/interface.py
Reemplaze : #!/usr/bin/python2
Por: #!/usr/bin/python2.5
Editar el archivo
vi /usr/local/dimdim/CobrowsingManager/cob/startCobServer.sh
Reemplaze : /usr/local/bin/python2.5
Por : /usr/bin/python2.5
Ultimas Modificaciones
cp Mediaserver/mods/spawn-fcgi DTP3/Reflector/spawn-fcgi
Listemos los archivo en /usr/bin/
ls -l /usr/bin/so*
Usted debe tener una linea como esta
Verifique que si corresponda al openoffice3, si tiene una como estas
lrwxrwxrwx 1 root root 40 nov 27 13:04 /usr/bin/soffice -> /opt/openoffice.or.........
o
lrwxrwxrwx 1 root root 33 jul 3 12:15 /usr/bin/soffice -> ../lib/openoffice/program/soffice
Remueva el link actual y genere el nuevo link
rm /usr/bin/soffice
Genere el link
ln -s /opt/openoffice.org3/program/soffice.bin /usr/bin/soffice.bin
Previo a la instalacion se deben verificar las siguientes librerias
dpkg -l gs-gpl libart-2.0-2 libt1-5 libungif4g
La instalación de las librerias se realiza con
apt-get install gs-gpl libart-2.0-2 libt1-5 libungif4g
Swftools no esta disponible en debian Lenny, su instalación se debe instalar con el paquete suministrado en la versión SID
Descargar con
wget http://ftp.us.debian.org/debian/pool/main/s/swftools/swftools_0.8.1-2.1_i386.deb
instalar con
dpkg -i swftools_0.8.1-2.1_i386.deb
./Config-ipaddress.pl 123.X.X.X 80
Verificar que los puertos 80 y 1935 esten disponibles y abiertos en el firewall.
/usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/webapps/dimdim/WEB-INF/classes/resources/dimdim.properties
Cambios Adicionales en las pruebas
Se necesita tener instalado el paquete psmisc
apt-get install psmisc
Este paquete es necesario para la ejecucion del comando killall
Modificacion de propiedades en /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/webapps/dimdim/WEB-INF/classes/resources/dimdim.properties
dimdim.trackbackURL=http://media.udea.edu.co/dimdim/
dimdim.defaultCollabURL=http://aprendeenlinea.udea.edu.co/lms/moodle
Problemas presentados
La primera vez que se instalo dimdim descargue la versión 1.0.2 de flup, esto ocasionaba que las URL del llamado de documentos se repitieran, me di cuenta de esto al mirar el archivo log
/usr/local/dimdim/Mediaserver/www/logs/cherrypy_access.log
y encontre lineas de este estilo
/pmgr/generateDocID2/pmgr/generateDocID2
Deberian ser de este tipo
/pmgr/generateDocID2
Con este problemita patine un rato largo.
Pruebe...
Tomado de http://www.generation-linux.fr/
Présentation et installation de Dimdim sur Debian Lenny
Primero tenemos que instalar algunos programas y servicios.
1. OpenOffice
Debemos descargar la última versión del OpenOffice de la pagina oficial
http://download.openoffice.org/other.html
En esta pagina encontramos una serie de repositorios y de instaladores del programa, nos interesa la columna que etiquetada como "Linux DEB", en la fila "Spanish.
La versión al momento de la descarga era la 3.1.0
Descargamos desde la URL
http://openoffice.bouncer.osuosl.org/?product=OpenOffice.org&os=linuxinteldeb&lang=es&version=3.1.0
El archivo descargado es un .tar.gz
Descomprimimos el archivo
# tar xvfz OOo_3.1.0_LinuxIntel_install_es_deb.tar.gz
Nos movemos al directorio DEBS creado en la descomprensión, allí se encuentran los archivos .deb de OpenOffice
# cd DEBS
Instalamos los archivos .deb suministrados
# dpkg -i *.deb
2. Java
Para realizar la instalación de sun-java6-bin primero debemos verificar la existencia de algunas dependencias así:
# dpkg -l debconf sun-java6-jre unixodbc
Ahora, estas dependencias tienen muchas más dependencias, por lo tanto debemos verificar todas estas dependencias
# dpkg -l debconf java-common locales sun-java6-jre unixodbc debconf-i18n perl-base dpkg libc6 libc6.1 libgcc1 liblocale-gettext-perl libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl gcc-4.3-base perlapi-5.10.0
Comenzamos por instalar los paquetes debconf java-common locales
# apt-get install debconf java-common locales
Si todo va bien instalamos el Java luego de descargarlo de
http://packages.debian.org/lenny/sun-java6-bin
y también
http://packages.debian.org/lenny/sun-java6-jre
Instalamos los paquetes .deb
# dpkg -i sun-java6-bin_6-12-1_i386.deb
Modificamos o agregamos algunas variables de ambiente necesarias para su funcionamiento
Creamos la variable de ambiente
# echo "JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.12" >> /root/.bashrc
La exportamos
# echo "export JAVA_HOME" >> /root/.bashrc
Ahora, aunque se puede ejecutar el comando java, es recomendado agregar el comando al $PATH
echo "PATH=$JAVA_HOME/bin:$PATH" >> /root/.bashrc
echo "export PATH" >> /root/.bashrc
Para comprobar que todo funcione debe desconectarse y volver a acceder y ejecutar el comando
# env
y ver las lineas
PATH=/usr/lib/jvm/java-6-sun-1.6.0.12/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.12
3. Instalación de paquetes necesarios
Se deben instalar algunos paquetes que son necesarios
apt-get install gawk
apt-get install zip unzip
apt-get install python-uno python2.5-dev
apt-get install openoffice.org-java-common openoffice.org-headless
apt-get install bin-utils build-essential
apt-get install psmisc
4. Instalación de Python Modules
DimDim utiliza algunos modulos de Phyton, a continuación se detalla cada uno de ellos.
- CherryPy
La pagina de descargas es http://cherrypy.org/wiki/CherryPyDownload
La forma de instalarlo es
# wget http://download.cherrypy.org/cherrypy/3.1.2/CherryPy-3.1.2.tar.gz
# tar xvfz CherryPy-3.1.2.tar.gz
# cd CherryPy-3.1.2
# chmod +x *
# python2.5 setup.py install
# python2.5
>>>import cherrypy
>>>
Ctrl+D
- Flup
La pagina oficial es http://trac.saddi.com/flup
La pagina de descargas es http://www.saddi.com/software/flup/dist/
Con esta paquete se debe tener especial cuidado, pues se instalo la versión 1.0.2 y no funciono dimdim
La forma de instalarlo es# wget http://www.saddi.com/software/flup/dist/flup-1.0.tar.gz
# tar xvfz flup-1.0.2.tar.gz
# cd flup-1.0
# chmod +x *
# python2.5 ez_setup.py -U setuptools
# python2.5 setup.py install
# python2.5
>>> import flup
>>>
Ctrl+D
- Pycurl
La pagina de descargas es http://curl.haxx.se/download.html
La forma de instalarlo es
# wget http://curl.haxx.se/download/curl-7.19.5.tar.gz
# tar xvfz curl-7.19.5.tar.gz
# cd curl-7.19.5
# ./configure
# make
# make install
# ln -s /usr/local/lib/libcurl.so.4 /usr/lib/libcurl.so.4
Si el archivo /usr/lib/libcurl.so.4 ya se encuentra lo debe borrar
(rm /usr/lib/libcurl.so.4)
#easy_install-2.5 pycurl
# cd ..
# python2.5
>>>import pycurl
>>>
Ctrl+D
- Demjson
La forma de instalarlo es
# wget http://deron.meranda.us/python/demjson/dist/demjson-1.4.tar.gz
# tar xvfz demjson-1.4.tar.gz
# cd demjson-1.4
chmod +x *
python2.5 setup.py install
python2.5
>>>import demjson
>>>
Ctrl+D
Instalacion del DIMDIM
DimDim no posee un instalador para debian, en la pagina de descarga http://sourceforge.net/projects/dimdim/files/ existe un instalador para Centos
Descargue el archivo Dimdim_RPM_Package_CentOS_5.2_v4.5.zip
Descomprima el archivo
# unzip Dimdim_RPM_Package_CentOS_5.2_v4.5.zip
Ingrese al directorio
# cd Dimdim_RPM_Package_CentOS_5.2_v4.5
Instale Alien
apt-get install alien
Convertimos el paquete .rpm a un paquete .deb
alien Dimdim-4.5_SF_i386.rpm
Instalamos el paquete deb generado
dpkg -i dimdim_4.5-2_i386.deb
DimDim queda instalado en la ruta /usr/local/dimdim-4.5/, lo movemos
mv /usr/local/dimdim-4.5 /usr/local/dimdim
Nos movemos al directorio dimdim
cd /usr/local/dimdim/
Desomprimimos un directorio que trae la instalación
tar xvf CobrowsingManager.tar.gz
Modificaciones necesarias
Permisos de ejecución a algunos directorios y archivos
chmod +x /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/bin/*
chmod +x /usr/local/dimdim/red5/*
chmod +x /usr/local/dimdim/red5/conf/*
chmod +x /usr/local/dimdim/nginx/sbin/*
chmod +x /usr/local/dimdim/DTP3/Reflector/*
chmod +x /usr/local/dimdim/Mediaserver/mods/*
chmod +x /usr/local/dimdim/Mediaserver/www/pages/*
chmod +x /usr/bin/*
chmod +x /usr/lib/*
chmod +x /usr/local/share/*
chmod +x CobrowsingManager/cob/*
chmod +x StartDimdim.sh
chmod +x StopDimdim.sh
chmod +x Config-ipaddress.pl
Modificación de parametros
Editar el archivo
vi /usr/local/dimdim/Mediaserver/mods/toolkit/osconfig.py
Reemplaze la linea
return os.path.dirname('/opt/openoffice.org2.4/program/')
por
return os.path.dirname('/opt/openoffice.org3/program/')
Editar el archivo
vi /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/conf/wrapper.conf
Replace : wrapper.java.command=DIMDIM_JAVA_HOME/bin/java
Por: wrapper.java.command=/usr/lib/jvm/java-6-sun-1.6.0.12/bin/java
Editar el archivo
vi /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/conf/server.xml
Reemplaze : <connector port="DIMDIM_PORT_NUMBER" maxhttpheadersize="8192">Por: <connector address="127.0.0.1" port="40000" maxhttpheadersize="8192">
Editar el archivo
vi /usr/local/dimdim/StopDimdim.sh
Reemplaze : cd /usr/local/dimdim-4.5/ConferenceServer/apache-tomcat-5.5.17/bin/
Por: cd /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/bin/
Editar el archivo
vi /usr/local/dimdim/StartDimdim.sh
Reemplaze : cd /usr/local/dimdim-4.5/ConferenceServer/apache-tomcat-5.5.17/bin/
Por: cd /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/bin/
Editar el archivo
vi /usr/local/dimdim/Mediaserver/mods/interface.py
Reemplaze : #!/usr/bin/python2
Por: #!/usr/bin/python2.5
Editar el archivo
vi /usr/local/dimdim/CobrowsingManager/cob/startCobServer.sh
Reemplaze : /usr/local/bin/python2.5
Por : /usr/bin/python2.5
Ultimas Modificaciones
- Realización de links
cp Mediaserver/mods/spawn-fcgi DTP3/Reflector/spawn-fcgi
- Verificacion de los archivos binarios y librerias de OpenOffice
Listemos los archivo en /usr/bin/
ls -l /usr/bin/so*
Usted debe tener una linea como esta
Verifique que si corresponda al openoffice3, si tiene una como estas
lrwxrwxrwx 1 root root 40 nov 27 13:04 /usr/bin/soffice -> /opt/openoffice.or.........
o
lrwxrwxrwx 1 root root 33 jul 3 12:15 /usr/bin/soffice -> ../lib/openoffice/program/soffice
Remueva el link actual y genere el nuevo link
rm /usr/bin/soffice
Genere el link
ln -s /opt/openoffice.org3/program/soffice.bin /usr/bin/soffice.bin
- Comando para compartir archivos PDF y convertir a swf - swftools.
Previo a la instalacion se deben verificar las siguientes librerias
dpkg -l gs-gpl libart-2.0-2 libt1-5 libungif4g
La instalación de las librerias se realiza con
apt-get install gs-gpl libart-2.0-2 libt1-5 libungif4g
Swftools no esta disponible en debian Lenny, su instalación se debe instalar con el paquete suministrado en la versión SID
Descargar con
wget http://ftp.us.debian.org/debian/pool/main/s/swftools/swftools_0.8.1-2.1_i386.deb
instalar con
dpkg -i swftools_0.8.1-2.1_i386.deb
- Configuracion de IP
./Config-ipaddress.pl 123.X.X.X 80
Verificar que los puertos 80 y 1935 esten disponibles y abiertos en el firewall.
- Finalización
/usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/webapps/dimdim/WEB-INF/classes/resources/dimdim.properties
Cambios Adicionales en las pruebas
Se necesita tener instalado el paquete psmisc
apt-get install psmisc
Este paquete es necesario para la ejecucion del comando killall
Modificacion de propiedades en /usr/local/dimdim/ConferenceServer/apache-tomcat-5.5.17/webapps/dimdim/WEB-INF/classes/resources/dimdim.properties
dimdim.trackbackURL=http://media.udea.edu.co/dimdim/
dimdim.defaultCollabURL=http://aprendeenlinea.udea.edu.co/lms/moodle
Problemas presentados
La primera vez que se instalo dimdim descargue la versión 1.0.2 de flup, esto ocasionaba que las URL del llamado de documentos se repitieran, me di cuenta de esto al mirar el archivo log
/usr/local/dimdim/Mediaserver/www/logs/cherrypy_access.log
y encontre lineas de este estilo
/pmgr/generateDocID2/pmgr/generateDocID2
Deberian ser de este tipo
/pmgr/generateDocID2
Con este problemita patine un rato largo.
Pruebe...
Etiquetas:
dimdim linux Video Conferencia Lenny
jueves, 16 de octubre de 2008
Permitir conexiones en Mysql
Esta es la experiencia que me sucedio con MySql.
Resulta que realize una migración de un servidor linux instalado con RedHat a otro servidor instalado con Debian Etch and a half.
La migración se realizo aparentemente sin ningún tipo de problema, el php, apache2 y Mysql funcionaba sin problemas.
Luego de un rato nos dimos cuenta que algunas aplicaciones web que usaban php para conectarse a las bases de datos LOCALES no funcionaban.
indagando un poco más sobre el error nos encontramos con el siguiente error
MySQL server at 'reading initial communication packet', system error: 111
Cambiamos el parametro del bind_adress en el archivo de configuración my.cnf por 127.0.0.1 y nada.
La solución fue colocar en el archivo hosts.allow la linea
mysqld: 127.0.0.1
Resulta que realize una migración de un servidor linux instalado con RedHat a otro servidor instalado con Debian Etch and a half.
La migración se realizo aparentemente sin ningún tipo de problema, el php, apache2 y Mysql funcionaba sin problemas.
Luego de un rato nos dimos cuenta que algunas aplicaciones web que usaban php para conectarse a las bases de datos LOCALES no funcionaban.
indagando un poco más sobre el error nos encontramos con el siguiente error
MySQL server at 'reading initial communication packet', system error: 111
Cambiamos el parametro del bind_adress en el archivo de configuración my.cnf por 127.0.0.1 y nada.
La solución fue colocar en el archivo hosts.allow la linea
mysqld: 127.0.0.1
lunes, 6 de octubre de 2008
Optimizar Mysql
Algunos parametros para optimizar MySql son.
Activar la cache para las consultas
1. query_cache_type = 1 (0 (deshabilitado ), 1 (habilitado ) y 2 (bajo solicitud).
2. query_cache_size = 128M Tamaño de la cache
3. query_cache_limit = 1M
La cantidad de tablas abiertas, si tengo un sistema que utilize muchas tablas, el defecto es 64.
Si lo aumento debo tener presente los parametros del sistema operativo
un buen valor es
1. table_cache = 256
max_allowed_packet = 64M
otra es basarse en el archivo my-huge.cnf
Debemos mirar que tanta memoria le vamos a dejar al buffer de claves, un buen valor para un servidor con 3Gb en RAM sería:
1. key_buffer_size=256M
Si quieres tener un informe de tu rendimiento, puedes ejecutar http://day32.com/MySQL/tuning-primer.sh
Activar la cache para las consultas
1. query_cache_type = 1 (0 (deshabilitado ), 1 (habilitado ) y 2 (bajo solicitud).
2. query_cache_size = 128M Tamaño de la cache
3. query_cache_limit = 1M
La cantidad de tablas abiertas, si tengo un sistema que utilize muchas tablas, el defecto es 64.
Si lo aumento debo tener presente los parametros del sistema operativo
un buen valor es
1. table_cache = 256
max_allowed_packet = 64M
otra es basarse en el archivo my-huge.cnf
Debemos mirar que tanta memoria le vamos a dejar al buffer de claves, un buen valor para un servidor con 3Gb en RAM sería:
1. key_buffer_size=256M
Si quieres tener un informe de tu rendimiento, puedes ejecutar http://day32.com/MySQL/tuning-primer.sh
jueves, 2 de octubre de 2008
Afinar configuración del PHP
El caso se presenta cuando tengo instalado el php
1. max_execution_time = 30 // tiempo de ejecución en cpu de un script
2. max_input_time = 60 // Cuanto tiempo esperar datos de entrada en un script
3. memory_limit 32M // Cuantos bytes de memoria puede consumir un script
4. output_buffering 4096 // Cuantos bytes se guardan en el buffer antes de enviarlos al cliente
5. error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
// Enviar al log lo menos posible
6. display_errors = Off // Prevenir ataques
1. max_execution_time = 30 // tiempo de ejecución en cpu de un script
2. max_input_time = 60 // Cuanto tiempo esperar datos de entrada en un script
3. memory_limit 32M // Cuantos bytes de memoria puede consumir un script
4. output_buffering 4096 // Cuantos bytes se guardan en el buffer antes de enviarlos al cliente
5. error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
// Enviar al log lo menos posible
6. display_errors = Off // Prevenir ataques
Afinar servidor web apache
La situación se presenta cuando tienes instalado un servidor web apache y el servidor Mysql.
Algunos parametros de configuración en los dos servidores pueden afectar el rendimiento.
APACHE:
Para cambiar los parametros es recomendable conocer que tipo de procesamiento utiliza apache, y otras cositas una de ellas es si utilizamos prefork o worker, para saber esto utilizamos el comando
httpd -l
La salida de este comando puede ser
Compiled in modules:
core.c
prefork.c
http_core.c
mod_so.c
En este caso se utiliza prefork
Ahora si, cambios a realizar
Este grupo de cambios se realizaran en el archivo de configuración del apache
* Afinar la cantidad de procesos con los que comienza el servidor apache.
En el archivo de configuración se pueden encontrar elementos definidos para el tipo de procesamiento, se puede reconocer a que corresponde por que vemos una linea como
******
Los parametros que esten en lugar de ***** estan definidos para prefork, cuales cambiamos:
1. StartServers, esta parametro es la cantidad de procesos para atender peticiones con los que comienza el servidor apache un buen dato seria 50, en mi caso lo encontre en 8.
StartServers 50
2. MinSpareServers y MaxSpareServers, cuando llega una petición y no existe un proceso para atenderla el servidor crea un nuevo proceso, esta creación es demorada, por lo que es recomendable tener una cantidad de procesos en reserva, pero por el contrario si no se estan utilizando procesos los procesos de reserva se deberian reducir.
MinSpareServers 25
MaxSpareServers 40
3. MaxClients, es el número maximo de procesos que se pueden atender por día.
MaxClients 256
4. MaxRequestsPerChild, un proceso atiende una cantidad de peticiones y luego es destruido para evitar problemas de memoria
MaxRequestsPerChild 4000
5. Cada vez que se realiza una petición el servidor apache traduce la Ip de la dirección de la petición en un nombre valido realizando llamados al DNS, este proceso puede consumir tiempo, para lo cual es importante desactivarlo.
HostnameLookups off
6. Afinar la persistencia, navegar significa realizar una petición + conectar + pedir una pagina web + recibir los datos de la pagina web + desconectar + cliente contento. Estos pasos pueden ser muy repetitivos si realizo muchas peticiones de paginas sobre un servidor, así que es importante no conectar y desconectar tantas veces y aprovechar una conexión.
KeepAlive 8
KeepAliveTimeout 10
Algunos parametros de configuración en los dos servidores pueden afectar el rendimiento.
APACHE:
Para cambiar los parametros es recomendable conocer que tipo de procesamiento utiliza apache, y otras cositas una de ellas es si utilizamos prefork o worker, para saber esto utilizamos el comando
httpd -l
La salida de este comando puede ser
Compiled in modules:
core.c
prefork.c
http_core.c
mod_so.c
En este caso se utiliza prefork
Ahora si, cambios a realizar
Este grupo de cambios se realizaran en el archivo de configuración del apache
* Afinar la cantidad de procesos con los que comienza el servidor apache.
En el archivo de configuración se pueden encontrar elementos definidos para el tipo de procesamiento, se puede reconocer a que corresponde por que vemos una linea como
******
Los parametros que esten en lugar de ***** estan definidos para prefork, cuales cambiamos:
1. StartServers, esta parametro es la cantidad de procesos para atender peticiones con los que comienza el servidor apache un buen dato seria 50, en mi caso lo encontre en 8.
StartServers 50
2. MinSpareServers y MaxSpareServers, cuando llega una petición y no existe un proceso para atenderla el servidor crea un nuevo proceso, esta creación es demorada, por lo que es recomendable tener una cantidad de procesos en reserva, pero por el contrario si no se estan utilizando procesos los procesos de reserva se deberian reducir.
MinSpareServers 25
MaxSpareServers 40
3. MaxClients, es el número maximo de procesos que se pueden atender por día.
MaxClients 256
4. MaxRequestsPerChild, un proceso atiende una cantidad de peticiones y luego es destruido para evitar problemas de memoria
MaxRequestsPerChild 4000
5. Cada vez que se realiza una petición el servidor apache traduce la Ip de la dirección de la petición en un nombre valido realizando llamados al DNS, este proceso puede consumir tiempo, para lo cual es importante desactivarlo.
HostnameLookups off
6. Afinar la persistencia, navegar significa realizar una petición + conectar + pedir una pagina web + recibir los datos de la pagina web + desconectar + cliente contento. Estos pasos pueden ser muy repetitivos si realizo muchas peticiones de paginas sobre un servidor, así que es importante no conectar y desconectar tantas veces y aprovechar una conexión.
KeepAlive 8
KeepAliveTimeout 10
Suscribirse a:
Entradas (Atom)