实现Oracle数据库私有云的方式有两类:IaaS和PaaS,因为IaaS会使用基础架构虚拟化技术,所以一般能得到更好的隔离性,而PaaS的隔离性虽然没有IaaS好,但是IO性能上会有优势。
Oracle的DBaaS数据库平台云,按实现方式又分了三种:DB as a Service
PDB as a Service
Schema as a Service
我们以PDB as a Service为例,简单介绍一下配置方法。
安装RAC和EM13c
在这个例子里面我们会安装RAC 12.2.0.1和EM13c R2 P1,Oracle建议的补丁也都要安装,另外EM13c R2里面如果想使用用私有云的功能,还需要部署云和虚拟化相关的插件,否则看不到DBaaS等相关内容。
部署插件的方法可以参考联机文档,这不是本文的重点,不再赘述。
在安装RAC的两台主机上安装EM13c Agent,并自动搜索目标,然后在EM13c里面升级目标。这些都是EM的基本操作,这里就不给出具体步骤了。
创建role和用户
为了在后续的创建的EM对象可以直接关联到role,我们先要创建相应的自定义role和EM的用户。
在一个典型的私有云应用场景中,应该有用户,私有云管理者和EM超级用户3个层次,为了方便,我们就将3个层次合并为2个层次,私有云用户和EM超级用户(SYSMAN)。
私有云用户应该可以登录EM13c,但是只能访问云自助门户,进行资源的申请和查看,而不能访问其他的EM功能,包括数据库的管理等功能。为了方便使用,EM13c预置了两个role, EM_SSA_USER和EM_SSA_USER_BASE, 他们两个的区别是EM_SSA_USER能访问自助门户且包含查看所有云服务系列和云服务类型的权限,而EM_SSA_USER_BASE只能访问自助门户,不包含任何云服务系列和云服务类型的权限,所有权限都要后续显式授予。
在这里我们要先解释一下EM13c中的”云服务系列”和”云服务类型”的概念,”云服务系列”就是某一大类的服务,比如DBaaS, MWaaS, IaaS,而”云服务类型”就是具体的实现方式,比如DBaaS这个云服务系列中,就包含3个云服务类型DB , PDB , Schema, 所谓DB就是指共享Oracle软件,用不同的DB来提供服务,而PDB和Schema也是依此类推,只是共享资源的级别和资源池化的方式不同。
再回到role创建,例子里我们就用EM_SSA_USER_BASE这个预置的role来做基础role,创建自定义role SSA_USER_DBAAS, 在创建过程中(向导第4步,资源权限页面)显式授予有限的云服务系列和类型,例子里的云服务系列就是DBaaS,服务类型是DB,PDB,Schema,EM13c里面创建自定义role的过程不是重点,不详细讲了,具体步骤可以参考EM13c的联机文档。这里创建的自定义role SSA_USER_DBAAS在后面会多次用到,很多和云服务有关的对象都要授权给这个role。