Oracle Validated Configurations致力于为企业提供更简易、更快捷、成本更低的基于Linux和Oracle VM的解决方案。该计划向我们提供经过测试和验证的体系架构,其附带的文档揭示了相关硬件、软件、存储、网络原件的最佳配置实践,以帮助系统提升性能和可收缩性并降低成本。从行业角度来说Oracle Validated Configurations所验证的配置及提供的最佳实践文档受到Oracle合作伙伴的接受和认可,Oracle Validated Configurations提供了推荐使用的软硬件组合的部署方案细节,这些方案已被证明是十分有益的。
Oracle Validated Configurations提供了那些好处?
Oracle Validated Configurations是对系统底层组件在高负载下良好工作的有力保证,同时这些推荐配置也在实践中被证明是易于快速部署的。其有助于:
- 实现标准化的、具有可扩展性、高可用的且成本低廉的解决方案
- 加速并简化在Linux上部署Oracle软件
- 为最终用户降低了测试系统所要花费的昂贵成本
- 转嫁了用户的风险
那么Oracle Validated Configurations和最早推出的Oracle Product Certification有什么区别?
传统的Oracle Product Certification在认证某个操作系统平台后,可以确认Oracle的相关产品完全支持该系统平台。而Oracle Validated Configurations则通过测试验证更进一步提供了完整的组件组合信息,这些信息包括针对软硬件、存储的版本、设置、补丁的推荐值,而这些推荐值来源于Oracle及其合作伙伴的Linux测试实验室中高压测试的经验。
我们要如何使用Oracle Validated Configurations?
我们可以通过访问或订阅 <Browse Published Validated Configurations>来了解OVC中已经验证的软硬件组合配置。
此外在Oracle Enterprise Linux中提供了oracle-validated RPM软件包,通过使用OEL DVD介质上的该包我们可以更简单地部署安装Oracle产品所需要的软件包环境,特别是对于Oracle Database的安装来说有了以上特性后显得特别简单。
通过安装DVD介质使用oracle-validate软件包的步骤如下:
1.创建介质装载目录/media/disk: mkdir /media/disk
2.插入OEL DVD光盘
3.装载目录: mount /dev/cdrom /media/disk
4.touch /etc/yum.repos.d/public-yum-el5.repo,并加入以下内容
[oel5] name = Enterprise Linux 5.5 DVD baseurl=file:///media/disk/Server/ gpgcheck=0 enabled=1
注意以上name中的OEL版本(指5.5)可能和你手头DVD的版本不一样,这一般不会造成问题,但要保证当前操作系统与安装介质中的完全一致。
5.正式安装oracle-validated软件包环境,使用yum install oracle-validated 命令:
yum install oracle-validated Loaded plugins: security Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package oracle-validated.x86_64 0:1.0.0-22.el5 set to be updated --> Processing Dependency: /usr/lib/libaio.so for package: oracle-validated --> Running transaction check ---> Package libaio-devel.i386 0:0.3.106-5 set to be updated --> Finished Dependency Resolution Dependencies Resolved ========================================================================================== Package Arch Version Repository Size ========================================================================================== Installing: oracle-validated x86_64 1.0.0-22.el5 ol5 16 k Installing for dependencies: libaio-devel i386 0.3.106-5 ol5 12 k Transaction Summary ========================================================================================== Install 2 Package(s) Upgrade 0 Package(s) Total download size: 27 k Is this ok [y/N]: y Downloading Packages: ------------------------------------------------------------------------------------------ Total 12 MB/s | 27 kB 00:00 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : libaio-devel 1/2 Installing : oracle-validated 2/2 Installed: oracle-validated.x86_64 0:1.0.0-22.el5 Dependency Installed: libaio-devel.i386 0:0.3.106-5 Complete!
完成对oracle-validated的安装后操作系统软件包环境也就水道渠成了,此外该oracle-validated包还会帮助我们设置必要的Linux内核参数,具体来说它会修改/etc/sysctl.conf配置文件中的参数到Oracle推荐的值,以下为完成oracle-validated安装后的sysctl.conf,供参考:
# Kernel sysctl configuration file for Oracle Enterprise Linux # # For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and # sysctl.conf(5) for more details. # Controls IP packet forwarding net.ipv4.ip_forward = 0 # Controls source route verification net.ipv4.conf.default.rp_filter = 1 # Do not accept source routing net.ipv4.conf.default.accept_source_route = 0 # Controls the System Request debugging functionality of the kernel # Controls whether core dumps will append the PID to the core filename # Useful for debugging multi-threaded applications kernel.core_uses_pid = 1 # Controls the use of TCP syncookies net.ipv4.tcp_syncookies = 1 # Controls the maximum size of a message, in bytes # Controls the default maxmimum size of a mesage queue # Controls the maximum shared segment size, in bytes # Controls the maximum number of shared memory segments, in pages # For 11g, Oracle-Validated setting for fs.file-max is 6815744 # For 10g, uncomment 'fs.file-max = 327679', and comment 'fs.file-max = 6553600' entry and re-run sysctl -p # fs.file-max = 327679 fs.file-max = 6815744 # Oracle-Validated setting for kernel.msgmni is 2878 kernel.msgmni = 2878 # Oracle-Validated setting for kernel.msgmax is 8192 kernel.msgmax = 8192 # Oracle-Validated setting for kernel.msgmnb is 65536 kernel.msgmnb = 65536 # Oracle-Validated setting for kernel.sem is '250 32000 100 142' kernel.sem = 250 32000 100 142 # Oracle-Validated setting for kernel.shmmni is 4096 kernel.shmmni = 4096 # Oracle-Validated setting for kernel.shmall is 1073741824 kernel.shmall = 1073741824 # Oracle-Validated setting for kernel.shmmax is 4398046511104 on x86_64 and 4294967295 on i386 architecture. Refer Note id 567506.1 kernel.shmmax = 4398046511104 # Oracle-Validated setting for kernel.sysrq is 1 kernel.sysrq = 1 # Oracle-Validated setting for net.core.rmem_default is 262144 net.core.rmem_default = 262144 # For 11g, Oracle-Validated setting for net.core.rmem_max is 4194304 # For 10g, uncomment 'net.core.rmem_max = 2097152', comment 'net.core.rmem_max = 4194304' entry and re-run sysctl -p # net.core.rmem_max = 2097152 net.core.rmem_max = 4194304 # Oracle-Validated setting for net.core.wmem_default is 262144 net.core.wmem_default = 262144 # For 11g, Oracle-Validated setting for net.core.wmem_max is 1048576 # For 10g, uncomment 'net.core.wmem_max = 262144', comment 'net.core.wmem_max = 1048576' entry for this parameter and re-run sysctl -p # net.core.wmem_max = 262144 net.core.wmem_max = 1048576 # Oracle-Validated setting for fs.aio-max-nr is 3145728 fs.aio-max-nr = 3145728 # For 11g, Oracle-Validated setting for net.ipv4.ip_local_port_range is 9000 65500 # For 10g, uncomment 'net.ipv4.ip_local_port_range = 1024 65000', comment 'net.ipv4.ip_local_port_range = 9000 65500' entry and re-run sysctl -p # net.ipv4.ip_local_port_range = 1024 65000 net.ipv4.ip_local_port_range = 9000 65500 # Oracle-Validated setting for vm.min_free_kbytes is 51200 to avoid OOM killer vm.min_free_kbytes = 51200
oracle-validated包还会帮助我们修改/etc/security/limits.conf配置以获得合理的shell limit:
[oracle@rh2 ~]$ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 31668 max locked memory (kbytes, -l) 50000000 max memory size (kbytes, -m) unlimited open files (-n) 131072 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 131072 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited [oracle@rh2 ~]$ cat /etc/security/limits.conf # Oracle-Validated setting for nofile soft limit is 131072 oracle soft nofile 131072 # Oracle-Validated setting for nofile hard limit is 131072 oracle hard nofile 131072 # Oracle-Validated setting for nproc soft limit is 131072 oracle soft nproc 131072 # Oracle-Validated setting for nproc hard limit is 131072 oracle hard nproc 131072 # Oracle-Validated setting for core soft limit is unlimited oracle soft core unlimited # Oracle-Validated setting for core hard limit is unlimited oracle hard core unlimited # Oracle-Validated setting for memlock soft limit is 50000000 oracle soft memlock 50000000 # Oracle-Validated setting for memlock hard limit is 50000000 oracle hard memlock 50000000