kubernetes-部署Oracle数据库

1、Oracle数据库

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

2、Oracle部署

下面是Oracle部署的定义代码,此代码由两部分组成,即Oracle部署的部署以及其代理服务。此处部署的Oracle数据库为11g  r2,镜像使用的是mybook2019/oracle-ee-11g:v1.0。通过NodePort模式对外暴露了1521和1158这两个端口,并通过nfs文件系统对Oracle的数据进行持久化。

#-------------定义oralce代理服务--------------------
apiVersion: v1
kind: Service
metadata:
  name: oralce-svc
  labels:
    app: oralce
spec:
  type: NodePort
  ports:
  - port: 1521
    targetPort: 1521
    name: oracle1521
  - port: 8080
    targetPort: 8080
    name: oralce8080
  selector:
    app: oralce
---

#-------------定义oralce部署--------------------
apiVersion: apps/v1
kind: Deployment
metadata:
  name: oralce
spec:
  replicas: 1
  selector:
    matchLabels:
      app: oralce
  strategy:
    type: Recreate
  template:
    metadata:
      labels:
        app: oralce
    spec:
      containers:
      - image: mybook2019/oracle-ee-11g:v1.0
        name: oralce
        - containerPort: 1521
          name: oralce1521
        - containerPort: 8080
          name: oralce8080
        volumeMounts:
        - name: oralce-data
          mountPath: /u01/app/oracle
      volumes:
      - name: oralce-data
        nfs:
          path: /home/sharenfs/oracle
          server: 192.168.8.132

通过kubectl,执行下面的命令在Kubernetes集群中部署Oracle数据库。

$ kubectl create -f oracle11g-en.yaml --namespace=kube-public

在部署完成后,通过下面的命令可以查看oracle暴露的端口(此处的端口为1521和32175):

$ kubectl get svc --namespace=kube-public

3、部署验证

在此处,部署好Oracle以后。

1)在Kubernetes集群内的应用,连接数据库的相关信息如下:

hostname: oracle-svc.kube-public
port: 1521
sid: EE
service name: EE.oracle.docker
username: system
password: oracle

对于在oracle客户端所在机器上,执行下面的命令连接到数据库。

$ sqlplus system/oracle@//oracle-svc.kube-public:1521/EE.oracle.docker

2)在Kubernetes集群外的应用,连接数据库的所使用的相关信息如下:

hostname: 10.0.32.165
port: 32175
sid: EE
service name: EE.oracle.docker
username: system
password: oracle

对于在oracle客户端所在机器上,执行下面的命令连接到数据库。

$ sqlplus system/oracle@//10.0.32.165:32175/EE.oracle.docker
K8S中文社区微信公众号

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址