k8s如何配置Redis + Redis Commande
时间: 2024-01-25 16:02:24 浏览: 29
配置Redis + Redis Commander可以使用Kubernetes(k8s)进行部署和管理。以下是配置步骤:
1. 首先需要一个k8s集群并安装kubectl命令行工具。
2. 创建一个Redis部署文件redis-deploy.yaml,内容如下:
```
apiVersion: apps/v1
kind: Deployment
metadata:
name: redis
spec:
replicas: 1
selector:
matchLabels:
app: redis
template:
metadata:
labels:
app: redis
spec:
containers:
- name: redis
image: redis
ports:
- containerPort: 6379
env:
- name: REDIS_PASSWORD
valueFrom:
secretKeyRef:
name: redis-secret
key: redis-password
```
3. 创建一个Redis服务文件redis-service.yaml,内容如下:
```
apiVersion: v1
kind: Service
metadata:
name: redis
spec:
selector:
app: redis
ports:
- name: redis
port: 6379
targetPort: 6379
```
4. 创建一个Redis Commander部署文件redis-commander-deploy.yaml,内容如下:
```
apiVersion: apps/v1
kind: Deployment
metadata:
name: redis-commander
spec:
replicas: 1
selector:
matchLabels:
app: redis-commander
template:
metadata:
labels:
app: redis-commander
spec:
containers:
- name: redis-commander
image: rediscommander/redis-commander
ports:
- containerPort: 8081
env:
- name: REDIS_HOSTS
value: "redis:6379"
```
5. 创建一个Redis Commander服务文件redis-commander-service.yaml,内容如下:
```
apiVersion: v1
kind: Service
metadata:
name: redis-commander
spec:
selector:
app: redis-commander
ports:
- name: redis-commander
port: 8081
targetPort: 8081
```
6. 创建一个Redis密码的Secret文件redis-secret.yaml,内容如下:
```
apiVersion: v1
kind: Secret
metadata:
name: redis-secret
type: Opaque
data:
redis-password: base64encodedpassword
```
其中,base64encodedpassword是Redis密码的base64编码。
7. 使用kubectl apply命令依次部署Redis、Redis Commander和Redis密码Secret:
```
kubectl apply -f redis-deploy.yaml
kubectl apply -f redis-service.yaml
kubectl apply -f redis-commander-deploy.yaml
kubectl apply -f redis-commander-service.yaml
kubectl apply -f redis-secret.yaml
```
8. 等待所有Pod都处于运行状态后,您可以通过Redis Commander的服务IP地址和端口号访问Redis Commander UI。例如,如果您的Redis Commander服务IP地址为10.0.0.1,端口号为8081,则可以在浏览器中访问http://10.0.0.1:8081/。
注意:如果您的Redis服务器需要密码,请将redis-commander-deploy.yaml文件中的REDIS_HOSTS环境变量更改为:
```
REDIS_HOSTS=redis://user:password@redis:6379
```
其中,user和password是Redis服务器的用户名和密码。