oracle实例囚笼(Instance Caging)

当多个实例运行在同一台服务器上时,为了避免实例间的相互影响,从oracle 11gr2开始推出了实例囚笼的概念。实例囚笼能够限制数据库实例使用的CPU资源。使用实例囚笼,只需要设置CPU_COUT和resource_manager_plan两个参数。该功能可以用于的数据库资源整合,而取代之前的虚拟化和分区等传统的资源分割方法

1,打开swingbench准备设置后进行压力测试(具体方法见前面文章)
2,查看服务器的CPU个数

select value from v$osstat where stat_name = 'NUM_CPUS';
3,开启Instance Caging只需设置两个参数即可
alter system set cpu_count = 4;
alter system set resource_manager_plan = 'default_plan';
备注:这个地方很奇怪,第一次使用报错ORA-00450,经过一段时间后,设置竟然成功了

4,验证功能已经启用
SQL> select instance_caging from v$rsrc_plan where is_top_plan = 'TRUE';

INS
---
ON
SQL> show parameter cpu_count;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
cpu_count integer 4
5,查看功能使用情况

SQL> select to_char(begin_time, 'HH24:MI') time, sum(avg_running_sessions) avg_running_sessions, sum(avg_waiting_sessions) avg_waiting_sessions from v$rsrcmgrmetric_history group by begin_time order by begin_time;

TIME AVG_RUNNING_SESSIONS AVG_WAITING_SESSIONS
----- -------------------- --------------------
14:48 .82905 .000083333
14:49 .536 .40295
14:50 .334233333 .060016667

17:30 8.53193333 4.39328333
17:31 15.85885 .0001
17:32 9.46965 22.3486667


avg_running_sessions是一分钟内的活动sessions数,如果次数远小于CPU_COUNT,这实例远没有达到限制。如果AVG_WAITING_SESSIONS很大,这系统基本达到最大限制了


6,可以动态的调整CPU_COUNT来调整实例使用的资源。下面是测试结果

a, 设置cpu_count为32,即不设置限制。
SQL> alter system set cpu_count =32;
开始压力测试,PC服务器的TPMC达到45万TPMC,CPU利用率75%左右
09:44:17 all 69.73 0.00 5.65 2.83 0.00 21.79
09:44:27 all 71.52 0.00 5.81 2.69 0.00 19.99
09:44:37 all 61.98 0.00 5.12 2.91 0.00 29.99
09:44:47 all 69.76 0.00 5.66 3.58 0.00 21.00

b, 设置实例囚笼功能,即限制CPU_cout为16,数据库出现大量resmgr:cpu quantum等待事件(这个和资源管理有关),此时系统利用率65%左右,但%user为50%左右,即16个cpu.TPMC为20万。能力受到限制
SQL> alter system set cpu_count=16;

09:49:28 CPU %user %nice %system %iowait %steal %idle
09:49:38 all 53.91 0.00 8.78 1.81 0.00 35.50
09:49:48 all 52.15 0.00 8.66 2.88 0.00 36.31
09:49:58 all 53.91 0.00 8.37 1.85 0.00 35.87
09:50:08 all 50.98 0.00 8.76 2.66 0.00 37.60
09:50:18 all 53.24 0.00 8.42 1.91 0.00 36.43


c, cpu_count=8;%User为27%,基本保持在8个CPU数量,TPMC 10万左右
09:57:38 CPU %user %nice %system %iowait %steal %idle
09:57:48 all 27.96 0.00 4.99 3.01 0.00 64.03
09:57:58 all 27.82 0.00 4.47 2.49 0.00 65.21
09:58:08 all 27.97 0.00 4.54 2.31 0.00 65.18

09:58:18 all 27.90 0.00 4.50 2.25 0.00 65.34

d,查看动态视图avg_running_sessions和cpu_count基本一致,说明已经达到最大限度了

SQL> select to_char(begin_time, 'HH24:MI') time, sum(avg_running_sessions) avg_running_sessions, sum(avg_waiting_sessions) avg_waiting_sessions from v$rsrcmgrmetric_history group by begin_time order by begin_time;

09:44 18.4489333 .017666667
09:45 14.9326833 34.1877333
09:46 14.5135167 44.6346167
09:47 13.7069167 41.3688333
09:48 14.3363833 43.9001667
09:49 14.3411 43.345
09:50 14.2703333 43.2445
09:51 8.04406667 58.9471667
09:52 1.86445 15.7961833
09:53 7.1256 62.3546667
09:54 7.32335 64.64055
09:55 7.30835 64.3774
09:56 7.2753 64.0636333
09:57 7.35958333 65.0054
09:58 7.23883333 64.4193333
09:59 7.06161667 62.3264833
10:00 7.3477 66.1179333
10:01 7.3673 66.7519
10:02 5.44061667 48.0556167
10:03 .009183333 0
10:04 .006833333 0
10:05 .00545 0
10:06 .0062 0
10:07 1.5357 12.9266833
10:08 7.35653333 65.4692333
10:09 7.36343333 65.6357833
10:10 7.1894 63.24075


参考文档

Configuring and Monitoring Instance Caging [ID 1362445.1]
http://www.oracle.com/technetwork/database/performance/instance-caging-wp-166854.pdf
http://www.dbi-services.com/index.php/blog/entry/oracle-11g-instance-caging-limit-database-cpu-consumption
目录 EXADATA EXADATA EXADATA EXADATA EXADATA EXADATA EXADATA 资源管理计划 资源管理计划 资源管理计划 资源管理计划 ................................ ................................ ................................ .................. 1 1库内资源管理 库内资源管理 库内资源管理 库内资源管理 DBRM DBRM ................................ ................................ ................................ ............ 3 1.11.1 资源计划 资源计划 ................................ ................................ ................................ ..................... 4 1.21.2 配置资源计划 配置资源计划 配置资源计划 ................................ ................................ ................................ ............. 4 1.3 1.3 测试资源计划 测试资源计划 测试资源计划 ................................ ................................ ................................ ............ 7 1.41.4 资源计划执行结果 资源计划执行结果 资源计划执行结果 资源计划执行结果 ................................ ................................ ................................ ..... 9 2实例隔离 实例隔离 实例隔离 INSTANCE CAGING INSTANCE CAGINGINSTANCE CAGINGINSTANCE CAGING INSTANCE CAGING INSTANCE CAGINGINSTANCE CAGINGINSTANCE CAGING ................................ ................................ .............................. 10 2.1 2.1 配置 IN STANCE CAGINGSTANCE CAGINGSTANCE CAGING STANCE CAGING STANCE CAGING STANCE CAGINGSTANCE CAGINGSTANCE CAGINGSTANCE CAGING ................................ ................................ ........................... 10 2.2 2.2 测试 INSTANCE CAGING INSTANCE CAGINGINSTANCE CAGING INSTANCE CAGING INSTANCE CAGING INSTANCE CAGINGINSTANCE CAGINGINSTANCE CAGINGINSTANCE CAGING ................................ ................................ ........................... 10 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 2.3 INSTANCE CAGING 测试结果 测试结果 测试结果 ................................ ................................ ................... 12 3 EXADATA IORM3 EXADATA IORM 3 EXADATA IORM3 EXADATA IORM3 EXADATA IORM3 EXADATA IORM3 EXADATA IORM3 EXADATA IORM3 EXADATA IORM 3 EXADATA IORM ................................ ................................ ................................ ..................... 12 3.1 3.1 配置 EXADATA IORM EXADATA IORM EXADATA IORMEXADATA IORMEXADATA IORM EXADATA IORMEXADATA IORM EXADATA IORM ................................ ................................ ............................. 15 3.2 3.2 测试 EX ADATA IORM ADATA IORMADATA IORMADATA IORM ADATA IORMADATA IORM ADATA IORM ................................ ................................ ............................. 16 3.3 EXADATA IORM3.3 EXADATA IORM 3.3 EXADATA IORM 3.3 EXADATA IORM 3.3 EXADATA IORM3.3 EXADATA IORM3.3 EXADATA IORM 3.3 EXADATA IORM3.3 EXADATA IORM 3.3 EXADATA IORM 测试结果 测试结果 (未测试 未测试 )................................ ................................ ........ 19 3 常用查询视图 常用查询视图 常用查询视图 常用查询视图 ................................ ................................ ................................ ..................... 21 3.1 DBRM3.1 DBRM 3.1 DBRM 3.1 DBRM ................................ ................................ ................................ ........................ 21
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值