record 参数
kubectl create -f muban.yaml --record=true
#record参数可以通过命令查询发布历史版本
kubectl rollout history deploy tomcat -n tomcat
tomcat服务实例编排tomcat.yaml内容
apiVersion: apps/v1
kind: Deployment
metadata:
name: tomcat
namespace: tomcat
labels:
app: tomcat
spec:
replicas: 2
revisionHistoryLimit: 3
selector:
matchLabels:
name: tomcat
app: tomcat
template:
metadata:
labels:
name: tomcat
app: tomcat
spec:
containers:
- name: tomcat
image: harbor.wmmzz.com/library/tomcat:v1
volumeMounts:
- mountPath: /opt/tomcat/logs
name: tomcat
ports:
- containerPort: 8080
name: tomcat
resources:
requests:
cpu: 1
memory: 512Mi
limits:
cpu: 2
memory: 2G
volumes:
- name: tomcat
hostPath:
path: /opt/logs
type: Directory
---
apiVersion: v1
kind: Service
metadata:
name: tomcat
namespace: tomcat
labels:
app: tomcat
spec:
type: NodePort
selector:
name: tomcat
app: tomcat
ports:
- name: tomcat
port: 8080
---
apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
name: tomcat
namespace: tomcat
labels:
app: tomcat
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: tomcat
minReplicas: 2
maxReplicas: 10
targetCPUUtilizationPercentage: 50
mysql服务实例编排文件mysql-muban.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: mysql-muban
namespace: mysql
labels:
app: mysql-muban
spec:
replicas: 1
revisionHistoryLimit: 3
selector:
matchLabels:
app: mysql-muban
template:
metadata:
labels:
app: mysql-muban
spec:
containers:
- name: mysql-muban
image: mysql:v5.7.22
volumeMounts:
- mountPath: /var/lib/mysql
name: mysqldb-muban
- mountPath: /etc/mysql
name: mysqlconf-muban
env:
- name: TZ
value: Asia/Shanghai
- name: MYSQL_ROOT_PASSWORD
value: Root123+
ports:
- containerPort: 3306
name: mysql-muban
resources:
requests:
cpu: 1
memory: 1G
limits:
cpu: 4
memory: 4G
volumes:
- name: mysqldb-muban
hostPath:
path: /data/mysql/muban/mysqldb
type: Directory
- name: mysqlconf-muban
hostPath:
path: /data/mysql/muban/conf
type: Directory
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: effect
operator: In
values:
- mysql
tolerations:
- key: "key"
operator: "Equal"
value: "value"
effect: NoExecute
---
apiVersion: v1
kind: Service
metadata:
name: mysql-muban
namespace: mysql
labels:
app: mysql-muban
spec:
type: NodePort
selector:
app: mysql-muban
ports:
- port: 3306
nodePort: 33307
redis服务实例编排文件redis-muban.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: redis-muban
namespace: redis
labels:
app: redis-muban
spec:
replicas: 1
revisionHistoryLimit: 3
selector:
matchLabels:
app: redis-muban
template:
metadata:
labels:
app: redis-muban
spec:
containers:
- name: redis-muban
image: redis:3.2
ports:
- containerPort: 6379
name: redis-muban
resources:
requests:
cpu: 1
memory: 1G
limits:
cpu: 4
memory: 4G
---
apiVersion: v1
kind: Service
metadata:
name: redis-muban
namespace: redis
labels:
app: redis-muban
spec:
selector:
app: redis-muban
ports:
- port: 6379
rabbitmq服务实例编排文件rabbitmq-muban.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: rabbitmq-muban
namespace: rabbitmq
labels:
app: rabbitmq-muban
spec:
replicas: 1
revisionHistoryLimit: 3
selector:
matchLabels:
app: rabbitmq-muban
template:
metadata:
labels:
app: rabbitmq-muban
spec:
containers:
- name: rabbitmq-muban
image: registry.cn-hangzhou.aliyuncs.com/wmmzz/rabbitmq:v3.9.11
ports:
- containerPort: 5672
name: rabbitmq-5672
- containerPort: 15672
name: rabbitmq-15672
resources:
requests:
cpu: 1
memory: 1G
limits:
cpu: 4
memory: 4G
---
apiVersion: v1
kind: Service
metadata:
name: rabbitmq-muban
namespace: rabbitmq
labels:
app: rabbitmq-muban
spec:
selector:
app: rabbitmq-muban
ports:
- port: 5672
name: rabbitmq-muban
---
apiVersion: v1
kind: Service
metadata:
name: rabbitmq-15673
namespace: rabbitmq
labels:
app: rabbitmq-15673
spec:
type: NodePort
selector:
app: rabbitmq-muban
ports:
- port: 15672
name: rabbitmq-15673
nodePort: 15673