Diferencia entre revisiones de «Oracle»

De Ardemans Wiki
Saltar a: navegación, buscar
(/s)
Línea 145: Línea 145:
  
  
Después de todo esto he pasado la comprobación y todo está correcto, salvo la red, que parece ser que hay un problema de comunicación en el interface eth1, con la red 10.90.63.x. Esto ya lo miro la proxima semana.
+
'''''Después de todo esto he pasado la comprobación y todo está correcto, salvo la red, que parece ser que hay un problema de comunicación en el interface eth1, con la red 10.90.63.x. Esto ya lo miro la proxima semana.'''''
 +
 
 +
==Software adicional==
 +
 
 +
Hay que asegurarse de que los siguientes paquetes de red hat están instalados en las máquinas
 +
 
 +
binutils-2.15.92.0.2-10.EL4
 +
compat-db-4.1.25-9
 +
'''control-center-2.8.0-12'''
 +
gcc-3.4.3-9.EL4
 +
gcc-c++-3.4.3-9.EL4
 +
glibc-2.3.4-2
 +
glibc-common-2.3.4-2
 +
'''gnome-libs-1.4.1.2.90-44.1'''
 +
libstdc++-3.4.3-9.EL4
 +
libstdc++-devel-3.4.3-9.EL4
 +
make-3.80-5
 +
 
 +
y además el openmotif21-2.1.30-11.RHEL4.6
 +
 
 +
Los que he marcado con negrita no me vienen instalados por defecto en la distro que he puesto yo, rhel 4. Pero tampoco los he instalado. Control center tiene muchas dependencias de servidor de X y las librerías de gnome no se muy bien para que las quiere. Seguro que lo veré más adelante.

Revisión de 11:32 1 dic 2008

Me dispongo a instalar un rac de oracle en máquians virtuales

Tengo las siguientes direcciones interesantes donde consultar para hacer dicha instalación:

  • Para instalar un oracle sobre una Ubuntu:

http://ubuntulife.wordpress.com/2007/02/11/instalar-oracle-10g-release-2-en-ubuntu-edgy/

  • Y web donde explican detalladamente como configurar las máquinas virtuales para un clusterware:

http://www.dbasupport.com/oracle/ora10g/RACingAhead0901.shtml

  • También me manda Marcos, un compañero, el siguiente enlace a otro blog que explica como instalar un cluster ware y además tambien pone algunas notas de referencia http://oracleracnotes.wordpress.com

Preparando las máquinas virtuales

Tengo dos máquinas virtuales ya creadas en nuestro entorno de vmware esx, a las que he instalado dos redhat enterprise linux 4, con lo mínimo. Cada una de las dos máquinas tiene dos interfaces de red instalados:

  • orapru01 - 10.90.1.45 - 10.90.63.45
  • orapru02 - 10.90.1.46 - 10.90.63.45

Lo primero que he abordado es la configuración de una unidad iscsi común para las dos máquinas. Para ello he instalado el paquete iscsi-initiator-utils-4.0.3.0-7.

He de señalar que para hacer la instalacion de paquetes adicionales los estoy cogiendo de un repositorio de centos 4, exactamente este: http://sunsite.rediris.es/mirror/CentOS/4/os/i386/CentOS/RPMS/

Creacion de usuarios y grupos necesarios

Creamos varios grupos en cada uno de los nodos

# groupadd dba
# groupadd oper
# groupadd oinstall

y creamos el usuario oracle

# useradd -g oinstall -G dba,oper -d /home/oracle -s /bin/bash -c "Usuario Oracle" oracle

y le ponemos un password, que en mi caso para este oracle de pruebas será "oracle"

# passwd oracle

Tenemos que asegurarnos de que en todos los nodos tanto los grupos como el usurio oracle tienen el mismo ID.

Configuración de ssh

Después pasamos a configurar el SSH, ya que con este usuario el proceso de instalación lanzará algunos comandos con ssh a los otros nodos y tambien usará el scp. Para ello nos logamos con el usuario oracle y creamos el directorio ~/.ssh, dandole permisos para que solo pueda acceder el usuario oracle

# su - oracle
# mkdir ~/.ssh
# chmod 700 ~/.ssh

Después creamos una identificación para que cuando tenga que conectarse a los otros nodos no necesite password

# /usr/bin/ssh-keygen -t rsa

le diremos el directorio por defecto donde irá la llave y le pnodremos una contraseña difernte a la clave del usuario oracle, en mi caso he puesto "oraclepassphrase". Esto lo hago en los dos nodos.

# /usr/bin/ssh-keygen -t dsa

le pondremos una contraseña diferente a la del usuario Oracle y tambien lo haremos en los dos nodos

Despues tendremos que añadir estas claves que hemos creado en el fichero "authorized_keys" que debe estar en el directorio .ssh (si no está lo creamos). Lo podemos hacer de la siguiente forma tal y como aconseja el manual de pre-instalación de rac de oracle:

# ssh orapru01 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
# ssh orapru01 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys
# ssh orapru02 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
# ssh orapru02 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys

Esto mismo lo he hecho en los dos nodos, y despues al fichero authorized_keys le hemos dado permisos

# chmod 600 /home/oracle/.ssh/authorized_keys

Una vez hecho esto, cada vez que queramos hacer ssh desde el usuario oracle al otro de los nodos sin que nos pida el passphrase habrá que ejecutar lo siguiente:

# ssh-agent $SHELL
# ssh-add 

y nos pedirá el passphrase, pero solo durante esta vez y hasta que nos salgamos de esta sesión.


Instalación del paquete CVUQDISK

Ahora tenemos que instalar el paquete cvuqdisk-1.0.1-1.rpm que viene con la propia instalación de clusterware y que podemos encontrar en el directorio rpm, en mi caso yo lo tengo todo en /opt/src/oracle/clusterware/ y ahí dentro está el directorio rpm. Para ellos antes de hacer la instalacion tendremos que exportar la variable CVUQDISK_GRP

# export CVUQDISK_GRP=oinstall

y despues ejecutar la instalación del rpm

# rpm -iv cvuqdisk-1.0.1-1.rpm

Esto sirve para que el cvu sepa encontrar discos compartidos

Configuración de red

Al parecer cada nodo ha de tener dos interfaces de red, uno para la red privada y otro para la red pública, además, estos interfaces han de corresponder en los dos nodos, esto es, que si en orapru01 el interface eth0 es la red pública así debe ser tambien en orapru02

También habrá que crear una ip virtual para cada nodo.

En mi caso, tengo los dos interfaces de red creados en los dos nodos y se corresponden:

  • orapru01
   orapru01.prisacom.int 10.90.1.45
   orapru01priv.prisacom.int 10.90.63.45
   orapru01vip.prisacom.int 10.90.1.145
  • orapru02
   orapru02.prisacom.int 10.90.1.46
   orapru02priv.prisacom.int 10.90.63.46
   orapru02vip.prisacom.int 10.90.1.146

Preparando parametros del kernel

Echando un vistazo a los parametros de kernel necesarios para oracle hago las siguientes modificaciones:

Añado al sysctl.conf

kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.core.rmem_default = 1048576
net.core.wmem_default = 262144

y ejecuto el siguiente comando para aplicar los cambios

# sysctl -p

Tambien editamos el fichero /etc/security/limits.conf para añadir lo siguiente

oracle              soft    nproc   2047
oracle               hard    nproc   16384
oracle               soft    nofile  1024
oracle               hard    nofile  65536

y el fichero /etc/pam.d/login para añadir la siguiente linea

session    required     pam_limits.so

y en el /etc/profile añadimos lo siguiente:

if [ $USER = "oracle" ]; then
       if [ $SHELL = "/bin/ksh" ]; then
             ulimit -p 16384
             ulimit -n 65536
       else
             ulimit -u 16384 -n 65536
       fi
fi


Después de todo esto he pasado la comprobación y todo está correcto, salvo la red, que parece ser que hay un problema de comunicación en el interface eth1, con la red 10.90.63.x. Esto ya lo miro la proxima semana.

Software adicional

Hay que asegurarse de que los siguientes paquetes de red hat están instalados en las máquinas

binutils-2.15.92.0.2-10.EL4
compat-db-4.1.25-9
control-center-2.8.0-12
gcc-3.4.3-9.EL4
gcc-c++-3.4.3-9.EL4
glibc-2.3.4-2
glibc-common-2.3.4-2
gnome-libs-1.4.1.2.90-44.1
libstdc++-3.4.3-9.EL4
libstdc++-devel-3.4.3-9.EL4
make-3.80-5

y además el openmotif21-2.1.30-11.RHEL4.6

Los que he marcado con negrita no me vienen instalados por defecto en la distro que he puesto yo, rhel 4. Pero tampoco los he instalado. Control center tiene muchas dependencias de servidor de X y las librerías de gnome no se muy bien para que las quiere. Seguro que lo veré más adelante.