小编Ami*_*pta的帖子

如何在Cloudfoundry上使用Kafka和Storm?

我想知道是否可以将kafka作为云原生应用程序运行,并且我可以在数据透视Web服务上创建kafka集群作为服务。我不想只集成客户端,我想运行kafka集群/服务本身吗?

谢谢阿尼尔

cloud-foundry apache-kafka apache-storm pivotal-web-services pivotal-cloud-foundry

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

如何在 values.yaml 中引用命名空间?

我希望能够引用当前的命名空间values.yaml以使用它来为某些值添加后缀

# in values.yaml
someParam: someval-{{ .Release.Namespace }}
Run Code Online (Sandbox Code Playgroud)

以这种方式定义它会更好,而不是进入我的所有模板并添加{{ .Release.Namespace }}. 如果我能做到,values.yaml那就更清楚了,只需要在一个地方定义。

kubernetes kubernetes-helm

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

使用rest-client更正get请求的语法

现在我可以提出如下要求:

user = 'xxx'  
token = 'xxx'  
survey_id = 'xxx'  
response = RestClient.get "https://survey.qualtrics.com/WRAPI/ControlPanel/api.php?Request=getLegacyResponseData&User=#{user}&Token=#{token}&Version=2.0&SurveyID=#{survey_id}&Format=XML"
Run Code Online (Sandbox Code Playgroud)

但应该有一些更好的方法来做到这一点.我尝试过这样的事情:

response = RestClient.get "https://survey.qualtrics.com/WRAPI/ControlPanel/api.php", :Request => 'getLegacyResponseData', :User => user, :Token => token, :Version => '2.0', :SurveyID => survey_id, :Format => 'XML'</code>
Run Code Online (Sandbox Code Playgroud)

及其变化(字符串代替键的符号,包括{和},使键小写等)但我试过的组合似乎都没有用.这里的语法是什么?


我尝试了下面的第一个建议.它没用.为了记录,这工作:

surveys_from_api = RestClient.get "https://survey.qualtrics.com/WRAPI/ControlPanel/api.php?Request=getSurveys&User=#{user}&Token=#{token}&Version=#{version}&Format=JSON"
Run Code Online (Sandbox Code Playgroud)

但这不是:

surveys_from_api = RestClient.get "https://survey.qualtrics.com/WRAPI/ControlPanel/api.php", :params => {:Request => 'getSurveys', :User => user, :Token => token, :Version => version, :Format => 'JSON'}
Run Code Online (Sandbox Code Playgroud)

(我设置版本='2.0').

ruby rest-client

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

在python中自动创建多个文件夹

我想创建一个像C:\sample\sample1\hello.py. 它应该自动创建从sampleto的完整路径hello.py,以及它们之间的所有目录。这在 Python 中可能吗?

python file creation

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

N选择列表的N/2个子列表

在Python中是否有一种有效的方法可以将大小列表的所有分区n分成两个大小的子集n/2?我想获得一些迭代构造,使得每次迭代提供原始列表的两个非重叠子集,每个子​​集具有大小n/2.

例如:

A = [1,2,3,4,5,6]    # here n = 6
# some iterative construct
    # in each iteration, a pair of subsets of size n/2
    # subsets = [[1,3,4], [2,5,6]] for example for one of the iterations
    # subsets = [[1,2,5],[3,4,6]] a different iteration example
Run Code Online (Sandbox Code Playgroud)

子集应该是非重叠的,例如[[1,2,3], [4,5,6]]有效但[[1,2,3], [3,4,5]]不是.两个子集的顺序无关紧要,例如[[1,2,3], [4,5,6]]不计为不同[[4,5,6], [1,2,3]],因此这两个子集中只有一个应该出现在迭代中.每个子集内的顺序也无所谓,所以[[1,2,3], [4,5,6]],[[1,3,2], [4,5,6]],[[3,2,1], [6,5,4]],等一切算相同,所以只有其中一人应在整个迭代显示.

python list permutation combinatorics

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

Helm - 覆盖 value.yaml 中的特定值

我正在使用 Helm,因为nginx-ingress我需要添加一些注释。

在图表values.yaml文件中,podAnnotations为空 ( {})。

我的问题是:添加这些注释的正确方法是什么?

注释是controller其根元素的子元素values.yaml

controller:
  ...
  podAnnotations:
    ...
Run Code Online (Sandbox Code Playgroud)

现在,我感觉我必须将整个values.yaml文件复制到我custom-values.yaml添加注释的文件中。

$> heml install -f ./custom-values.yaml stable/nginx-ingress
Run Code Online (Sandbox Code Playgroud)

但是,如果我复制整个值文件,我会感觉如果随着时间的stable/nginx-ingress推移更改内部值,我可能会遇到麻烦values.yaml

kubernetes-helm

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

通过外部 VIP 或浮动 IP 启用对 Kubernetes 仪表板的访问

我有一个具有以下拓扑结构的 Kubernetes 集群设置

我已经在集群上部署了 Kubernetes Dashboard,并且能够使用 kubectl 代理访问仪表板。

但是当我尝试使用 URL 通过浮动 IP/VIP 访问仪表板时:

https://<FloatingIP>:6443/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/login
Run Code Online (Sandbox Code Playgroud)

我最终在浏览器上得到以下响应

{
  "kind": "Status",
  "apiVersion": "v1",
  "metadata": {

  },
  "status": "Failure",
  "message": "services \"https:kubernetes-dashboard:\" is forbidden: User \"system:anonymous\" cannot get resource \"services/proxy\" in API group \"\" in the namespace \"kube-system\"",
  "reason": "Forbidden",
  "details": {
    "name": "https:kubernetes-dashboard:",
    "kind": "services"
  },
  "code": 403
}
Run Code Online (Sandbox Code Playgroud)

我确实知道这个问题是由于 Kubernetes 上的 RBAC 造成的,并围绕这个主题做了一些阅读,但我仍然不清楚需要做什么来解决主集群实现上的这个问题。我能够在单个主服务器上成功公开仪表板 - 具有 NodePort 访问权限的多节点设置,但是使用集群主设置会失败。

我也愿意接受在此拓扑中实施仪表板的更好建议。

如果您需要任何其他信息,请告诉我

kubernetes kubernetes-dashboard kubernetes-cluster

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

如何删除特定命名空间的特定部署的所有 Pod?

我正在寻找一种方法来删除特定命名空间的特定部署的所有 pod。换句话说,给定:

x - 命名空间
列表 y - 部署列表

for i in x:
  for j in y:
    delete all pods of deployment j in namespace i
Run Code Online (Sandbox Code Playgroud)

如果有人知道如何在 bash 命令中执行此操作,我会很高兴。

谢谢!

bash kubernetes

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

为什么指针必须使用星号而不是结构指针?

我想我错过了一部分技术背景。但我不明白,为什么我必须使用 * 来访问简单指针的值,而不是访问结构的值。

例如一个简单的值:

func main() {
    i := 42
    p := &i
    *p = 21         // <<< I have to use an asterisk to access the value
    // ...
}
Run Code Online (Sandbox Code Playgroud)

和一个带有结构的例子:

type Vertex struct {
    X int
    Y int
}

func main() {
    v := Vertex{1, 2}
    p := &v
    p.X = 1e9       // <<< I do not have to use an asterisk
    // ...
}
Run Code Online (Sandbox Code Playgroud)

(是的,示例来自此处的官方 go lang tour:https : //go-tour-de.appspot.com/moretypes/4

就我的想法而言,我会期待这样的事情

    *p.X = 1e9
Run Code Online (Sandbox Code Playgroud)

或者(是的,这有点奇怪) …

struct pointers go

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

用于命名路径的kubectl jsonpath表达式

我有运行2个命名端口的kube服务,如下所示:

$ kubectl get service elasticsearch --output json
{
    "apiVersion": "v1",
    "kind": "Service",
    "metadata": {
        ... stuff that really has nothing to do with my question ...
    },
    "spec": {
        "clusterIP": "10.0.0.174",
        "ports": [
             {
                "name": "http",
                "nodePort": 31041,
                "port": 9200,
                "protocol": "TCP",
                "targetPort": 9200
            },
            {
                "name": "transport",
                "nodePort": 31987,
                "port": 9300,
                "protocol": "TCP",
                "targetPort": 9300
            }
        ],
        "selector": {
            "component": "elasticsearch"
        },
        "sessionAffinity": "None",
        "type": "NodePort"
    },
    "status": {
        "loadBalancer": {}
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在尝试获取仅包含'http'端口的输出:

$ kubectl get service …
Run Code Online (Sandbox Code Playgroud)

bash kubernetes kubectl

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

如何为 kubernetes ingress basic-auth 设置辅助密钥

我想在 k8s 中为我的所有服务提供一个入口,并为入口提供一个基本的身份验证。但是对于身份验证轮换,我想支持用户的辅助身份验证,以便在他们重新生成主键时可以到达端点。

我目前可以按照本指南设置具有单一基本身份验证的入口。

kubernetes kubernetes-ingress nginx-ingress

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