当前位置: 首页 > 知识库问答 >
问题:

Spring Boot应用程序在被Kubernetes缩放时崩溃

皮献
2023-03-14

我有一个Spring引导应用程序运行与Spring执行器启用。我正在使用Spring执行器健康endpoint作为准备和活泼检查。所有的工作都很好与一个副本。当我扩展到2个副本时,两个吊舱都崩溃了。它们都失败了就绪状态检查,并最终在无休止的破坏/重新创建循环中结束。如果我将它们缩放到1个副本,集群将恢复,并且Spring Boot应用程序可用。你知道是什么导致了这个问题吗?

下面是部署配置(Spring Boot应用程序的上下文根是/dept):

apiVersion: apps/v1
kind: Deployment
metadata:
  name: gl-dept-deployment
  labels:
    app: gl-dept
spec:
  replicas: 1
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 1
      maxSurge: 1
  selector:
    matchLabels:
      app: gl-dept
  template:
    metadata:
      labels:
        app: gl-dept
    spec:
      containers:
      - name: gl-dept
        image: zmad5306/gl-dept:latest
        imagePullPolicy: Always
        ports:
        - containerPort: 8080
        livenessProbe:
          httpGet:
            path: /dept/actuator/health
            port: 8080
          initialDelaySeconds: 15
          periodSeconds: 10
          timeoutSeconds: 10
          successThreshold: 1
          failureThreshold: 5
        readinessProbe:
          httpGet:
            path: /dept/actuator/health
            port: 8080
          initialDelaySeconds: 15
          periodSeconds: 10
          timeoutSeconds: 10
          successThreshold: 1
          failureThreshold: 5

共有1个答案

贲凌
2023-03-14

curl命令将挂起。显示整个minikube服务器挂起,仪表板退出响应

因此,在这种情况下,我想支持minikube的VM的大小太小,无法处理部署在其中的所有项。我还没有玩过minikube以了解它从libmachine基础上带来了多少收入,但是在docker-machine的情况下,可以提供--virtualbox-memory=4096(或者设置一个环境变量env virtualbox_memory_size=4096 docker-machine...)。当然,应该使用与minikube使用的驱动程序相对应的内存设置(so、HyperKit、xhyve、HyperV,随便什么)。

 类似资料:
  • 我是kubernetes的新手,需要在openshift平台上使用k8s confimap将springboot应用程序的属性文件外部化。我已将属性文件保存在git repo中,作为“greeter.message=Spring Bootmyapplication.properties已在库伯内特斯上挂载为卷!”并使用“oc create confimap myconfig--from-file=

  • 当我运行以下代码时,我的应用程序崩溃: 这是我的Logcat输出: 03-26 12:35:16.900: E/AndroidRuntime(30127): FATAL EXCEPTION: main 03-26 12:35:16.900: E/AndroidRuntime(30127):java.lang.RuntimeException:无法启动活动ComponentInfo{nl.appon

  • 一调用方法,我的计时器应用程序就崩溃了,它显示的对象引用为空,尽管我做得正确,但我找不到问题。请,某人,看看下面的代码:(我也附上logcat) 原因:java.lang.NullPointerException:尝试对空对象引用调用虚拟方法“void android.os.CountDownTimer.Cancel()”

  • 我是新的Android。我试图将FB登录与我的Android应用程序集成。我已经按照developers.facebook.com的所有说明进行了集成。然而,当我试图运行我的应用程序时,它会在发布时崩溃。 请注意,我的AndroidManifest.xml中已经有Facebook应用程序ID、元数据标签和android活动标签。 布局如下: 以下是my LoginActivity的代码片段: 以下

  • 所以我正在制作一个简单的寻宝游戏。我已经实现了SurfaceHolder.Callback和OnTouchListener方法。当触摸屏幕以挖掘宝藏时,应用程序崩溃。 下面是 DrawSurface 类的代码: 以下是我收到的错误消息: E/AndroidRuntime: FATAL EXCEPTION: main Process:justinrhinehart.cse.fullsail.trea

  • 自定义datePicker代码: 这就是我如何在我的主要活动中使用这个类: Logcat: