我想知道是否可以将kafka作为云原生应用程序运行,并且我可以在数据透视Web服务上创建kafka集群作为服务。我不想只集成客户端,我想运行kafka集群/服务本身吗?
谢谢阿尼尔
cloud-foundry apache-kafka apache-storm pivotal-web-services pivotal-cloud-foundry
我希望能够引用当前的命名空间values.yaml以使用它来为某些值添加后缀
# in values.yaml
someParam: someval-{{ .Release.Namespace }}
Run Code Online (Sandbox Code Playgroud)
以这种方式定义它会更好,而不是进入我的所有模板并添加{{ .Release.Namespace }}. 如果我能做到,values.yaml那就更清楚了,只需要在一个地方定义。
现在我可以提出如下要求:
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').
我想创建一个像C:\sample\sample1\hello.py. 它应该自动创建从sampleto的完整路径hello.py,以及它们之间的所有目录。这在 Python 中可能吗?
在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]],等一切算相同,所以只有其中一人应在整个迭代显示.
我正在使用 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 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 访问权限的多节点设置,但是使用集群主设置会失败。
我也愿意接受在此拓扑中实施仪表板的更好建议。
如果您需要任何其他信息,请告诉我
我正在寻找一种方法来删除特定命名空间的特定部署的所有 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 命令中执行此操作,我会很高兴。
谢谢!
我想我错过了一部分技术背景。但我不明白,为什么我必须使用 * 来访问简单指针的值,而不是访问结构的值。
例如一个简单的值:
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)
或者(是的,这有点奇怪) …
我有运行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) 我想在 k8s 中为我的所有服务提供一个入口,并为入口提供一个基本的身份验证。但是对于身份验证轮换,我想支持用户的辅助身份验证,以便在他们重新生成主键时可以到达端点。
我目前可以按照本指南设置具有单一基本身份验证的入口。
kubernetes ×5
bash ×2
python ×2
apache-kafka ×1
apache-storm ×1
creation ×1
file ×1
go ×1
kubectl ×1
list ×1
permutation ×1
pointers ×1
rest-client ×1
ruby ×1
struct ×1