k8s搭建高可用spring-cloud-config配置中心集群

2023-11-02

查找镜像

镜像地址: https://hub.docker.com/r/lhstack/config-server
在这里插入图片描述

docker部署

关闭认证方式部署

docker run --name config-server -p 7000:7000 -e EUREKA_SERVER_URL="http://admin:123456@10.43.87.61:8761/eureka" -e SECURITY_ENABLE=false -d lhstack/config-server

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

开启认证方式部署

# 停掉之前运行的容器
docker rm -f config-server
# 启动带认证方式的容器,使用默认用户名和密码
docker run --name config-server -p 7000:7000 -e EUREKA_SERVER_URL="http://admin:123456@10.43.87.61:8761/eureka" -v ${PWD}/config:/config-server/conf/config -d lhstack/config-server

这个时候就需要用户名和密码了
在这里插入图片描述

docker-compose方式部署

# 停掉启动的容器
docker rm -f config-server
cat > docker-compose.yml <<EOF
version: '3'
services:
  config-server-1:
    image: lhstack/config-server
    container_name: config-server-1
    ports:
    - 7001:7000
    environment:
      EUREKA_SERVER_URL: "http://admin:123456@10.43.87.61:8761/eureka"
      JAVA_OPTS: "-Xmx128m -Xms128m"
      SECURITY_USERNAME: admin
      SECURITY_PASSWORD: admin
    volumes:
    - ./config:/config-server/conf/config
    deploy:
      resources:
        limits:
          cpus: '1'
          memory: '256M'
    logging:
      options:
        max-file: '1'
        max-size: '3k'
  config-server-2:
    image: lhstack/config-server
    container_name: config-server-2
    ports:
    - 7002:7000
    environment:
      EUREKA_SERVER_URL: "http://admin:123456@10.43.87.61:8761/eureka"
      JAVA_OPTS: "-Xmx128m -Xms128m"
      SECURITY_USERNAME: admin
      SECURITY_PASSWORD: admin
    volumes:
    - ./config:/config-server/conf/config
    deploy:
      resources:
        limits:
          cpus: '1'
          memory: '256M'
    logging:
      options:
        max-file: '1'
        max-size: '3k'
EOF
docker-compose up -d

在这里插入图片描述
在config目录下面创建对应配置文件
在这里插入图片描述
在这里插入图片描述

k8s方式部署

使用configMap挂载配置

# 停掉启动的配置中心
docker-compose down
# 生成脚本
cat > config-server.yml<<EOF
apiVersion: v1
kind: Service
metadata:
  name: config-server
spec:
  type: ClusterIP
  ports:
  - name: http
    port: 7000
  selector:
    app: config-server
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: config-server
data:
  test-a.yml: |
    server:
      port: 8761
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: config-server
spec:
  replicas: 2
  selector:
    matchLabels:
      app: config-server
  template:
    metadata:
      labels:
        app: config-server
    spec:
      volumes:
      - name: config
        configMap:
          name: config-server
      containers:
      - name: config-server
        image: lhstack/config-server
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 7000
        env:
        - name: "JAVA_OPTS"
          value: "-Xmx512m -Xms512m"
        - name: EUREKA_SERVER_URL
          value: "http://admin:123456@10.43.87.61:8761/eureka"
        - name: SECURITY_USERNAME
          value: "admin"
        - name: SECURITY_PASSWORD
          value: "123456"
        volumeMounts:
        - name: config
          mountPath: /config-server/conf/config
        resources:
          requests:
            cpu: 50m
            memory: 64Mi
          limits:
            cpu: 100m
            memory: 512Mi
EOF
kubectl apply -f config-server.yml
kubectl get pod

在这里插入图片描述
第一次安装会先拉取镜像
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
修改configMap中配置的内容,加上test-b.yml配置
在这里插入图片描述

在这里插入图片描述
等待几秒钟,再次访问配置中心
在这里插入图片描述

挂载本地目录方式

# 停掉之前启动的集群
kubectl delete -f config-server.yml
# 创建集群
cat > config-server.yml<<EOF
apiVersion: v1
kind: Service
metadata:
  name: config-server
spec:
  type: ClusterIP
  ports:
  - name: http
    port: 7000
  selector:
    app: config-server
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: config-server
spec:
  replicas: 2
  selector:
    matchLabels:
      app: config-server
  template:
    metadata:
      labels:
        app: config-server
    spec:
      volumes:
      - name: config
        hostPath:
          path: /home/springcloud/config-server/config #挂载配置所在目录
      containers:
      - name: config-server
        image: lhstack/config-server
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 7000
        env:
        - name: "JAVA_OPTS"
          value: "-Xmx512m -Xms512m"
        - name: EUREKA_SERVER_URL
          value: "http://admin:123456@10.43.87.61:8761/eureka"
        - name: SECURITY_USERNAME
          value: "admin"
        - name: SECURITY_PASSWORD
          value: "123456"
        volumeMounts:
        - name: config
          mountPath: /config-server/conf/config
        resources:
          requests:
            cpu: 50m
            memory: 64Mi
          limits:
            cpu: 100m
            memory: 512Mi
EOF
# 启动集群
kubectl apply -f config-server.yml

在这里插入图片描述
添加配置到挂载的目录里面
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

测试应用加载配置中心配置启动

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

k8s搭建高可用spring-cloud-config配置中心集群 的相关文章

随机推荐

  • Oracle ROWNUM用法和分页查询总结

    原文地址 http blog csdn net fw0124 article details 42737671 转载 Oracle的分页查询语句基本上可以按照本文给出的格式来进行套用 Oracle分页查询格式 一 http yangting
  • 了解聊天机器人ChatGPT的深度学习技术

    近年来 随着深度学习技术的飞速发展 聊天机器人已经逐渐走进了我们的生活中 这些聊天机器人可以和人类进行语言交互 能够回答问题 解决问题 提供服务等等 为人们的日常生活提供了极大的便利 其中 ChatGPT就是一种基于深度学习技术的聊天机器人
  • 程序员如何90天成功转行黑客(网络安全)?

    有人说 黑客到底比程序员高在哪 为什么很多人开始转行了 其实黑客都是程序员 但是并不是所有的程序员都是黑客 从企业和社会需求来看 现在真不缺程序猿 反而大量的缺安全工程师 同样8000块月薪 程序猿一大把 安全工程师却很难招到 最重要的是程
  • java中实现多线程的三种方式

    java中实现多线程的三种方式 1 实现多线程的方法 在java中实现多线程的两途径 继承Thread类 实现Runable接口 Callable 2 继承Thread类实现多线程 继承类Thread是支持多线程的功能类 只要创建一个子类就
  • docker安装jupyter科学镜像及使用

    2020 04 03 镜像 为了方便在虚拟机上进行实验研究 本次在自己的虚拟机上安装jupyter 因为要使用jupyter 同时还要有python的环境 在docker上搜索了相关的镜像 但都是个人做的 后来发现了jupyter官方制作了
  • SQL中binary 和 varbinary的区别 blob

    http www cnblogs com lovevivi archive 2013 09 25 3339087 html binary 和 varbinary 固定长度 binary 的或可变长度 varbinary 的 binary 数
  • 查看文件的MD5 值

    从网上下载到资源文件后 为了确保下载的文件没有被黑客非法篡改 一般都会校验一下MD5是否与最初上传的版本是否一致 查看两个文件的MD5 值可以判断文件在传输过程中有没有损坏 或者丢失字节 Windows电脑 window 键盘左下角Ctrl
  • SpringBoot前后端调用接口下划线与驼峰之间转换

    1 前言 最近在开发过程中 自测自己的接口的时候 会出现一下驼峰与下划线转换问题 今天就出篇文章写下吧 顺便加深下印象 2 步骤 2 1导入maven依赖 注意 因为我的项目中引入了Redisson的依赖 所以就不用单独引入jackson依
  • 解决 Element-UI 的 el-dialog 对话框移动问题的方法

    系列文章目录 文章目录 系列文章目录 前言 一 问题描述 二 解决方法 1 安装 vuedraggable 库 2 引入并使用 vuedraggable 3 将 el dialog 放入 draggable 组件 总结 前言 Element
  • python3.8 环境下安装 robot framework 遇到的问题及解决

    博客原址 https testerhome com topics 23384 安装过程就不多说了 反正就是很心酸 以下是安装步骤 1 安装python3 8 2 在线安装robotframework pip install robotfra
  • Hyperledger fabric查询区块错误问题解决:“error Entry not found in index”

    最近写了一个Hyperledger Fabric区块监控的程序 功能是应用程序监听区块生成事件 并查询新生成区块的信息 然而 当客户端收到Peer发来的blockEvent事件后 调用Channel对象的queryBlockByNumber
  • Java面试回忆录:教你解决线上频出MySQL死锁问题!附带学习经验

    引言 最近项目上线的频率颇高 连着几天加班熬夜 身体有点吃不消精神也有些萎靡 无奈业务方催的紧 工期就在眼前只能硬着头皮上了 脑子浑浑噩噩的时候 写的就不能叫代码 可以直接叫做Bug 我就熬夜写了一个bug被骂惨了 Java并发编程技术官笔
  • 【UE4】 修改引擎-添加更多视口窗口Viewport

    先看效果 视口添加了viewport 5 和 viewport 6 前言 此修改必须基于虚幻引擎源码版 请先安装源码版虚幻引擎 源码版安装教程来自CSDN 虚幻4源码版安装 教程开始 首先安装源码版引擎 这里用的是4 26 2源码版引擎 1
  • 小米笔记本重装系统没有wifi功能和扬声器没有声音解决的过程(红米G游戏本)

    要看解决方法的直接看文章最后 经过 1 因为自己已经用pe系统给很多同学包括我自己重装过很多次系统了 所以最开始打算用pe给小米笔记本装系统 pe盘里面装的镜像是MSDN上面下载的最新1909的win10 2 最开始用pe 系统给小米笔记本
  • 初学nodejs必看,nodejs入门良言。

    断断续续用nodejs开发也快一年了 不得不说本人天资驽钝实在不敢恭维技术 只能说久病成医 坑踩的多了就知道怎么避免了 在此写写几句自己踩过的坑 希望能帮到即将步入nodejs这行的同学们 注 这篇博客技术点不多 更多的是跟大家分享一个思路
  • Java练习——输入n个数,存入数组,进行排序输出

    题目 输入n个数 存入数组 进行排序输出 package paixu import java util Scanner public class paixu public static void main String args int z
  • 数据分析常用库(包含pytorch、tensorflow安装)

    1 pandas 2 numpy 3 sklearn 安装的时候是 scikit learn 4 matplotlib 5 pytorch cuda版本pytorch安装 不一定需要更新英伟达的驱动 电脑cuda版本可以高于pytorch的
  • NSSCTF之Web篇刷题记录(13)

    NSSCTF之Web篇刷题记录 12 GXYCTF 2019 BabyUpload GKCTF 2020 cve版签到 HCTF 2018 Warmup GDOUCTF 2023 泄露的伪装 羊城杯 2020 easycon HNCTF 2
  • 服务器 风扇测试软件,图解服务器风扇安装的正确方法

    一般不是太垃圾的机箱总有两个地方可以装风扇 前面的一般在硬盘托架处 后面的一般在电源下面 键盘口上方 有的机箱出厂就已经装好1 2个风扇了 图中越红的区域温度相对越高 应该什么样的风道合理呢 1 前后都装机箱风扇的情况 应该前进后出 这样机
  • k8s搭建高可用spring-cloud-config配置中心集群

    k8s搭建高可用配置中心 查找镜像 docker部署 关闭认证方式部署 开启认证方式部署 docker compose方式部署 k8s方式部署 使用configMap挂载配置 挂载本地目录方式 测试应用加载配置中心配置启动 查找镜像 镜像地