小编Ere*_*ush的帖子

水平 pod 自动缩放器在 GKE 上过于激进地扩展自定义指标

我有以下的谷歌Kubernetes发动机水平波德Autoscaller配置比例由度量的自定义部署-RabbitMQ messages ready count特定队列:foo-queue

它正确地获取了度量值。

插入 2 条消息时,它将部署扩展到最多 10 个副本。我希望它可以扩展到 2 个副本,因为 targetValue 是 1 并且准备好了 2 条消息。

为什么它会如此积极地扩展?

HPA 配置:

apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
metadata:
  name: foo-hpa
  namespace: development
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: foo
  minReplicas: 1
  maxReplicas: 10
  metrics:
  - type: External
    external:
      metricName: "custom.googleapis.com|rabbitmq_queue_messages_ready"
      metricSelector:
        matchLabels:
          metric.labels.queue: foo-queue
      targetValue: 1
Run Code Online (Sandbox Code Playgroud)

rabbitmq kubernetes google-kubernetes-engine kubernetes-hpa

6
推荐指数
1
解决办法
1003
查看次数

调用 fork() 后使用 Python SDK 将数据上传到 Google Storage 时出现 403 错误

我正在尝试在 Linux 主机 (Ubuntu 18.04) 上的分叉进程中使用 Python SDK 将内容上传到 Google 存储桶操作失败,状态代码为 403:

google.api_core.exceptions.Forbidden: 403 POST https://www.googleapis.com/upload/storage/v1/b/temp-compare/o?uploadType=multipart :('请求失败,状态码',403,'预期之一', )

示例代码:

import random
import string
import json
import os
import requests
from datetime import datetime, timedelta
from google.cloud import storage

def upload_to_bucket(plainText):
    gcp_client = storage.Client.from_service_account_json("/path/to/google-bucket-credentials.json")
    bucket = gcp_client.get_bucket('bucket_name')
    bucket_file_name = random_file_name('json', 10)
    blob = bucket.blob(bucket_file_name)
    blob.upload_from_string(plainText)
    url = blob.generate_signed_url(expiration=datetime.utcnow() + timedelta(hours=48), method="GET")
    return url

def random_file_name(ext, length):
    return "%s.%s" % (''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(length)), ext)


if __name__ == "__main__": …
Run Code Online (Sandbox Code Playgroud)

fork google-cloud-storage google-cloud-platform python-3.6

1
推荐指数
1
解决办法
2890
查看次数

Kotlin 类应该是什么来表示带有类数组的 json

给定以下 JSON:

{
"from": 1,
"to": 3,
"results": [
    {
        "item": {
            "status": "SUCCESS",
            "statusMessage": "",
            "requestId": "1"
        }
    },
    {
        "item": {
            "status": "SUCCESS",
            "statusMessage": "",
            "requestId": "2"
        }
    },
    {
        "item": {
            "status": "SUCCESS",
            "statusMessage": "",
            "requestId": "3"
        }
    },
    {
        "item": {
            "status": "SUCCESS",
            "statusMessage": "",
            "requestId": "4"
        }
    }
]}
Run Code Online (Sandbox Code Playgroud)

为了使用反序列化,应该定义什么正确的 Kotlin 类kotlinx.serialization.json.Json

我努力了:

data class Response (
  val from: Long,
  val to: Long,
  val results: List<Result>
)

data class Result (
  val item: …
Run Code Online (Sandbox Code Playgroud)

kotlin json-deserialization kotlinx.serialization

0
推荐指数
1
解决办法
441
查看次数