在Solaris 10 Containers下运行Oracle数据库的最好练习
Solaris操作系统包括Solaris Containers
的,一个虚拟化,也就是可以提供独立和安全的运行环境在一个单用户模式下运行。用
Solaris Containers,管理员可以分别管理工作,控制资源争用,和维持IP网络。这些特性可以支持多元化应用,甚至多个实例的应用。
在oracle 9i和oracle 10g都可以在Solaris Containers
中被认证。
Oracle也支持单实例数据库11r2 和11gr1(SPARC),环境是Solaris 10 no-global(local)。
请看这些文章的地址:
Sun操作系统级别的虚拟化技术,也就是可以提供独立和安全的运行环境在一个单用户模式下运行。用Solaris Containers,
管理员可以分别管理工作,控制资源争用,和维持IP网络。这些特性可以支持多元化应用,甚至多个实例的应用。
它使用的是Solaris Resource Manager(SRM),伴随sllaris zones分区图软件,提供一个虚拟化的环境。这两个技术会在下面的章节中讨论。
Solaris Zones分区技术:
Solars zones是一个solaris集成环境,是一个用虚拟化操作系统服务和提供独立安全环境的分区软件技术。Solaris zones是在一个单一服务下多元化集成的环境。
有两种zones的类型,一个是global一个是non-global。Golbal zone是从硬件系统启动solaris的。一个系统只有一个global区域。每个系统,这是系统的默认区和全系统的控制的区域。
两种方式创建不同的root file:sparse root 和 whole root
具体详细的看文档,很容易理解。
Solaris Resource Manager
默认,solaris OS提供所有在系统运行运行的所有工作负载。这可以修改solaris资源管理器,这是提供一种控制资源来控制solaris OS的默认的方法。
Solaris resource manger提供以下功能:
1、 工作负载目前的资源的状态
2、 The scheduling mechanism
3、 The partitioning mechanism
Workload Identification
1、 项目实施,使用识别和分离工作负载,一个组和用户可以由多个应用程序过程,识别项目提供的工作量所有进程通过项目名称服务数据库。在/ets/nsswitch.conf下可以定义
2、 任务:一个task,收集一个可以管理的实体,他的工作量是一组进场,没登陆创建一个新的任务,属于该项目,并在登陆绘画期间,所有启动的进程属于新的任务。项目和任务的概念已经被纳入指令。入ps,pgrep,pstat和cron。
Resource Control(资源管理)
不同的资源控制可分为以下三个值
1、 权限级别
2、 阈值
3、 行动的特殊阈值
权限级别可以分为以下三种
1、 basic
2、 privileged
3、 system
CPU and Memory Management(cpu和内存管理)
项目的SRM,使最终用户控制可用的CPU资源和系统的物理内存消耗不同的工作负载提供公平共享调度器(FSS),资源上限设置守护进程,CPU的上限和专用的CPU设施。
其包含如下:
1、Resource Capping Daemon
2、cpu caps
举例如何设置:
zonecfg:myzone> add capped-cpu
zonecfg:myzone:capped-cpu> set ncpus=3.75
zonecfg:myzone:capped-cpu> end
3、dedicated cpus
举例如何设置
zonecfg:myzone> add dedicated-cpu
zonecfg:myzone:dedicated-cpu> set ncpus=8-12
zonecfg:myzone:dedicated-cpu> end
后面的还有很多很多下面给个大纲及其命令大家想看的去看文档:
Requirements
# /usr/sbin/ifconfig -a
# /usr/sbin/dladm show-link
Enabling Resource Pools
# svcadm enable svc:/system/pools:default
# svcadm enable svc:/system/pools/dynamic:default
# svcs -a | grep pool
Creating a Non-Global Zone
zonecfg:my-zone> add device
zonecfg:my-zone:device> set match=/dev/dsk/c1t1d0s0
zonecfg:my-zone:device> end
zonecfg:my-zone> exit
# zoneadm -z my-zone reboot
UFS File Systems in Solaris Containers
ZFS File Systems in Containers
Adding a Single ZFS File System
Delegating Complete ZFS Dataset
Solaris Dynamic Intimate Shared Memory (DISM)
Dedicated CPU