8288分类目录 8288分类目录 8288分类目录
  当前位置:海洋目录网 » 站长资讯 » 站长资讯 » 文章详细 订阅RssFeed

Kubernetes 1.20.5 实现一个服务注册与发现到Nacos

来源:本站原创 浏览:175次 时间:2021-05-15

背景:

参照 Kubernetes 1.20.5搭建nacos,在kubernetes集群中集成了nacos服务。想体验下服务的注册与发现功能。当然了 也想体验下sentinel各种的集成,反正就是spring cloud alibaba全家桶的完整体验啊…一步一步来吧哈哈哈。先来一下服务的注册与发现。
特别鸣谢https://blog.didispace.com/spring-cloud-alibaba-1/,程序猿DD的系列文章昨天无意间看到的,很不错,已经收藏。

一. maven打包构建应用IMAGE镜像

注意:以下maven打包构建流程基本copy自https://blog.didispace.com/spring-cloud-alibaba-1/。所以就不做代码的搬运工了。项目演示的代码都可以去程序猿DD大佬的github去下载。

关 于服务提供者与服务消费者alibaba-nacos-discovery-server为服务提供者 alibaba-nacos-discovery-client-common为服务消费者强调一下。

1. 构建alibaba-nacos-discovery-server image

嗯 还的强调一下服务提供者!这个是…

由于我个人打包测试是要在kubernets集群中使用,并且跟nacos服务在同一命名空间。连接nacos这里我就使用了内部服务名。package 打包 target目录下生成alibaba-nacos-discovery-server-0.0.1-SNAPSHOT.jar jar包。

上传包到服务器改名app.jar ,复用Dockerfile

FROM openjdk:8-jdk-alpineVOLUME /tmpADD app.jar app.jarENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

打包镜像,将镜像上传到镜像仓库(个人使用了腾讯云的私有仓库,当然了也可以自己安装harbor做仓库)。

mv alibaba-nacos-discovery-server-0.0.1-SNAPSHOT.jar app.jardocker build -t ccr.ccs.tencentyun.com/XXXX/alibaba-nacos-discovery-server:0.1 .docker push  ccr.ccs.tencentyun.com/XXXX/alibaba-nacos-discovery-server:0.1

2 . 构建libaba-nacos-discovery-client-common image

基本步骤与上一步一样:

二. Kubernetes集群部署服务1. 部署alibaba-nacos-discovery-server

cat alibaba-nacos-discovery-server.yaml

apiVersion: apps/v1kind: Deploymentmetadata:  name: alibaba-nacos-discovery-serverspec:  replicas: 1  strategy:    rollingUpdate:      maxSurge: 1      maxUnavailable: 1  selector:    matchLabels:      app: alibaba-nacos-discovery-server  template:    metadata:      labels:        app: alibaba-nacos-discovery-server    spec:      containers:        - name: talibaba-nacos-discovery-server          image: ccr.ccs.tencentyun.com/XXXX/alibaba-nacos-discovery-server:0.1          ports:            - containerPort: 8001          resources:            requests:              memory: "256M"              cpu: "250m"            limits:              memory: "512M"              cpu: "500m"       imagePullSecrets:                                                      - name: tencent---apiVersion: v1kind: Servicemetadata:  name: alibaba-nacos-discovery-server  labels:    app: alibaba-nacos-discovery-serverspec:  ports:  - port: 8001    protocol: TCP    targetPort: 8001  selector:    app: alibaba-nacos-discovery-server

kubectl apply -f alib        aba-nacos-discovery-server.yaml -n nacos

kubectl get pods -n nacos

登陆nacos管理地址可以发现服务管理-服务列表有alibaba-nacos-discovery-server注册

2. 部署alibaba-nacos-discovery-client-common

消费者 消费者 消费者。自己老记不住
cat alibaba-nacos-discovery-client-common.yaml

apiVersion: apps/v1kind: Deploymentmetadata:  name: alibaba-nacos-discovery-commonspec:  replicas: 1  strategy:    rollingUpdate:      maxSurge: 1      maxUnavailable: 1  selector:    matchLabels:      app: alibaba-nacos-discovery-common  template:    metadata:      labels:        app: alibaba-nacos-discovery-common    spec:      containers:        - name: talibaba-nacos-discovery-common          image: ccr.ccs.tencentyun.com/XXXX/alibaba-nacos-discovery-client-common:0.1          ports:            - containerPort: 9000          resources:            requests:              memory: "256M"              cpu: "250m"            limits:              memory: "512M"              cpu: "500m"       imagePullSecrets:                                                      - name: tencent---apiVersion: v1kind: Servicemetadata:  name: alibaba-nacos-discovery-common  labels:    app: alibaba-nacos-discovery-commonspec:  ports:  - port: 9000    protocol: TCP    targetPort: 9000  selector:    app: alibaba-nacos-discovery-common

kubectl apply -f alibaba-nacos-discovery-client-common.yaml -n nacos

这个时候登陆nacos管理页面应该是有alibaba-nacos-discovery-client-common服务注册了。

3. 更改alibaba-nacos-discovery-server副本数验证服务

仔细看了下https://blog.didispace.com/spring-cloud-alibaba-1/ 他启动了两个alibaba-nacos-discovery-server实例,嗯 两个服务提供者。好验证一下nacos将服务上线下线的基础功能。正好我也扩容一下顺便补习一下scale命令

kubectl scale deployment/alibaba-nacos-discovery-server --replicas=2 -n nacos


前面访问alibaba-nacos-discovery-server服务都是只有10.0.5.120一个ip,deployment扩容完成后访问alibaba-nacos-discovery-client-common(消费者)放回了两个服务提供者轮训方式的两个ip。

观察nacos管理web页面,服务列表alibaba-nacos-discovery-server实例数量,健康实例都已经变成2:

点开alibaba-nacos-discovery-server服务详情。嗯集群下出现了两个实例的具体信息。

看到集群实例配置这里有个下线的功能想体验一下:

下线了10.5.208的实例 再访问一下。发现确实只有10.0.5.120节点了:

恢复实例访问服务提供者10.5.208。点击上线,不做其他设置。继续访问消费者应用应该是两个ip的轮询权重一样的:

简单记录 简单记录。积少成多…

  推荐站点

  • At-lib分类目录At-lib分类目录

    At-lib网站分类目录汇集全国所有高质量网站,是中国权威的中文网站分类目录,给站长提供免费网址目录提交收录和推荐最新最全的优秀网站大全是名站导航之家

    www.at-lib.cn
  • 中国链接目录中国链接目录

    中国链接目录简称链接目录,是收录优秀网站和淘宝网店的网站分类目录,为您提供优质的网址导航服务,也是网店进行收录推广,站长免费推广网站、加快百度收录、增加友情链接和网站外链的平台。

    www.cnlink.org
  • 35目录网35目录网

    35目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向35目录推荐、提交优秀网站。

    www.35mulu.com
  • 就要爱网站目录就要爱网站目录

    就要爱网站目录,按主题和类别列出网站。所有提交的网站都经过人工审查,确保质量和无垃圾邮件的结果。

    www.912219.com
  • 伍佰目录伍佰目录

    伍佰网站目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向伍佰目录推荐、提交优秀网站。

    www.wbwb.net