Skip to content

Commit 2f529b6

Browse files
authored
添加常用数据库的k8s资源文件
1 parent dfa8d5b commit 2f529b6

File tree

9 files changed

+587
-1
lines changed

9 files changed

+587
-1
lines changed

k8s/databases/README.md

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
### 服务部署机器
2+
- source-path:
3+
4+
### 查看服务
5+
```shell
6+
kubectl get po -n dbs
7+
8+
9+
kubectl get svc -n dbs
10+
11+
```
12+
13+
14+
### 各服务队外开放端口
15+
16+
#### 连接服务: localhost:$port
17+
#### mysql
18+
```yaml
19+
port: 31000
20+
image: mysql:5.7
21+
22+
username: root
23+
password: root123
24+
```
25+
26+
#### pgsql
27+
```yaml
28+
port: 31001
29+
image: postgres:13
30+
31+
username: postgres
32+
password: postgres
33+
```
34+
35+
#### oracle (TODO: 暂时无法连接)
36+
```yaml
37+
port: 31002
38+
image: oracle/database:19.3.0-ee
39+
```
40+
41+
#### sqlserver
42+
```yaml
43+
port: 31003
44+
image: mcr.microsoft.com/mssql/server:2019-latest
45+
46+
username: sa
47+
passwprd: Root123123
48+
49+
# sqlserver的pv卷目录需要权限要求
50+
# path: /database/sqlserver
51+
#
52+
```
53+
54+
#### redis
55+
```yaml
56+
port: 31004
57+
image: redis:latest
58+
59+
password:
60+
```
61+
62+
#### mongo
63+
```yaml
64+
port: 31005
65+
image: mongo:4.4
66+
67+
68+
password:
69+
```
70+

k8s/databases/mongo-deployment.yaml

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: mongodb
5+
namespace: dbs
6+
spec:
7+
selector:
8+
app: mongodb
9+
type: NodePort
10+
ports:
11+
- protocol: TCP
12+
port: 27017
13+
targetPort: 27017
14+
nodePort: 31005
15+
---
16+
apiVersion: apps/v1
17+
kind: Deployment
18+
metadata:
19+
name: mongodb
20+
namespace: dbs
21+
spec:
22+
replicas: 1
23+
selector:
24+
matchLabels:
25+
app: mongodb
26+
template:
27+
metadata:
28+
labels:
29+
app: mongodb
30+
spec:
31+
containers:
32+
- name: mongodb
33+
image: mongo:4.4
34+
ports:
35+
- containerPort: 27017
36+
volumeMounts:
37+
- name: mongodb-persistent-storage
38+
mountPath: /data/db
39+
volumes:
40+
- name: mongodb-persistent-storage
41+
persistentVolumeClaim:
42+
claimName: mongo-pvc

k8s/databases/mysql-deployment.yaml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: mysql
5+
namespace: dbs
6+
spec:
7+
selector:
8+
app: mysql
9+
type: NodePort
10+
ports:
11+
- name: mysql
12+
port: 3306
13+
targetPort: 3306
14+
nodePort: 31000
15+
---
16+
apiVersion: apps/v1
17+
kind: Deployment
18+
metadata:
19+
name: mysql
20+
namespace: dbs
21+
spec:
22+
replicas: 1
23+
selector:
24+
matchLabels:
25+
app: mysql
26+
template:
27+
metadata:
28+
labels:
29+
app: mysql
30+
spec:
31+
containers:
32+
- name: mysql
33+
image: mysql:5.7
34+
env:
35+
- name: MYSQL_ROOT_PASSWORD
36+
value: root123
37+
- name: MYSQL_DATABASE
38+
value: mydb
39+
ports:
40+
- containerPort: 3306
41+
volumeMounts:
42+
- name: mysql-persistent-storage
43+
mountPath: /var/lib/mysql
44+
volumes:
45+
- name: mysql-persistent-storage
46+
persistentVolumeClaim:
47+
claimName: mysql-pvc

k8s/databases/oracle-deployment.yaml

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: oracle-config
5+
namespace: dbs
6+
data:
7+
tnsnames.ora: |
8+
ORCLCDB =
9+
(DESCRIPTION =
10+
(ADDRESS = (PROTOCOL = TCP)(HOST = oracle-service)(PORT = 1521))
11+
(CONNECT_DATA =
12+
(SERVER = DEDICATED)
13+
(SERVICE_NAME = OCRL)
14+
)
15+
)
16+
---
17+
apiVersion: v1
18+
kind: Service
19+
metadata:
20+
name: oracle-service
21+
namespace: dbs
22+
labels:
23+
app: oracle-db
24+
spec:
25+
type: NodePort
26+
ports:
27+
- port: 1521
28+
targetPort: 1521
29+
nodePort: 31002
30+
selector:
31+
app: oracle-db
32+
---
33+
apiVersion: apps/v1
34+
kind: Deployment
35+
metadata:
36+
name: oracle-db
37+
namespace: dbs
38+
spec:
39+
replicas: 1
40+
selector:
41+
matchLabels:
42+
app: oracle-db
43+
template:
44+
metadata:
45+
labels:
46+
app: oracle-db
47+
spec:
48+
containers:
49+
- name: oracle
50+
image: registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
51+
env:
52+
- name: ORACLE_ALLOW_REMOTE
53+
value: "true"
54+
- name: ORACLE_SID
55+
value: "ORCLCDB"
56+
- name: ORACLE_SERVICE_NAME
57+
value: "ORCL"
58+
- name: ORACLE_HOME
59+
value: "/home/oracle/app/oracle/product/11.2.0/dbhome_2"
60+
- name: ORACLE_USER
61+
value: "admin"
62+
- name: ORACLE_PASSWORD
63+
value: "admin"
64+
ports:
65+
- containerPort: 1521
66+
volumeMounts:
67+
- name: oracle-pvc
68+
mountPath: /home/oracle/app/oracle/oradata
69+
- name: tnsnames-ora
70+
mountPath: /home/oracle/app/oracle/product/11.2.0/dbhome_2/network/admin/tnsnames.ora
71+
subPath: tnsnames.ora
72+
volumes:
73+
- name: oracle-pvc
74+
persistentVolumeClaim:
75+
claimName: oracle-pvc
76+
- name: tnsnames-ora
77+
configMap:
78+
name: oracle-config

k8s/databases/pgsql-deployment.yaml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: postgresql
5+
namespace: dbs
6+
labels:
7+
app: postgresql
8+
spec:
9+
type: NodePort
10+
ports:
11+
- name: postgresql
12+
port: 5432
13+
targetPort: 5432
14+
nodePort: 31001
15+
selector:
16+
app: postgresql
17+
---
18+
apiVersion: apps/v1
19+
kind: Deployment
20+
metadata:
21+
name: postgresql
22+
namespace: dbs
23+
labels:
24+
app: postgresql
25+
spec:
26+
replicas: 1
27+
selector:
28+
matchLabels:
29+
app: postgresql
30+
template:
31+
metadata:
32+
labels:
33+
app: postgresql
34+
spec:
35+
containers:
36+
- name: postgresql
37+
image: postgres:13
38+
env:
39+
- name: POSTGRES_USER
40+
value: postgres
41+
- name: POSTGRES_PASSWORD
42+
value: postgres
43+
- name: POSTGRES_DB
44+
value: postgres
45+
ports:
46+
- name: postgresql
47+
containerPort: 5432
48+
volumeMounts:
49+
- name: postgresql-data
50+
mountPath: /var/lib/postgresql/data
51+
volumes:
52+
- name: postgresql-data
53+
persistentVolumeClaim:
54+
claimName: pgsql-pvc

k8s/databases/redis-deployment.yaml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: redis
5+
namespace: dbs
6+
spec:
7+
replicas: 1
8+
selector:
9+
matchLabels:
10+
app: redis
11+
template:
12+
metadata:
13+
labels:
14+
app: redis
15+
spec:
16+
containers:
17+
- name: redis
18+
image: redis:latest
19+
ports:
20+
- containerPort: 6379
21+
env:
22+
- name: REDIS_PASSWORD
23+
value: "root123"
24+
---
25+
apiVersion: v1
26+
kind: Service
27+
metadata:
28+
name: redis-service
29+
namespace: dbs
30+
spec:
31+
selector:
32+
app: redis
33+
type: NodePort
34+
ports:
35+
- name: redis
36+
port: 6379
37+
targetPort: 6379
38+
nodePort: 31004
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: sqlserver
5+
namespace: dbs
6+
spec:
7+
replicas: 1
8+
selector:
9+
matchLabels:
10+
app: sqlserver
11+
template:
12+
metadata:
13+
labels:
14+
app: sqlserver
15+
spec:
16+
containers:
17+
- name: sqlserver
18+
image: mcr.microsoft.com/mssql/server:2019-latest
19+
env:
20+
- name: ACCEPT_EULA
21+
value: "Y"
22+
- name: MSSQL_SA_PASSWORD
23+
value: "Root123123"
24+
ports:
25+
- containerPort: 1433
26+
volumeMounts:
27+
- name: sqlserver-data
28+
mountPath: /var/opt/mssql
29+
volumes:
30+
- name: sqlserver-data
31+
persistentVolumeClaim:
32+
claimName: sqlserver-pvc
33+
---
34+
apiVersion: v1
35+
kind: Service
36+
metadata:
37+
name: sqlserver-service
38+
namespace: dbs
39+
spec:
40+
selector:
41+
app: sqlserver
42+
type: NodePort
43+
ports:
44+
- name: sqlserver-port
45+
port: 1433
46+
protocol: TCP
47+
targetPort: 1433
48+
nodePort: 31003

0 commit comments

Comments
 (0)