- 基于 spring-boot、 spring-cloud 的微服务demo, 带你快速的熟悉spring-cloud 微服务模式。
- 通过Docker实现 spring-cloud微服务容器化,实现传统应用到容器化的过度。
- 通过k8s编排如何实现sping-cloud服务到 kubernets平台部署、自动化编排调度。
注: 本项目意在如何快速的了解、搭建spring-cloud微服务,并从快速的实现容器化部署、以及kubernets平台的自动化编排部署的过程, 不涉及细节代码的开发。 如果有任何问题,请联系指正。
- 服务注册中心 eureka
- 文件配置中心 config
- 服务提供者
- 服务消费者 (ribbon、feign 负载均衡客户端模式)
- 服务断路器 hystrix
- 服务网关 zuul
- 服务监控 admin
- 服务链路监控 zipkin
以config 服务为例
1. cd config
2. docker build -t xiliangma/mscloud-config .
以config 服务为例
docker run -p 8888:8888 --restart=unless-stopped -d -v /tmp/mscloud/config:/mscloud/config mxiliangma/mscloud-config:latest
docker-compose up -d
注意:如果部署在公有云服务器,需要将配置中心的各个服务域名配置成ip,或者购买云服务的自定义域名解析,否则服务注册发现失败。
spring cloud 微服务 如何通过 docker-compose 编排
-
集群搭建
kubeadm 搭建k8s集群: https://blog.csdn.net/weixin_41806245/article/details/89381752 -
部署 mscloud
kubectl apply -f kubernetes/*.yml
spring cloud 微服务 迁移到 kubernetes平台
- Spring-Cloud 实战 一 服务配置中心 config
- Spring-Cloud 实战 二 服务注册与发现 eureka
- Spring-Cloud 实战 三 服务提供者
- Spring-Cloud 实战 四 服务消费 feign
- Spring-Cloud 实战 五 服务消费 feign + 断路器 hystrix
- Spring-Cloud 实战 六 网关 zuul
- Spring-Cloud 实战 七 全链路监控 zipkin
- Spring-Cloud 实战 八 服务监控 spring-boot admin
- Spring-Cloud 实战 十 spring cloud 微服务迁移到 kubernetes 集群
- istio 实战 一 Kubernetes 中快速搭建 istio
- istio 实战 二 bookinfo 部署
- istio 实战 三 智能路由
- istio 实战 四 权重路由以及监控
- istio 实战 五 网格可视化 - kiali
- istio 实战 六 全链路监控 - Jaeger
- 配置中心 config:http://mscloud-config-service:8888/eureka-service/dev
- 服务注册中心 eureka:http://mscloud-eureka-service:7000/
- 服务提供者: http://mscloud-provider-service:8000/provider/port
- 服务消费者feign:http://mscloud-consumer-service-feign:9001/consumer/port
- 断路器hystrix dashboard:http://mscloud-consumer-service-feign:9001/hystrix
- 链路监控 zipkin:http://mscloud-zipkin-service:8080/zipkin/
- 服务网管zuul:http://mscloud-zuul-service:5000/api/feign/consumer/port?token=test
- 服务监控 amdin:http://mscloud-admin-service:2000/#/applications
修改 hosts 文件,替换为自己的ip(如果以容器部署必须修改成本地ip)
127.0.0.1 mscloud-config-service
127.0.0.1 mscloud-eureka-service
127.0.0.1 mscloud-provider-service
127.0.0.1 mscloud-consumer-feign-service
127.0.0.1 mscloud-consumer-ribbon-service
127.0.0.1 mscloud-zipkin-service
127.0.0.1 mscloud-admin-service
127.0.0.1 mscloud-config-service
127.0.0.1 mscloud-zuul-service
-
by docker
docker rm -f $(docker ps -a --format "table {{.Names}}" | grep mscloud) -
by docker-compose
docker-compose down -
by kubernetes
kubectl delete -f kubernetes/01-config.yml kubectl delete -f kubernetes/02-eureka.yml kubectl delete -f kubernetes/03-provider.yml kubectl delete -f kubernetes/04-consumer-feign.yml kubectl delete -f kubernetes/05-zuul.yml kubectl delete -f kubernetes/06-admin.yml kubectl delete -f kubernetes/07-zipkin.yml 或者 kubectl delete -f kubernetes/*.yml


