apiVersion: v1
kind: PersistentVolume
metadata:
name: mongodb-pv
namespace: default
spec:
capacity:
storage: 500Mi
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy: Retain
storageClassName: nfs-mongodb
nfs:
path: /data/nfs
server: 119.91.218.139
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: mongodb-pvc
namespace: default
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 500Mi
storageClassName: nfs-mongodb
---
apiVersion: v1
kind: Service
metadata:
name: mongodb-svc
namespace: default
spec:
type: NodePort
ports:
- name: mongo
port: 27017
targetPort: 27017
nodePort: 31777
protocol: TCP
selector:
app: mongodb
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: mongo-deploy
namespace: default
spec:
replicas: 1
selector:
matchLabels:
app: mongodb
template:
metadata:
labels:
app: mongodb
spec:
containers:
- name: mongodb
image: mongo:5.0.9
imagePullPolicy: IfNotPresent
ports:
- containerPort: 27017
volumeMounts:
- name: mongo-pvc
mountPath: /data/mongodb
volumes:
- name: mongo-pvc
persistentVolumeClaim:
claimName: mongodb-pvc
####################################################################
#登录mongodb
kubectl exec -it mongo-deploy-9b9c4c974-fj6ht /bin/bash
#进入mongdb客户端
mongo admin
#创建用户密码
use admin
db.createUser(
{
user: "root",
pwd: "123456",
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
}
)
#创建库用户
use devops
db.createUser(
{
user: "ruiyin",
pwd: "123456",
roles: ["readWrite","dbAdmin"]
}
)