在Oracle 11gR2 RAC 创建实例的时候,会让我们选择配置类型:Admin-Managed 和 Policy-Managed ,如下:
官网文档解释如下:
6.1 Understanding ServerPools
Server pools arelogical divisions of a cluster into pools of servers, which are allocated tohost databases or other applications. Server pools are managed using crsctl andsrvctl commands.
Each server poolname must be unique within the cluster. You cannot have two server pools usingthe same name.
There are twostyles of server pool management:
(1) Administrator-managed:
Databaseadministrators define on which servers a database resource should run, andplace resources manually as needed. This is the management strategy used inprevious releases.
Databaseadministrators specify in which server pool (excluding generic or free) thedatabase resource will run. Oracle Clusterware is responsible for placing thedatabase resource on a server.
From:
服务器池提供了一个新的方法来在集群中塑造资源,它允许你将集群细分成多个逻辑单元,这在共享环境中很有用。11.2版本集群的所有节点,不管显式还是隐式的,都是服务器池的一部分。默认情况下,在一个全新的安装之后会产生两个池:自由池(free pool)和通用池(generic pool),通用池用于向后兼容,它存储11.2版本以前的数据库或者11.2版本里管理员管理模式(administrator-managed)的数据库。所有非指定的节点都分配给自由池。
服务器池相互间是独占的,包含一些属性,,比如最大最小的节点数、重要性、名称。服务器池的重要性属性用来确保低优先级的工作量不会击败高优先级的来获得资源。将服务器从一个池重新分配到另一个池是可能的,这将在容量管理上发生有趣的情况。集群软件可以自动从其他服务器池中移动服务器来得知服务器池大小的最小要求。
服务器池伴随着忙里RAC数据库的新方法。在Oracle 11.2以前,管理员需要负责从RAC数据库中增加或删除实例,包括创建和启用公共在线redo日志线程和undo表空间。
服务器池(和ASM中使用的OMF)通过策略管理(policy-managed)数据库的方式来使这些工作自动化。
策略管理的数据库启动的节点的数量由服务器池的基数来配置;换句话说,如果你需要一个新的实例,你只要将一个新的节点分配到数据库的服务器池中,Oracle会执行剩下部分的工作。
结合服务器池,Grid Infrastructure引入另一个特性叫角色分离管理(Role SeparatedManagement)。在共享环境中,管理员在管理他们各自的服务器池时受到限制。访问控制列表(Access Control Lists)被用来分配访问给资源。这里还引入了一个新的角色,叫集群管理员(cluster administrator)。
默认情况下,Grid Infrastructure软件所有者”grid”和root用户是固定的集群管理员。可以新添加一些系统用户来作为集群管理员,每个用户拥有几个资源、类型和服务器池上的权限。职责的分离现在可以在集群级别中实现,请注意grid和root用户的权限很大。