вторник, 7 апреля 2009 г.

Настройка Solaris 11

Требования к серверу.


Определяем архитектуру сервера:

/bin/isainfo –kv
64-bit amd64 kernel modules -> x86
64-bit sparcv9 kernel modules -> SPARC


Определяем размер RAM:

# /usr/sbin/prtconf | grep "Memory size"

Рекомендуемый размер RAM : от 4 GB и выше


Определяем размер swap:

swap -lh
swapfile                   dev    swaplo   blocks     free
/dev/zvol/dsk/rpool/swap 285,1        4K     1.0G     1.0G

Если RAM от 4 до 16GB то swap равен RAM
Если RAM больше 16GB то swap равен 16GB
(Не забываем про DISM, если будем использовать AMM или ASMM, то swap равен размеру SGA)


Увеличить размер swap можно так:

zfs set volsize=20G rpool/swap



Требования к ПО  Oracle Solaris 11 SPARC



Должны быть установлены следующие обновления Oracle Solaris 11:

Oracle Solaris 11 SRU 7.5 or later SRUs and updates (for Oracle database 12.1.0.1.0)
Oracle Solaris 11 SRU 14.5 or later SRUs and updates (for Oracle database 12.1.0.2.0)


Минимально необходимые пакеты согласно Note 1525614.1 for Oracle Solaris 11:

pkg://system/dtrace
pkg://solaris/developer/assembler
pkg://solaris/developer/build/make
pkg://solaris/system/xopen/xcu4 package (if not already installed as part of the standard Oracle Solaris 11 installation)
pkg://solaris/x11/diagnostic/x11-info-clients
pkg://solaris/compress/unzip
pkg://solaris/system/kernel/oracka (For Oracle RAC only)


Проверяем репозиторий:

root@solaris11:~# pkg publisher
PUBLISHER                   TYPE     STATUS P LOCATION
solaris                     origin   online F http://pkg.oracle.com/solaris/release/

пакеты устанавливаются так:

pkg install
pkg install pkg://system/dtrace



Устанавливаем:

 
# pkg install pkg://solaris/system/dtrace
# pkg install pkg://solaris/developer/assembler
# pkg install pkg://solaris/developer/build/make
# pkg install pkg://solaris/system/xopen/xcu4
# pkg install pkg://solaris/x11/diagnostic/x11-info-clients
# pkg install pkg://solaris/compress/unzip
# pkg install pkg://solaris/system/kernel/oracka


Устанавливаем GUI библиотеки для запуска ораклового инсталятора согласно Note 1401800.1

 
# pkg install pkg:/group/system/solaris-large-server
# pkg install pkg:/group/system/solaris-desktop


Дополнительно можно установить:

# pkg install pkg:/group/prerequisite/oracle/oracle-rdbms-server-12-1-preinstall


Проверяем установленные пакеты:

# pkg info -r SUNWdtrc
# pkg info consolidation/osnet/osnet-incorporation /x11/diagnostic/x11-info-clients /developer/build/make system/xopen/xcu4 | egrep -i 'Name|installed'

- Для Grid Infrsatructure
pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibC SUNWlibm SUNWlibms SUNWsprot SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfnt SUNWcsl

- Для RAC - Bug:14046807
pkginfo -i SUNWxcu4

- Для Database
pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibC SUNWlibms SUNWsprot SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfnt

Compiler Requirements
Oracle Solaris Studio 12 (C and C++ 5.9) is supported with Pro*C/C++, Oracle Call Interface, Oracle C++ Call Interface, and Oracle XML Developer's Kit (XDK) for Oracle Database 11g Release 2.

Настройка параметров ядра ОС:


Проверка параметров сетевого стека:

/usr/sbin/ndd -set /dev/tcp tcp_smallest_anon_port 9000
/usr/sbin/ndd -set /dev/tcp tcp_largest_anon_port 65500
/usr/sbin/ndd -set /dev/udp udp_smallest_anon_port 9000
/usr/sbin/ndd -set /dev/udp udp_largest_anon_port 65500

Добавить следующие строки в файл '/etc/inittab':

tm::sysinit:/usr/sbin/ndd -set /dev/tcp tcp_smallest_anon_port 9000 > /dev/console
tm::sysinit:/usr/sbin/ndd -set /dev/tcp tcp_largest_anon_port 65500 > /dev/console
tm::sysinit:/usr/sbin/ndd -set /dev/udp udp_smallest_anon_port 9000 > /dev/console
tm::sysinit:/usr/sbin/ndd -set /dev/udp udp_largest_anon_port 65500 > /dev/console


Настройка параметров Shared Memory:


 Просмотр существующих проджектов:

#projects -l


Создаём новые проджекты:

Например, для RAM SIZE = 64Gb = 68719476736 Bytes

для root
projadd -U root user.root
projmod -sK "project.max-shm-memory=(priv,64gb,deny)" user.root
projmod -sK "project.max-shm-ids=(priv,128,deny)" user.root
projmod -sK "project.max-sem-nsems=(priv,1024,deny)" user.root
projmod -sK "project.max-sem-ids=(priv,1024,deny)" user.root
projmod -sK "process.max-file-descriptor=(priv,65536,deny)" user.root
projmod -sK "process.max-stack-size=(priv,32MB,deny)" user.root


для oracle

projadd -U oracle user.oracle
projmod -sK "project.max-shm-memory=(priv,64gb,deny)" user.oracle
projmod -sK "project.max-shm-ids=(priv,128,deny)" user.oracle
projmod -sK "project.max-sem-nsems=(priv,1024,deny)" user.oracle
projmod -sK "project.max-sem-ids=(priv,1024,deny)" user.oracle
projmod -sK "process.max-file-descriptor=(priv,65536,deny)" user.oracle
projmod -sK "process.max-stack-size=(priv,32MB,deny)" user.oracle


Проверяем:

# more /etc/project
# more /etc/user_attr


Добавить в /etc/system следующие параметры:

set shmsys:shminfo_shmmax=68719476736
set shmsys:shminfo_shmmni=128
set semsys:seminfo_semmsl=1024
set semsys:seminfo_semmni=1024
set max_nprocs=30000
set maxuprc=16384
set rlim_fd_max=65536
set rlim_fd_cur=16384

Reboot Server

# /usr/sbin/shutdown -y -i6 -g0


Проверяем:
# cat /etc/project
# cat /etc/system
# projects -l
# /usr/sbin/sysdef
# prctl -i project
# prctl -n project.max-shm-memory -i project user.root
# prctl -n project.max-shm-memory -i project user.oracle



Снятие ограничения Shell limits.

# su - root

Смотрим текущие значения:

# ulimit -a
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
open files (-n) 65536 or unlimited
stack size (kbytes, -s) unlimited
cpu time (seconds, -t) unlimited
max user processes (-u) 16384 or unlimited
virtual memory (kbytes, -v) unlimited


ulimit -t unlimited
ulimit -f unlimited
ulimit -d unlimited
ulimit -s unlimited
ulimit -v unlimited


# su - oracle

Смотрим текущие значения:

# ulimit -a
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
open files (-n) 65536 or unlimited
stack size (kbytes, -s) unlimited
cpu time (seconds, -t) unlimited
max user processes (-u) 16384 or unlimited
virtual memory (kbytes, -v) unlimited


Устанавливаем новые значения:

ulimit -t unlimited
ulimit -f unlimited
ulimit -d unlimited
ulimit -s unlimited
ulimit -v unlimited


Рекомендуемые настройки NTP:

vi /etc/sysconfig/ntpd

OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"


Перезапустить xntpd:

su - root
/usr/sbin/svcadm disable ntp
/usr/sbin/svcadm enable ntp
/usr/sbin/svcadm restart ntp


vi /etc/inet/ntp.conf

slewalways yes
disable pll

Перезапустить xntpd:

su - root
/usr/sbin/svcadm restart ntp


Настройка SSH:

В файл /etc/ssh/sshd_config добавить параметр : LoginGraceTime 0

X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

LoginGraceTime 0

Отключить Firewall:

su - root
/usr/sbin/svcadm disable ipfilter

Настойка профайла пользователя oracle

# vi .bashrc
- or -
# vi .profile

##################################################
# Setup Oracle standard env
##################################################
export ORACLE_SID=TESTDB export ORACLE_BASE=/path/to/oracle/base
export PATH=$PATH:/usr/local/bin
ORAENV_ASK=NO
. /usr/local/bin/oraenv > /dev/null 2>&1
ORAENV_ASK=YES
##################################################
# Setup Oracle extended env
##################################################
#export NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

export NLS_DATE_FORMAT=YYYY-MM-DD:HH24:MI:SS
export LIBPATH=$ORACLE_HOME/lib:/usr/lib
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:/sbin:/usr/sbin:/bin:/usr/local/bin:/usr/bin:$PATH
umask 022
unset TMOUT
if [ `uname` = "SunOS" ]; then
export AWT_TOOLKIT=XToolkit
# Preventing Installation Errors Caused by Terminal Output Commands
if [ -t 0 ]; then
stty intr ^C
fi
fi



Комментариев нет:

Отправить комментарий