小编Alo*_*ngh的帖子

我可以列出所有标准Go软件包吗?

Go中是否可以列出所有标准/内置软件包(即,与GoLang安装一起安装的软件包)?

我有一个软件包列表,我想弄清楚哪些软件包是标准的。

go go-packages

177
推荐指数
3
解决办法
7865
查看次数

如何平衡容器?

如何加载平衡运行简单Web应用程序的docker容器?

我在一个主机中运行了3个Web容器.如何对我的Web容器进行负载平衡?

load-balancing nginx haproxy docker coreos

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

如何在CoreOS中加载平衡服务?

  • 我有一个运行3个web conntainers的coreos集群,每个集合运行相同的Web应用程序.
  • 如何使用haproxy和nginx将我的请求与这些正在运行的容器进行负载均衡.
  • 请建议.

nginx haproxy docker coreos

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

使 systemctl 在 debian 拉伸镜像的容器内部工作

目的——我想要实现什么?

我想systemctl从运行 kubernetes 节点的容器内部进行访问(ami:运行 debianstretch)

工作设置:

  • 节点 AMI:kope.io/k8s-1.10-debian-jessie-amd64-hvm-ebs-2018-08-17

  • 节点目录挂载到容器中才能工作systemctl

    • /var/运行/dbus
    • /运行/systemd
    • /bin/systemctl
    • /etc/systemd/系统

不工作设置:

  • 节点 AMI:kope.io/k8s-1.11-debian-stretch-amd64-hvm-ebs-2018-08-17

  • 节点目录挂载到容器中才能工作systemctl

    • /var/运行/dbus
    • /运行/systemd
    • /bin/systemctl
    • /etc/systemd/系统

尝试调试解决问题

debian-stretch要使用不支持systemctl相同安装的映像来调试此问题debian-jessie

1)我首先通过安装上述卷来启动 nginx 部署

kubectl apply -f https://k8s.io/examples/application/deployment.yaml

kubectl exec -it nginx-deployment /bin/bash

root@nginx-deployment-788f65877d-pzzrn:/# systemctl
systemctl: error while loading shared libraries: libsystemd-shared- 
232.so: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)

2)如上问题显示libsystemd-shared-232.so找不到文件。我通过查看节点找到了实际路径。

admin@ip-10-0-20-11:~$ sudo find / -iname 'libsystemd-shared-232.so'
/lib/systemd/libsystemd-shared-232.so
Run Code Online (Sandbox Code Playgroud)

3)在nginx pod中安装/lib/systemd …

debian systemd docker kubernetes kops

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

使用Google作为OIDC提供者,而不会泄漏kubernetes中的客户端机密

我们只有一个kubernetes开发集群。我们希望为在此开发集群上工作的每个开发人员提供命名空间受控访问。

我们想使用Google作为kubernetes API支持的OIDC提供程序来对其进行身份验证。

但这要求客户机密要成为其中的一部分~/.kube/config

users:
- name: you@yourdomain.com
  user:
    auth-provider:
      name: oidc      
      config:
        client-id: <client-id>
        client-secret: <client-secret>
        idp-issuer-url: https://accounts.google.com        
        id-token: <id-token>
        refresh-token: <refresh-token>
Run Code Online (Sandbox Code Playgroud)

我们不希望将用户机密泄露给用户,因为当开发人员离开组织时,客户机密将被泄露,并且可能被滥用来模仿。

请建议如何使用google作为OIDC提供程序来在kubernetes集群中对用户进行身份验证,而又不泄露客户端机密。

authentication google-oauth openid-connect kubernetes

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

Kubernetes CRD 中状态的最大大小?

Kubernetes 中的 Kubernetes 规范大小和状态大小是否有限制?

我有一个用例,其中运算符规范是正则表达式,并且正则表达式扩展为许多我必须存储其状态的实际项目。

例子:

type RedshiftSinkSpec struct {
    TopicRegexes string `json:"topicRegexes"`
}

type Topic string

type RedshiftSinkStatus struct {
    // +optional
    CurrentMaskStatus map[Topic]MaskStatus `json:"currentMaskStatus,omitempty"`

    // +optional
    DesiredMaskStatus map[Topic]MaskStatus `json:"desiredMaskStatus,omitempty"`
}
Run Code Online (Sandbox Code Playgroud)

由于主题数量是根据正则表达式计算的。我不知道对于其他人来说数据结构可以增长到多大。所以希望在某种程度上限制它。因此需要有关 Kubernetes 允许的最大限制的帮助。

此外,有必要这样做以节省 Redshift 连接数。无法真正将问题分解为一个主题的多个crd。

请建议。

design-patterns kubernetes kubernetes-custom-resources kubernetes-operator

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

如何找到 Redshift 中访问次数最多的表?

我们正在将实时数据传输到 Redshift。瓶颈是没有可以并发运行的表加载。目前,我们每 15 分钟运行超过 1000 个负载。

但我们希望根据用户使用这些表的频率来减少这个数字。请建议我们如何在 Redshift 中获取此信息。

amazon-web-services amazon-redshift

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

标签替换普罗米修斯中的范围向量

我想找到 10 分钟内以“sendsms”开头的所有 pod 的警报总数。

我可以使用label_replace()在即时向量上执行此操作。但是当我想对超过 10 分钟的数据执行此操作时,它无法工作,因为 label_replace 仅适用于即时向量。

举例说明问题:

ALERTS{alertname="CPUThrottlingHigh",pod="sendsms-dbed"} 10
ALERTS{alertname="CPUThrottlingHigh",pod="sendsms-ebed"} 20
ALERTS{alertname="CPUThrottlingHigh",pod="sendsms-fbed"} 30
Run Code Online (Sandbox Code Playgroud)
ALERTS{alertname="CPUThrottlingHigh",pod="sendmail-gbed"} 60
ALERTS{alertname="CPUThrottlingHigh",pod="sendmail-hbed"} 70
ALERTS{alertname="CPUThrottlingHigh",pod="sendmail-ibed"} 80
Run Code Online (Sandbox Code Playgroud)

使用标签替换我可以使用正则表达式添加一个新标签,然后我可以将其分组并获得结果。

label_replace(ALERTS{alertname="CPUThrottlingHigh", "podname", "$1", "pod", "([a-z-A-Z]+)-.*")

ALERTS{alertname="CPUThrottlingHigh",pod="sendsms-dbed", podname="sendsms"} 10
ALERTS{alertname="CPUThrottlingHigh",pod="sendsms-dbed", podname="sendsms"} 10
Run Code Online (Sandbox Code Playgroud)

如何在 10 分钟内为 ALERTS 执行此操作并计算总和?

我想要在过去 10 分钟内得到这样的结果

ALERTS{alertname="CPUThrottlingHigh",podname="sendsms"} 60
ALERTS{alertname="CPUThrottlingHigh",podname="sendmail"} 210
Run Code Online (Sandbox Code Playgroud)

目标:找到过去 1 周内创建最多警报的 Pod。

kubernetes prometheus promql

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

从文件创建 Secret 时,使用 Kubernetes Secret 作为环境变量

我从文件 (secret.txt) 创建了一个 kubernetes 秘密:

k1=v1
k2=v2
k3=v3
Run Code Online (Sandbox Code Playgroud)

看起来像这个秘密——:

k1=v1
k2=v2
k3=v3
Run Code Online (Sandbox Code Playgroud)

我将它用作 pod 中的环境变量,如下所示:

apiVersion: v1
metadata:
  name: secret007
data:
  secret.txt: bWFza1NhbHQ9InRlc3RzYWx0IgpzM1
Run Code Online (Sandbox Code Playgroud)

问题 由于数据的值为单个 base64 值,因此出现问题。我无法在 Pod 中引用它并收到此错误。

  Warning  Failed     6s (x2 over 6s)  kubelet, Error: couldn't find key k1 in Secret kube-system/secret007
Run Code Online (Sandbox Code Playgroud)

请建议如何在不更改机密格式的情况下执行此操作,即机密将是文件名的单个键值,所有 Secret.txt 值将作为单个 base64 值。是否可以?

kubernetes

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

Go标准库中的MaxHeap和MinHeap

1)为什么Go的标准库没有MaxHeap的实现,而且看起来只支持MinHeap?

2)在上面的实现中,哪个function负责Heapify()Heapify()将普通数组转换为O(n).

heap go

-5
推荐指数
1
解决办法
486
查看次数