Требования к серверу.
Определяем архитектуру сервера:
/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
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
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
X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes
LoginGraceTime 0
Отключить Firewall:
su - root
/usr/sbin/svcadm disable ipfilter
/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
- 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
Комментариев нет:
Отправить комментарий