当前位置: 首页 > news >正文

2018年公司做网站注意事项关键词林俊杰的寓意

2018年公司做网站注意事项,关键词林俊杰的寓意,大气红色礼品公司网站源码,免费网站安全软件大全下载安装文章目录 使用 Kubernetes 部署 Redis 主从及 Sentinel 高可用架构Redis 主从架构部署 (1.yaml)Redis Sentinel 部署 (2.yaml)Sentinel 服务暴露 (3.yaml)部署步骤总结 使用 Kubernetes 部署 Redis 主从及 Sentinel 高可用架构 本文将详细介绍如何在 Kubernetes 中部署 Redis …

文章目录

  • 使用 Kubernetes 部署 Redis 主从及 Sentinel 高可用架构
  • Redis 主从架构部署 (`1.yaml`)
  • Redis Sentinel 部署 (`2.yaml`)
  • Sentinel 服务暴露 (`3.yaml`)
  • 部署步骤
  • 总结


使用 Kubernetes 部署 Redis 主从及 Sentinel 高可用架构

本文将详细介绍如何在 Kubernetes 中部署 Redis 主从及 Sentinel 高可用架构,提供完整的 YAML 配置文件,并逐步解析其关键配置。命名空间已调整为 test

我这是单点,未做共享存储版


Redis 主从架构部署 (1.yaml)

首先,使用 StatefulSet 部署 Redis 主从结构,每个实例通过主机名确定角色:

apiVersion: apps/v1
kind: StatefulSet
metadata:name: redisnamespace: test
spec:serviceName: redisreplicas: 3selector:matchLabels:app: redistemplate:metadata:labels:app: redisspec:initContainers:- name: init-redisimage: docker.wctmd.us.kg/busybox:latestcommand: ["/bin/sh", "-c"]args: ["mkdir -p /data/redis/$(hostname)"]volumeMounts:- name: redis-datamountPath: /datacontainers:- name: redisimage: docker.wctmd.us.kg/redis:5.0.14ports:- containerPort: 6379command: ["/bin/sh"]args: - "-c"- |if [ $(hostname) = "redis-0" ]; thenredis-server --port 6379 --protected-mode no --replica-announce-ip $(hostname).rediselseredis-server --port 6379 --protected-mode no --replicaof redis-0.redis 6379 --replica-announce-ip $(hostname).redisfivolumeMounts:- name: redis-datamountPath: /datavolumes:- name: redis-datahostPath:path: /data/redistype: DirectoryOrCreate

关键点解析

  • 主从自动识别redis-0 为主节点,其它 Pod 配置为从节点并通过 --replicaof 指定主节点。
  • 数据持久化:使用 hostPath 存储 Redis 数据,映射到宿主机的 /data/redis
  • 独立目录管理:通过 initContainer 动态创建 /data/redis/$(hostname),避免目录冲突。

Redis Sentinel 部署 (2.yaml)

接下来,部署 Sentinel 来监控 Redis 主从并实现自动故障转移:

apiVersion: apps/v1
kind: Deployment
metadata:name: redis-sentinelnamespace: test
spec:replicas: 3selector:matchLabels:app: redis-sentineltemplate:metadata:labels:app: redis-sentinelspec:containers:- name: redis-sentinelimage: docker.wctmd.us.kg/redis:5.0.14ports:- containerPort: 26379command: [ "redis-sentinel" ]args: ["/data/sentinel.conf"]volumeMounts:- name: sentinel-confmountPath: /datainitContainers:- name: init-sentinelimage: docker.wctmd.us.kg/busybox:latestcommand: ["/bin/sh", "-c"]args:- cp /etc/redis/sentinel.conf /data/sentinel.conf && chmod 600 /data/sentinel.confvolumeMounts:- name: sentinel-confmountPath: /data- name: config-volumemountPath: /etc/redisvolumes:- name: sentinel-confemptyDir: {}- name: config-volumeconfigMap:name: sentinel-config
---
apiVersion: v1
kind: ConfigMap
metadata:name: sentinel-confignamespace: test
data:sentinel.conf: |sentinel monitor mymaster redis-0.redis 6379 2sentinel down-after-milliseconds mymaster 5000sentinel failover-timeout mymaster 60000sentinel parallel-syncs mymaster 1

关键点解析

  • 动态配置文件管理:通过 initContainer 将只读的 ConfigMap 文件复制到可写路径,并调整权限。
  • 多实例部署:使用 Deployment 创建 3 个 Sentinel 实例以实现高可用。
  • 监控配置ConfigMap 定义了 Sentinel 的监控规则,包括主节点、超时、同步参数等。

Sentinel 服务暴露 (3.yaml)

最后,通过 Service 将 Sentinel 对外暴露,便于外部访问:

apiVersion: v1
kind: Service
metadata:name: redis-sentinelnamespace: test
spec:type: NodePortports:- nodePort: 30154port: 26379targetPort: 26379protocol: TCPselector:app: redis-sentinel

关键点解析

  • 外部访问支持:使用 NodePort 暴露 Sentinel 服务,监听宿主机的 30154 端口。
  • 服务选择器:通过标签 app: redis-sentinel 将流量路由到 Sentinel Pod。

部署步骤

  1. 创建命名空间 test
    kubectl create namespace test
    
  2. 应用 1.yaml 部署 Redis:
    kubectl apply -f 1.yaml
    
  3. 应用 2.yaml 部署 Sentinel:
    kubectl apply -f 2.yaml
    
  4. 应用 3.yaml 创建服务:
    kubectl apply -f 3.yaml
    
  5. 验证部署状态:
    kubectl -n test get pods
    kubectl -n test get svc
    

总结

本文展示了如何使用 Kubernetes 部署 Redis 主从架构和 Sentinel 高可用集群。通过灵活的 StatefulSetDeployment 配置,我们实现了高可靠性和动态配置管理,同时确保数据持久化和集群安全性。

建议:在生产环境中,可以进一步优化存储方案(如使用 PersistentVolume)并增强安全配置(如启用 Redis/Sentinel 认证)。

http://www.yayakq.cn/news/407393/

相关文章:

  • 营销型网站建设信融成都有什么好玩的吗
  • 做网站的电脑软件开发项目经理的职责
  • 网站建设销售前景足球积分排行榜最新
  • 凡科建站容易吗网站链接锚点怎么做
  • 怎么用vps的linux做网站企业网络方案的规划和设计
  • 怎样创建网站怎么做购物网站的购物车
  • 外贸汽车网站数控编程培训
  • 网站访客qq抓取统计系统怎么做网站做站点
  • 信息流优化师是做什么的搜索引擎优化实验报告
  • 机票网站开发知乎温州网站设计定制
  • 广州和信建设公司网站做网站是否需要自购服务器
  • 全国建设管理信息网站怎样做网络推广方法
  • 德吉机械东莞网站建设wordpress企业主题模板下载
  • 南阳市建设局网站南阳网站建设优化
  • wordpress子目录站点网站是用sql2012做的_在发布时可以改变为2008吗
  • chrome网站开发插件标书制作注意事项
  • 舟山网站网站建设wordpress虚线框
  • 通州建设局网站车载cms是什么意思
  • 周到的网站建设推广江西做企业网站的公司
  • 国内的优秀设计网站wordpress网站设置关键词
  • 怎样把自己的网站推广出去建设网站设计
  • 网站建设都包括哪些wordpress 4.0 打开慢
  • 图片瀑布流网站中山seo推广优化
  • 万链网站做的怎么样常宁seo外包
  • 怎么做网站的apiwordpress 关键词链接插件
  • 成都前几年网站建设公司电脑浏览器打不开怎么回事
  • 滁州网站设计国外网站打开速度慢的原因
  • 衡水做网站多少钱做个中英文网站多少钱
  • 佛山精品网站建设怎么自己创建小程序
  • 免费做网站软件哪里有创建网站的