小编Ham*_*med的帖子

LoadBalancer external-ip 卡在待处理状态

我已经使用 kubeadm 创建了一个带有 AWS ec2 实例的 Kubernetes 集群,但是当我尝试创建一个类型为 LoadBalancer 的服务时,我得到了 EXTERNAL-IP 挂起状态

NAME         TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)         AGE
kubernetes   ClusterIP      10.96.0.1       <none>        443/TCP         123m
nginx        LoadBalancer   10.107.199.170  <pending>     8080:31579/TCP  45m52s
Run Code Online (Sandbox Code Playgroud)

我的创建命令是

kubectl expose deployment nginx --port 8080 --target-port 80 --type=LoadBalancer
Run Code Online (Sandbox Code Playgroud)

我不确定我做错了什么。

我希望看到的是为负载平衡器提供的 EXTERNAL-IP 地址。

请问有人遇到过并成功解决了吗?

谢谢。

amazon-ec2 amazon-web-services kubernetes kubernetes-ingress kubernetes-pod

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

过滤 terraform 列表中的特定值

我有一个 terraform 代码块,可以生成 gcp 区域列表

data "google_compute_regions" "available" {
  project = var.project
}

output "name" {
  value = data.google_compute_regions.available.names
}
Run Code Online (Sandbox Code Playgroud)
  ~ name = [
      + "asia-east1",
      + "asia-east2",
      + "asia-northeast1",
      + "asia-northeast2",
      + "asia-northeast3",
      + "asia-south1",
      + "asia-southeast1",
      + "asia-southeast2",
      + "australia-southeast1",
      + "europe-north1",
      + "europe-west1",
      + "europe-west2",
      + "europe-west3",
      + "europe-west4",
      + "europe-west6",
      + "northamerica-northeast1",
      + "southamerica-east1",
      + "us-central1",
      + "us-east1",
      + "us-east4",
      + "us-west1",
      + "us-west2",
      + "us-west3",
      + "us-west4",
    ]
Run Code Online (Sandbox Code Playgroud)

但是,我只想过滤掉欧洲地区。

这样做

output "names" {
  value = …
Run Code Online (Sandbox Code Playgroud)

terraform terraform-provider-gcp terraform0.12+

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

PromQL“where”子句

如何在 PromQL 中添加 where 子句?

我正在尝试构建一个查询,当 Kubernetes 中运行的应用程序运行超过一分钟时显示,但我想按命名空间进行过滤。

这就是我现在的查询的样子

100 * (count(up == 1) BY (job, namespace, service) ) > 1
Run Code Online (Sandbox Code Playgroud)

这工作正常,但它给了我不需要的额外信息。

{job="prometheus-grafana", namespace="monitor", service="prometheus-grafana"}
{job="jenkins", namespace="jenkins", service="jenkins"}
{job="kube-state-metrics", namespace="monitor", service="prometheus-kube-state-metrics"}
{job="node-exporter", namespace="monitor", service="prometheus-prometheus-node-exporter"}
{job="kubelet", namespace="kube-system", service="prometheus-kube-prometheus-kubelet"}
{job="apiserver", namespace="default", service="kubernetes"}
Run Code Online (Sandbox Code Playgroud)

我想要完成的是仅获取jenkinsdefault命名空间的结果。

{job="apiserver", namespace="default", service="kubernetes"}
{job="jenkins", namespace="jenkins", service="jenkins"}
Run Code Online (Sandbox Code Playgroud)

我试过做

100 * (count(up == 1) BY (job, namespace, service) ) > 1 and ON {namespace="jenkins"}
Run Code Online (Sandbox Code Playgroud)

但我收到invalid parameter "query": 1:65: parse error: unexpected "{" in grouping opts, expected …

where-clause kubernetes prometheus promql

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

Prometheus 率函数输出为整数

有没有办法将ratePrometheus中函数的输出转换为整数?

我试图获取指定时间范围内 pod 重新启动的总数,尽管此查询会生成输出,但我得到的结果是小数,这不是我需要的。

rate(kube_pod_container_status_restarts_total{namespace=~"jenkins"}[10h]) * 60 * 5 > 0
Run Code Online (Sandbox Code Playgroud)

我得到的回报是0.21761280931586605但我宁愿得到一个整数。

我只是不确定该使用什么功能。

kubernetes prometheus promql prometheus-operator

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

无法打开 terraform plan -out 文件

是否可以打开运行时创建的文件terraform plan -out

我已经运行terraform plan -out samplefile.txt并想仔细阅读文件的内容,但我找不到能够打开它的文本编辑器。

不知道是不是字符编码问题。

terraform terraform0.12+

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