k8s 部署springcloud

如下微服务:

  • demo-service 服务提供方
  • demo-provider 服务消费方
  • eureka-server 注册中心
  • api-gateway 网关

 

1.创建pod,将demo-service运行在docker中,通过pod运行并启动docker,pod通过rc创建,不直接创建,直接创建的pod无法进行扩容

apiVersion: v1
kind: ReplicationController
metadata:
 name: demo-service
spec:
 replicas: 2
 selector:
  app: demo-service
 template:
  metadata:
   labels:
    app: demo-service
  spec:
   containers:
    - name: demo-service
      image: registry.cn-beijing.aliyuncs.com/tianming/demo-service:latest #镜像名称,规则是 地址+镜像库+镜像名称+版本tag
      ports:
      - containerPort: 8081 #服务暴露的端口

2.定义服务,以及服务暴露的接口,此时创建的服务会管理步骤1创建的pod,因为设置了 LoadBalancer,所以可以通过 external ip 在外部网络访问到。
在 Prod 环境中,我们不会这样做,一般只有 api-gateway 项目才会对外暴露访问端口
apiVersion: v1
kind: Service
metadata:
 name: demo-service
spec:
 type: LoadBalancer
 ports:
  - port: 8081
 selector:
  app: demo-service

posted on 2018-05-03 14:00  rigidwang  阅读(4377)  评论(0编辑  收藏  举报