小编Jos*_*bel的帖子

GKE Kubernetes Autoscaler - 最大集群 cpu,达到内存限制

GKE Autoscaler 不会在 15 个节点之后扩展节点(以前的限制)

我已将Cluster 中的MinMax值更改为 17-25

在此处输入图片说明 然而,节点数停留在 14-15 并且没有增加,现在我的集群已满,没有更多的 pod 可以容纳,所以每个新部署都应该触发节点扩展并将自己安排到新节点上,这不是发生。

当我创建部署时,它停留在Pending状态并显示一条消息:

pod didn't trigger scale-up (it wouldn't fit if a new node is added): 1 max cluster cpu, memory limit reached
Run Code Online (Sandbox Code Playgroud)

最大集群 cpu,达到内存限制听起来最大节点数仍然是 14-15,这怎么可能?为什么它不会触发节点扩展?

ClusterAutoscaler 状态:

apiVersion: v1
data:
  status: |+
    Cluster-autoscaler status at 2020-03-10 10:35:39.899329642 +0000 UTC:
    Cluster-wide:
      Health:      Healthy (ready=14 unready=0 notStarted=0 longNotStarted=0 registered=14 longUnregistered=0)
                   LastProbeTime:      2020-03-10 10:35:39.608193389 +0000 UTC m=+6920.650397445
                   LastTransitionTime: 2020-03-10 09:49:11.965623459 +0000 UTC m=+4133.007827509
      ScaleUp:     NoActivity …
Run Code Online (Sandbox Code Playgroud)

kubernetes google-kubernetes-engine

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

TF keras API 与 TF 数据集问题-steps_per_epoch 参数问题

当试图拟合 Keras 模型时,该模型用tensorflow.kerasAPI编写并带有tf.Dataset诱导迭代器,该模型抱怨steps_per_epoch参数,即使我已将此参数设置为具体值。

下面是我的模型类

import tensorflow as tf
import numpy as np
from typing import Union, List
from tensorflow.keras.callbacks import ModelCheckpoint, EarlyStopping
from tensorflow.keras import layers
from tftools import TFTools


class TestServe():
    def __init__(self, tfrecords: Union[List[tf.train.Example], tf.train.Example], batch_size: int = 10, input_shape: tuple = (64, 23)) -> None:
        self.tfrecords = tfrecords
        self.batch_size = batch_size
        self.input_shape = input_shape

    def get_model(self):
        ins = layers.Input(shape=(64, 23))

        l = layers.Reshape((*self.input_shape, 1))(ins)
        l = layers.Conv2D(8, (30, 23), padding='same', activation='relu')(l) …
Run Code Online (Sandbox Code Playgroud)

python deep-learning tensorflow tensorflow-datasets

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

Django ModelMultipleChoiceField 1:N初始

我有两种型号,机器和设备

class Machine(models.Model):
    pass

class Device(models.Model):
    machine = models.ForeignKey(Machine, related_name='devices')
Run Code Online (Sandbox Code Playgroud)

现在在Django Admin中,在Machine change页面中,我希望能够添加1-N Device引用,它很好用,并且具有ManyToMany关系,这是它在admin中的外观(期望) 在此处输入图片说明

我正在尝试forms.ModelMultipleChoiceField用于1:N选择。我已经想出了保存这种关系的方法,但是提供初始值似乎并不起作用。

我如何尝试提供初始值:

class MachineForm(forms.ModelForm):
    class Meta:
        model = Machine
        fields = '__all__'

    devices = forms.ModelMultipleChoiceField(queryset=Device.objects.filter(machine=None).all(), required=False) 

    def __init__(self, *args, **kwargs):
        super(MachineForm, self).__init__(*args, **kwargs)
        if self.instance:
            self.fields['devices'].initial = self.instance.devices.all()

    def save(self, *args, **kwargs):
        instance = super(MachineForm, self).save(commit=False)
        self.fields['devices'].initial.update(machine=None)
        instance.save()
        self.cleaned_data['devices'].update(machine=instance)
        return instance
Run Code Online (Sandbox Code Playgroud)

在调试器中,我可以清楚地知道初始查询集是非空的:

initial <QuerySet [<Device: 10126>, <Device: 10127>]> 但是django admin中的字段仍然为空。

在此处输入图片说明

有人知道为什么吗?

编辑:

我已经试过了

self.fields['devices'].initial = self.instance.devices.all().values_list('id', flat=True)

没有运气。

编辑2:

调试日志来自 self.fields['devices'].__dict__

[api-857c7fc84d-rh42v api-app] empty_label …
Run Code Online (Sandbox Code Playgroud)

python django

5
推荐指数
0
解决办法
214
查看次数