website/content/zh/docs/tutorials/configuration/configure-redis-using-confi...

4.6 KiB
Raw Blame History

reviewers title content_template
eparis
pmorie
使用 ConfigMap 来配置 Redis templates/tutorial

{{% capture overview %}}

这篇文档基于使用 ConfigMap 来配置 Containers 这个任务,提供了一个使用 ConfigMap 来配置 Redis 的真实案例。

{{% /capture %}}

{{% capture objectives %}}

    • 创建一个包含以下内容的 kustomization.yaml 文件:
    • 一个 ConfigMap 生成器
    • 一个使用 ConfigMap 的 Pod 资源配置
  • 使用 kubectl apply -k ./ 应用整个路径的配置
  • 验证配置已经被正确应用。

{{% /capture %}}

{{% capture prerequisites %}}

  • {{< include "task-tutorial-prereqs.md" >}} {{< version-check >}}

{{% /capture %}}

{{% capture lessoncontent %}}

真实世界的案例:使用 ConfigMap 来配置 Redis

按照下面的步骤您可以使用ConfigMap中的数据来配置Redis缓存。

  1. 根据docs/user-guide/configmap/redis/redis-config来创建一个ConfigMap

{{< codenew file="pods/config/redis-config" >}}

curl -OL https://k8s.io/examples/pods/config/redis-config

cat <<EOF >./kustomization.yaml
configMapGenerator:
- name: example-redis-config
  files:
  - redis-config
EOF

将 pod 的资源配置添加到 kustomization.yaml 文件中:

{{< codenew file="pods/config/redis-pod.yaml" >}}

curl -OL https://raw.githubusercontent.com/kubernetes/website/master/content/en/examples/pods/config/redis-pod.yaml

cat <<EOF >>./kustomization.yaml
resources:
- redis-pod.yaml
EOF

应用整个 kustomization 文件夹以创建 ConfigMap 和 Pod 对象:

kubectl apply -k .

使用以下命令检查创建的对象

> kubectl get -k .
NAME                                        DATA   AGE
configmap/example-redis-config-dgh9dg555m   1      52s

NAME        READY   STATUS    RESTARTS   AGE
pod/redis   1/1     Running   0          52s

在示例中,配置卷挂载在 /redis-master 下。 它使用 pathredis-config 密钥添加到名为 redis.conf 的文件中。 因此redis配置的文件路径为 /redis-master/redis.conf。 这是镜像将在其中查找 redis master 的配置文件的位置。

使用 kubectl exec 进入 pod 并运行 redis-cli 工具来验证配置已正确应用:

kubectl exec -it redis redis-cli
127.0.0.1:6379> CONFIG GET maxmemory
1) "maxmemory"
2) "2097152"
127.0.0.1:6379> CONFIG GET maxmemory-policy
1) "maxmemory-policy"
2) "allkeys-lru"

删除创建的 pod

kubectl delete pod redis

{{% /capture %}}

{{% capture whatsnext %}}

{{% /capture %}}