小编yyy*_*hir的帖子

“如何修复‘错误:必须在 Helm 中提供名称或指定 --generate-name’”

如何Error: must either provide a name or specify --generate-name在 Helm 中修复

创建示例 helm chart 名称为 mychart 并使用 nginx 服务编写 deployment.yaml、service.yaml、ingress.yaml。之后运行像 $ helm install mychart 这样的命令

服务.yaml

apiVersion: v1
kind: Service
metadata:
  name: nginx
spec:
  ports:
  - name: main
    port: 80
    protocol: TCP
    targetPort: 80
  selector:
    app: nginx
Run Code Online (Sandbox Code Playgroud)

部署.yaml

apiVersion: extensions/v1beta2
kind: Deployment
metadata:
  name: nginx
spec:
  replicas: 3
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
        - name: nginx
          image: nginx:1.13
          ports:
              containerPort: 80
Run Code Online (Sandbox Code Playgroud)

入口.yaml

apiVersion: extensions/v1beta1
kind: Ingress …
Run Code Online (Sandbox Code Playgroud)

nginx kubernetes-helm

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

stable/prometheus-operator - 添加持久的 grafana 仪表板

我正在尝试向下面的掌舵图表添加一个新的仪表板

https://github.com/helm/charts/tree/master/stable/prometheus-operator

文档不是很清楚。

我已经向名称空间添加了一个配置映射,如下所示 -

apiVersion: v1
kind: ConfigMap
metadata:
  name: sample-grafana-dashboard
  namespace: monitoring
  labels:
     grafana_dashboard: "1"
data:
  etcd-dashboard.json: |-
{JSON}
Run Code Online (Sandbox Code Playgroud)

根据文档,这应该只是“拾取”并添加,但不是。 https://github.com/helm/charts/tree/master/stable/grafana#configuration

我的 values.yaml 中的 sidecar 选项看起来像 -

grafana:
  enabled: true

  ## Deploy default dashboards.
  ##
  defaultDashboardsEnabled: true

  adminPassword: password

  ingress:
    ## If true, Grafana Ingress will be created
    ##
    enabled: false

    ## Annotations for Grafana Ingress
    ##
    annotations: {}
      # kubernetes.io/ingress.class: nginx
      # kubernetes.io/tls-acme: "true"

    ## Labels to be added to the Ingress
    ##
    labels: {}

    ## Hostnames. …
Run Code Online (Sandbox Code Playgroud)

grafana kubernetes-helm

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

Spring Boot 日志记录和 Google Cloud Platform 日志查看器

我正在 Google Cloud Platform 中运行 Spring Boot 应用程序,并通过 Google Platform Logs Viewer 查看日志文件。在使用 Spring Boot 并仅使用简单的 servlet 之前,日志记录条目将显示为:

日志已分组并显示蓝色信息图标

每个请求都会被分组,并且可以通过展开行来查看该请求的所有日志记录信息。然而,当使用 Spring Boot 时,请求不再分组,日志条目只是逐行显示。当存在多个请求时,日志条目会变得非常混乱,因为无法以分组方式查看它们。我以同样的方式设置了logging.properties:

.level = INFO
handlers=java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level=FINEST
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter
java.util.logging.SimpleFormatter.format = [%1$tc] %4$s: %2$s - %5$s %6$s%n
Run Code Online (Sandbox Code Playgroud)

记录器在每个类中初始化为:

private static final java.util.logging.Logger LOG = java.util.logging.Logger.getLogger(MyClass.class.getName());
Run Code Online (Sandbox Code Playgroud)

然后日志记录 API 用作: LOG.info("My Message");

我不明白为什么这些语句以不同的方式记录并且不再分组,但它必须与 Spring Boot 处理日志记录的方式有某种关系?

java.util.logging google-cloud-platform stackdriver

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

使用相同的 GCP 负载均衡器在 GCS 存储桶和 GKE 之间进行路由

我一直在四处寻找是否有可能在 Google Cloud Storage 存储桶中托管静态 React 应用程序并使用 Google Cloud CDN 和单个 Google Cloud Load Balancer 将缓存未命中路由到存储桶,管理证书,并将来自 React 应用程序的内部请求路由到 GKE 中托管的 API?

是否有可能实现这种架构,或者是否有另一种推荐的方法?

reactjs google-cloud-platform google-cloud-cdn google-cloud-load-balancer

8
推荐指数
2
解决办法
874
查看次数

允许用户在 Google Cloud Platform 上的我的应用中添加指向子域的自定义域

我从过去两天开始就在尝试这个。

我使用此处非常详细的教程构建了一个示例应用程序 - https://john2x.com/blog/wildcard-certs-from-lets-encrypt-cert-manager-ingress-nginx-gke.html

我现在正在做的工作:

我有一个在 demo-app.example.com 上运行的应用程序,其中用户可以拥有自己的子域,就像john.demo-app.example.com 我也让通配符证书正常工作一样

我现在有两个问题:

1 - 如何允许用户添加指向我的应用程序中的子域的自定义域。当我在我的应用程序中创建一个指向子域的 CNAME 时,它不起作用,我认为是因为整个事情的配置方式。

2 - 我想从 demo-app.example.com 移动到 example.com 到顶层,那么应该如何为此配置 DNS 区域?

最后,考虑到需求,Kubernetes 是我可以使用的最好的还是使用其他东西会更好。顺便说一句,它是一个 NodeJS 应用程序。

dns google-cloud-platform google-kubernetes-engine

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

如何使用“kubectl”和“custom-columns”来处理数组?

参考文档中,他们说您可以像这样打印容器的图像。

kubectl get pod test-pod -o custom-columns=CONTAINER:.spec.containers[0].name,IMAGE:.spec.containers[0].image
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试任何带有括号的命令时,我收到一条错误消息并且没有输出。

no matches found: custom-columns=CONTAINER:.spec.containers[0].name,IMAGE:.spec.containers[0].image
Run Code Online (Sandbox Code Playgroud)

如果我只是指定类似的内容,.spec.containers它将输出与此类似的整个数组:

  [map[image:weaveworksplugins/scope-traffic-control:latest imagePullPolicy:Always name:weavescope-traffic-control-plugin resources:map[requests:map[cpu:100m]] securityContext:map[privileged:true procMount:Default] terminationMessagePath:/dev/termination-log terminationMessagePolicy:File volumeMounts:[map[mountPath:/var/run/docker.sock name:docker-sock] map[mountPath:/var/run/scope/plugins name:scope-plugins]
...
Run Code Online (Sandbox Code Playgroud)

Kubectl版本信息

Client Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.2", GitCommit:"f6278300bebbb750328ac16ee6dd3aa7d3549568", GitTreeState:"clean", BuildDate:"2019-08-05T16:54:35Z", GoVersion:"go1.12.7", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.2", GitCommit:"66049e3b21efe110454d67df4fa62b08ea79a19b", GitTreeState:"clean", BuildDate:"2019-05-16T16:14:56Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"linux/amd64"}
Run Code Online (Sandbox Code Playgroud)

kubectl

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