1.创建命名空间
[root@k8s-matser01 ~]# kubectl create ns nacos
2.编辑MysqL的yaml文件
[root@k8s-matser01 ~]# cat MysqL.yaml
apiVersion: v1
kind: ReplicationController
Metadata:
name: MysqL
namespace: nacos
labels:
name: MysqL
spec:
replicas: 1
selector:
name: MysqL
template:
Metadata:
labels:
name: MysqL
spec:
containers:
- name: MysqL
image: nacos/nacos-MysqL:5.7
ports:
- containerPort: 3306
volumeMounts:
- name: nacos-MysqL
mountPath: /var/lib/MysqL
env:
- name: MysqL_ROOT_PASSWORD
value: "40010355"
- name: MysqL_DATABASE
value: "nacos"
- name: MysqL_USER
value: "nacos"
- name: MysqL_PASSWORD
value: "40010300"
- name: TZ
value: Asia/Shanghai
volumes:
- name: nacos-MysqL
hostPath:
path: /data/MysqL
type: DirectoryOrCreate
---
apiVersion: v1
kind: Service
Metadata:
name: MysqL
namespace: nacos
labels:
name: MysqL
spec:
ports:
- port: 3306
targetPort: 3306
selector:
name: MysqL
3.编辑nacos的yaml文件
[root@k8s-matser01 ~]# cat nacos.yaml
---
apiVersion: v1
kind: Service
Metadata:
name: nacos
namespace: nacos
labels:
app: nacos
spec:
type: NodePort
ports:
- port: 8848
name: server
targetPort: 8848
nodePort: 30018
- port: 7848
name: rpc
targetPort: 7848
nodePort: 30019
selector:
app: nacos
---
apiVersion: v1
kind: Service
Metadata:
name: nacos-headless
namespace: nacos
labels:
app: nacos
spec:
ports:
- port: 8848
name: server
targetPort: 8848
- port: 7848
name: rpc
targetPort: 7848
clusterIP: None
selector:
app: nacos
---
# 链接MysqL数据库
apiVersion: v1
kind: ConfigMap
Metadata:
name: nacos-cm
namespace: nacos
data:
MysqL.db.name: "nacos"
MysqL.port: "3306"
MysqL.user: "nacos"
MysqL.password: "40010355"
---
apiVersion: apps/v1
kind: StatefulSet
Metadata:
name: nacos
namespace: nacos
spec:
serviceName: nacos-headless
replicas: 1
selector:
matchLabels:
app: nacos
template:
Metadata:
labels:
app: nacos
spec:
containers:
- name: nacos
imagePullPolicy: Always
image: nacos/nacos-server:latest
resources:
requests:
memory: "2Gi"
cpu: "500m"
ports:
- containerPort: 8848
name: client-port
- containerPort: 7848
name: rpc
env:
- name: NACOS_REPLICAS
value: "1"
- name: MysqL_SERVICE_DB_NAME
valueFrom:
configMapKeyRef:
name: nacos-cm
key: MysqL.db.name
- name: MysqL_SERVICE_PORT
valueFrom:
configMapKeyRef:
name: nacos-cm
key: MysqL.port
- name: MysqL_SERVICE_USER
valueFrom:
configMapKeyRef:
name: nacos-cm
key: MysqL.user
- name: MysqL_SERVICE_PASSWORD
valueFrom:
configMapKeyRef:
name: nacos-cm
key: MysqL.password
- name: NACOS_SERVER_PORT
value: "8848"
- name: NACOS_APPLICATION_PORT
value: "8848"
- name: PREFER_HOST_MODE
value: "hostname"
- name: TZ
value: Asia/Shanghai
- name: MODE
value: standalone
4.启动服务
[root@k8s-matser01 ~]# kubectl get pod -n nacos
NAME READY STATUS RESTARTS AGE
MysqL-p69fz 1/1 Running 0 58m
nacos-0 1/1 Running 0 16s
[root@k8s-matser01 ~]# kubectl get svc -n nacos
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
MysqL ClusterIP 10.107.79.243 <none> 3306/TCP 57m
nacos NodePort 10.97.138.81 <none> 8848:30018/TCP,7848:30019/TCP 36s
nacos-headless ClusterIP None <none> 8848/TCP,7848/TCP 36s
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。