2020-09-22

springcloud in k8s springcloud项目部署到k8s

原git代码:https://github.com/wengmingdong/springcloudk8s.git
实验git代码:https://gitee.com/seaapex2020/springcloudk8s.git
引用git代码: https://github.com/wengmd07/scloudk8scfg.git
一、创建spring cloud eureka的k8s的yaml

[root@hjwds20-73 springcloudk8s]# cd eureka/ &&  mvn clean install -Dmaven.test.skip=true
[root@hjwds20-73 springcloudk8s]# docker build -t  harbor.od.com/library/eureka:v1 .
[root@hjwds20-73 springcloudk8s]# docker push harbor.od.com/library/eureka:v1
[root@hjwds20-73 eureka]# cat eureka-deployment.yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: eureka
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: eureka
    spec:
      containers:
      - name: eureka
        image: harbor.od.com/library/eureka:v1
        env:
        - name: AUTHOR
          value: eureka
        ports:
        - containerPort: 7000
[root@hjwds20-73 eureka]# cat eureka-service.yaml
apiVersion: v1
kind: Service
metadata:
  name: eureka-server
spec:
  ports:
  - port: 7000
    protocol: TCP
    targetPort: 7000
  type: NodePort
  selector:
    app: eureka
# cat eureka-ingress.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
  name: app-ingress
spec:
  rules:
  - host: eureka.od.com
    http:
      paths:
      - backend:
          serviceName: eureka-server
          servicePort: 7000

部署
1、kubectl create -f eureka-deployment.yaml
2、kubectl get pod -o wide
3、查看pod日志: kubectl logs -f
kubectl logs -f --tail 1000 eureka-64c877d644-hk6jj

2020-09-22 02:36:56.248  INFO 1 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Located managed bean 'environmentManager': registering with JMX server as MBean [org.springframework.cloud.context.environment:name=environmentManager,type=EnvironmentManager]
2020-09-22 02:36:56.261  INFO 1 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Located managed bean 'refreshScope': registering with JMX server as MBean [org.springframework.cloud.context.scope.refresh:name=refreshScope,type=RefreshScope]
2020-09-22 02:36:56.278  INFO 1 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Located managed bean 'configurationPropertiesRebinder': registering with JMX server as MBean [org.springframework.cloud.context.properties:name=configurationPropertiesRebinder,context=2f686d1f,type=ConfigurationPropertiesRebinder]
2020-09-22 02:36:56.290  INFO 1 --- [           main] o.s.c.support.DefaultLifecycleProcessor  : Starting beans in phase 0
2020-09-22 02:36:56.291  INFO 1 --- [           main] o.s.c.n.e.s.EurekaServiceRegistry        : Registering application eureka-server with eureka with status UP
2020-09-22 02:36:56.297  INFO 1 --- [      Thread-13] o.s.c.n.e.server.EurekaServerBootstrap   : Setting the eureka configuration..
2020-09-22 02:36:56.298  INFO 1 --- [      Thread-13] o.s.c.n.e.server.EurekaServerBootstrap   : Eureka data center value eureka.datacenter is not set, defaulting to default
2020-09-22 02:36:56.298  INFO 1 --- [      Thread-13] o.s.c.n.e.server.EurekaServerBootstrap   : Eureka environment value eureka.environment is not set, defaulting to test
2020-09-22 02:36:56.322  INFO 1 --- [      Thread-13] o.s.c.n.e.server.EurekaServerBootstrap   : isAws returned false
2020-09-22 02:36:56.328  INFO 1 --- [      Thread-13] o.s.c.n.e.server.EurekaServerBootstrap   : Initialized server context
2020-09-22 02:36:56.329  INFO 1 --- [      Thread-13] c.n.e.r.PeerAwareInstanceRegistryImpl    : Got 1 instances from neighboring DS node
2020-09-22 02:36:56.329  INFO 1 --- [      Thread-13] c.n.e.r.PeerAwareInstanceRegistryImpl    : Renew threshold is: 1
2020-09-22 02:36:56.329  INFO 1 --- [      Thread-13] c.n.e.r.PeerAwareInstanceRegistryImpl    : Changing status to UP
2020-09-22 02:36:56.337  INFO 1 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 7000 (http) with context path ''
2020-09-22 02:36:56.341  INFO 1 --- [      Thread-13] e.s.EurekaServerInitializerConfiguration : Started Eureka Server
2020-09-22 02:36:56.344  INFO 1 --- [           main] .s.c.n.e.s.EurekaAutoServiceRegistration : Updating port to 7000
2020-09-22 02:36:56.348  INFO 1 --- [           main] c.w.s.eureka.EurekaServiceApplication    : Started EurekaServiceApplication in 8.402 seconds (JVM running for 9.121)

4、kubectl create -f eureka-service.yaml
5、kubectl create -f eureka-ingress.yaml
6、查看结果在这里插入图片描述
二、创建spring cloud config server的k8s的yaml

mvn clean install -Dmaven.test.skip=true 
docker build -t harbor.od.com/library/config:v1 .
[root@hjwds20-73 config]# cat config-server-deployment.yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: config-server
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: config-server
    spec:
      containers:
      - name: config-server
        image: harbor.od.com/library/config:v1
        env:
        - name: AUTHOR
          value: config-server
        ports:
        - containerPort: 12000
[root@hjwds20-73 config]# cat config-server-service.yaml
apiVersion: v1
kind: Service
metadata:
  name: config-server
spec:
  ports:
  - port: 12000
    protocol: TCP
    targetPort: 12000
  type: NodePort
  selector:
    app: config-server

部署
kubectl apply -f config-server-deployment.yaml
kubectl apply -f config-server-service.yaml
3、查看结果
在这里插入图片描述
三、创建spring cloud config client的k8s的yaml
部署

mvn clean install -Dmaven.test.skip=truedocker build -t harbor.od.com/library/config-client:v1 .


[root@hjwds20-80 springcloudk8s]# cat config-client-deployment.yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: config-client
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: config-client
    spec:
      containers:
      - name: config-client
        image: harbor.od.com/library/config-client:v1
        env:
        - name: AUTHOR
          value: config-client
        ports:
        - containerPort: 13000


[root@hjwds20-80 springcloudk8s]# cat config-client-service.yaml
apiVersion: v1
kind: Service
metadata:
  name: config-client
spec:
  ports:
  - port: 13000
    protocol: TCP
    targetPort: 13000
  type: NodePort
  selector:
    app: config-client


[root@hjwds20-80 springcloudk8s]# cat config-client-ingress.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
  name: client-ingress
spec:
  rules:
  - host: client.od.com
    http:
      paths:
      - backend:
          serviceName: config-client
          servicePort: 13000

kubectl apply -f config-client-deployment.yaml
kubectl apply -f config-client-service.yaml
kubectl apply -f config-client-ingress.yaml

查看结果
(1) 获取config-client暴露的端口

[root@hjwds20-71 eureka]# kubectl get svc
NAME             TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)           AGE
config-client    NodePort    192.168.146.60   <none>        13000:30490/TCP   8m45s
config-server    NodePort    192.168.32.40    <none>        12000:30996/TCP   22m
eureka-server    NodePort    192.168.113.60   <none>        7000:30698/TCP    16h

[root@hjwds20-71 eureka]# curl 192.168.146.60:13000/info
dev22

dev22就是来自github上的
在这里插入图片描述
在这里插入图片描述

内容概要:本书《Deep Reinforcement Learning with Guaranteed Performance》探讨了基于李雅普诺夫方法的深度强化学习及其在非线性系统最优控制中的应用。书中提出了一种近似最优自适应控制方法,结合泰勒展开、神经网络、估计器设计及滑模控制思想,解决了不同场景下的跟踪控制问题。该方法不仅保证了性能指标的渐近收敛,还确保了跟踪误差的渐近收敛至零。此外,书中还涉及了执行器饱和、冗余解析等问题,并提出了新的冗余解析方法,验证了所提方法的有效性和优越性。 适合人群:研究生及以上学历的研究人员,特别是从事自适应/最优控制、机器人学和动态神经网络领域的学术界和工业界研究人员。 使用场景及目标:①研究非线性系统的最优控制问题,特别是在存在输入约束和系统动力学的情况下;②解决带有参数不确定性的线性和非线性系统的跟踪控制问题;③探索基于李雅普诺夫方法的深度强化学习在非线性系统控制中的应用;④设计和验证针对冗余机械臂的新型冗余解析方法。 其他说明:本书分为七章,每章内容相对独立,便于读者理解。书中不仅提供了理论分析,还通过实际应用(如欠驱动船舶、冗余机械臂)验证了所提方法的有效性。此外,作者鼓励读者通过仿真和实验进一步验证书中提出的理论和技术。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值