小编Sal*_*elo的帖子

使用 Kustomize 将环境变量添加到 Kubernetes StatefulSet

我有一个像这样的 StatefulSet:

apiVersion: apps/v1
kind: StatefulSet
metadata:
  namespace: myns
  name: myapp
spec:
  replicas: 3
  template:
    spec:
      containers:
      - name: mycontainer
        image: ...
        ...
        env:
        - name: MY_ENV1
          value: "1"
Run Code Online (Sandbox Code Playgroud)

现在我想通过 Kustomize 添加第二个环境变量,因为它仅在开发环境中使用。我做了这样的事情:

namespace: myns

resources:
...

patches:
- patch: |-
    - op: add
      path: "/spec/template/spec/containers/0/env/-"
      value:
        - name: MY_ENV2
          value: "2"
  target:
    kind: StatefulSet
    namespace: myns
    name: myapp
Run Code Online (Sandbox Code Playgroud)

问题是它不起作用。如果我运行,kustomize build我看不到这个附加变量(我看到其他变体)。

谁能帮助我了解如何实施它?

kubernetes kustomize

7
推荐指数
2
解决办法
2万
查看次数

Kustomize nameSuffix 跳过某些资源

我正在使用 Kustomize 来管理同一集群的多个变体。我正在使用nameSuffix选项为我的所有资源添加后缀:

nameSuffix: -mysfx
Run Code Online (Sandbox Code Playgroud)

我的问题是一切正常,但仅将此后缀添加到一个服务资源会给我带来问题。我的问题是应用程序(Patroni)与必须调用的服务交互:

CLUSTER-NAME-config
Run Code Online (Sandbox Code Playgroud)

所以我想从nameSuffix. 我知道由于此功能的设计方式,这是不可能的。我在 StackOverflow 和网络上阅读了几篇文章。nameSuffix我知道我可以跳过对一类资源的使用。所以我尝试输入我的kustomization.yaml行:

configurations:
- kustomize-config/kustomize-config.yaml
Run Code Online (Sandbox Code Playgroud)

跳过所有服务资源。然后在文件中kustomize-config/kustomize-config.yaml

nameSuffix:
- path: metadata/name
  apiVersion: v1
  kind: Service
  skip: true
Run Code Online (Sandbox Code Playgroud)

但这行不通。

有谁知道这个配置有什么问题吗?

然后假设我现在可以跳过nameSuffix仅使用服务资源,我还有其他两个服务要添加此后缀。我需要做什么才能添加nameSuffix到这两项服务而不是上面提到的服务?

如果对此有更好的解决方案,请告诉我。

kubernetes kustomize

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

HTML按钮的background-color属性不起作用

下一页中

我有一个灰色按钮(请参阅第一本书的部分,它是页面上唯一的灰色按钮),但是应该是蓝色的。我从邮件服务中剪切并粘贴了代码(见下文)。属性:background-color:#47abd5; 不起作用。为什么?

<style>
    #mlb2-3734193 button.ml-subscribe-button {
        cursor: pointer;
        font-family: Open Sans!important;
        font-size: 24px !important;
        height: 60px;
        width: 250px;
        background-color: #47abd5;
        color: #ffffff!important;
        border: none;
        border-radius: 2px;
        padding: 0px 24px;
    }
</style>
<link href="https://fonts.googleapis.com/css?family=Open+Sans&   subset=latin,latin-ext" rel="stylesheet" type="text/css">
<form id="mlb2-3734193" action="//app.mailerlite.com/webforms/popup/z0d1n7" data-code="z0d1n7" data-id="243593" target="_blank">
    <div stylclass="button-preview">
        <button style="background-color: #47abd5;" type="submit" class="ml-subscribe-button">Iscriviti</button>
    </div>
</form>
<script type="text/javascript" src="//static.mailerlite.com/js/w/button.min.js?veb3acdd46bf692c067c6a9fe9fbc07d6"></script>
Run Code Online (Sandbox Code Playgroud)

html css

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

如何为 PostgreSQL 设置 Kubernetes CPU 和内存

我有一个带有 Patroni 的三个节点的 PostgreSQL 集群。该集群管理着非常高的工作负载,因此,它在生产环境中运行在裸机上。我们需要将此基础设施迁移到 Kubernetes(出于多种原因),我正在使用 PgBench 执行一些性能测试。首先,我比较了裸机和虚拟机,发现性能下降非常小。然后我比较了 VSI 和 Kubernetes,以了解 K8s 增加的开销。

现在我正在尝试微调CPU和内存。K8s 在具有 48 个 vCPU 和 192 Gb 的工作节点上运行。然而,部署 PostgreSQL 后我仍然看到:

NAME                                     CPU(cores)   MEMORY(bytes)   
postgresql-deployment-5c98f5c949-q758d   2m           243Mi           
Run Code Online (Sandbox Code Playgroud)

即使我将以下内容分配给 PostgreSQL 容器:

resources:
  requests:
    memory: 64Gi
  limits:
    memory: 64Gi
Run Code Online (Sandbox Code Playgroud)

如果我跑:

kubectl top pod <pod name> -n <namespace>

我得到以下信息:

NAME                                     CPU(cores)   MEMORY(bytes)   
postgresql-deployment-5c98f5c949-q758d   2m           244Mi           
Run Code Online (Sandbox Code Playgroud)

即使结果如下,K8s 仪表板也会出现相同的情况:

kubectl describe pod <pod name> -n <namespace>
Run Code Online (Sandbox Code Playgroud)

显示 Pod 在保证 QoS 和 64Gi RAM 的情况下运行以用于请求和限制。

这应该如何运作?

我不明白的另一件事是CPUlimitrequested. 我希望输入这样的内容:

resources: …
Run Code Online (Sandbox Code Playgroud)

postgresql kubernetes

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

标签 统计

kubernetes ×3

kustomize ×2

css ×1

html ×1

postgresql ×1