Instalación en local Solr sobre Windows 7

Vamos a definir una instalación mínima de solr sobre windows 7. Dada la cantidad de información que hay en Internet, nos ha parecido importante hacer un resumen concreto de cómo montar una pequeña maqueta solr sobre windows 7. A partir de aqui, os recomendamos continuar vuestro periplo con solr a través de los siguientes tutoriales

Instalación de TomCat:

Descarga: http://tomcat.apache.org/download-70.cgi

PS > cd ‘.\Program Files (x86)’\apache-tomcat-7.0.42-windows-x64\apache-tomcat-7.0.42\bin\service.bat install

Instalación de Solr en local:

  1. Descarga la última versión https://builds.apache.org/job/Solr-Artifacts-4.x/
  2. Descompresión del archivo. Al ser un ejecutable JAVA no requiere instalación, pero sí requiere una instalación previa de la máquina virtual Java. (C:\Program Files (x86)\solr-4.5-2013-07-23_11-36-16\ )
  3. Para lanzar el motor de solr desde powershell, hay que cambiar la variable de entorno para la sesión:

    PS > $env:path += “;C:\Program Files (x86)\Java\jre6\bin\”

    PS > java.exe -jar .\start.jar

Esto es una instalación de pruebas, por ello, no se ha dado de alta como servicio de windows. Lo normal sería que el motor solr se inicie con el propio windows.

A partir de aquí, podemos añadir contenidos a Solr para indexación. El ejemplo que nos dan en solr sería:

  PS C:\Program Files (x86)\solr-4.5-2013-07-23_11-36-16\example\exampledocs> java -jar post.jar *.xml

Y para probar que hay contenidos:

http://localhost:8983/solr/collection1/browse?q=monitor

 

F5. Monitorización de tmm mem con snmp

Para poder extraer el valor de la memoria que usa un f5 bigip tmm en un momento dado desde nagios, se ha desarrollado a medida un script que usa los valores de la MIB propia de f5.

Para hacer búsquedas de valores en la MIB de f5, os recomiendo mibbrowser  y cargar las MIBS propias de los f5.

Los OID que yo he utilizado para este script son:

  • .1.3.6.1.4.1.3375.2.1.1.2.21.37.0  sysGlobalTmmStatMemoryUsedKb.0
  • .1.3.6.1.4.1.3375.2.1.1.2.21.38.0 sysGlobalTmmStatMemoryTotalKb.0

Finalmente, el script / plugin / check para nagios es:

check_bigip_snmp_mem.sh

Para funcionar, requiere que tengamos cargados las MIBS de f5 en el directorio de snmp:

/usr/share/snmp/mibs/F5-BIGIP-APM-MIB.txt
/usr/share/snmp/mibs/F5-BIGIP-LOCAL-MIB.txt
/usr/share/snmp/mibs/F5-EM-MIB.txt
/usr/share/snmp/mibs/F5-BIGIP-COMMON-MIB.txt
/usr/share/snmp/mibs/F5-BIGIP-SYSTEM-MIB.txt
/usr/share/snmp/mibs/F5-BIGIP-GLOBAL-MIB.txt
/usr/share/snmp/mibs/F5-BIGIP-WAM-MIB.txt

Nagios Centreon. Instalación desde repositorio CES-Standard Repo

Primero hay que añadir el repositorio CES-Standard Repo a nuestra lista de repositorios:

wget http://yum.centreon.com/standard/2.2/ces-standard.repo -O /etc/yum.repos.d/ces-standard.repo

yum clean all

yum update

A partir de este momento, ya tendremos los paquetes de Centreon listos para instalar con yum. Más información.

Nota: Yo estoy probando en CentOS 6.4 y parece que va mejor la instalación haciéndola desde los propios paquetes.

F5 Icontrol Powershell. Función para fijar una partición activa en los cmd-lets

A los scripts de devcentral, en el caso de estar usando particiones, será necesario en el inicio, la configuración de la partición activa como una carpeta.

#
# Set active partition
#
function  Set-Active-Partition (){

(Get-F5.iControl).SystemSession.set_active_folder($partition);
$folder = (Get-F5.iControl).SystemSession.get_active_folder();

}

Al igual que para tmsh, las particiones se ven como carpetas.

F5. Uso de api de Icontrol en poweshell

Es necesario descargar de la página de devcentral el componente iControlSnapInSetup.msi.

Tras el instalador, se abre power shell y se cambia la política de ejecución de Powershell como mínimo a RemoteSigned.

PS C:\Program Files> Set-ExecutionPolicy RemoteSigned

Se registra el componente en la consola de powershell, para poder usar sus llamadas. Para windows de 32 bits:

PS C:\Program Files> cd “C:\Program Files (x86)\F5 Networks\iControlSnapIn

PS C:\Program Files (x86)\F5 Networks\iControlSnapIn> .\setupSnapIn.ps1

En windows de 64 bits, hace falta copiar el archivo de 64 bits a mano. Por alguna razón el instalador por defecto no funciona. (Más información)

Si todo ha ido correcto, aparecerá en el listado de Componentes de powershell:

PS C:\Program Files (x86)\F5 Networks\iControlSnapIn> Get-PSSnapin

PS C:\Program Files (x86)\F5 Networks\iControlSnapIn> Get-PSSnapin -registered

Para borrar un snapin:

PS C:\Program Files (x86)\F5 Networks\iControlSnapIn> Remove-PSSnapin -name iControlSnapIn

Quitar el tiempo de espera en grub2 en el arranque

Para editar el tiempo de espera en grub editamos como root el archivo /

sudo emacs /etc/default/grub

En el que habrá que eliminar el timeout

 

# If you change this file, run ‘update-grub’ afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n ‘Simple configuration’

GRUB_DEFAULT=0
GRUB_TIMEOUT=0

Posteriormente, para guardar los cambios, se ejecuta

sudo update-grub

Configurar servidor pxe para instalación de windows en red

El objetivo, es montar un servidor pxe, para poder instalar un windows con arranque con red.

La máquina donde pondremos pxe tiene las siguientes características:

  • Ubuntu 11.10
  • kernel linux  3.0.0-14-generic

DNSMasq:

apt-get install dnsmasq-utils dnsmasq
mkdir -p /var/ftp/tftpboot
mkdir /var/ftp/tftpboot/pxelinux.cfg

Configuramos el fichero  /etc/dnsmasq.conf:

no-resolv
local=/localnet/
dhcp-range=192.168.0.50,192.168.0.150,255.255.255.0,12h
dhcp-option=3,10.1.10.1
dhcp-boot=pxelinux.0
enable-tftp
tftp-root=/var/ftp/tftpboot

Syslinux

Instalación:

apt-get install syslinux

Se copian a mano los ficheros pxelinux.0 y  la carpeta memdisk en los directorios preparados para ello:

find / -name  pxelinux.0
cp /usr/lib/syslinux/pxelinux.0 /var/ftp/tftpboot/
cp -rf /usr/lib/syslinux/memdisk  /var/ftp/tftpboot/

Imagen de windows.

Cogemos la imagen de windows,  y la cargamos en /var/ftp/tftpboot/

PXELinux

Creamos el fichero de configuración para pxe, que será el encargado del arranque por red.

touch /var/ftp/tftpboot/pxelinux.cfg/default

Esta configuración es la que me ha funcionado. Ojo, hay que cambiar el nombre de la imagen de arranque.

nano /var/ftp/tftpboot/pxelinux.cfg/default

DEFAULT pe
PROMPT 60

LABEL pe
LINUX /memdisk
APPEND iso
INITRD /winpe_x86.iso

Para esta instalación, nos hemos basado en las siguientes guías:

  • http://www.savelono.com/linux/how-to-install-windows-7-over-a-network-using-linux-pxe-dnsmasq-and-samba.html
  • http://www.linuxquestions.org/questions/linuxquestions-org-member-success-stories-23/building-a-windows-livecd-with-barts-pe-for-linux-users-243478/

Cuando usar ls y cuando usar find

En general, a la hora de hacer scripts con listados de archivos y directorios, el comando “ls” es más que suficiente.

Sin embargo, a la hora de querer hacer un listado con la ruta completa, haciendo ls -R,  el resultado es parecido a este:

# ls -R

dir:
arch1 arch2 arch 3 arch4

Este tipo de salida, es difícil de procesar, después en los scripts.  Lo deseable es contar  con salidas:

dir/arch1
dir/arch2
dir/arch3
dir/arch4

Para conseguir esto, lo útil es usar find con un modificador de profundidad, para evitar que se listen todos los niveles de la jerarquía:

find /dir/* -maxdepth 0′

Os dejo un enlace al manual, para ver otros modificadores: http://unixhelp.ed.ac.uk/CGI/man-cgi?find