由于某些依赖 Host 标头才能正常运行的遗留应用程序,我需要一个能够重写 Host 标头并将其传递给下游(后端)的 Ingress(代理等)。是否有支持此功能的入口控制器?
例子:
最终用户通过foo.com/afor backenda和foo.com/bfor backend访问我们的网站b。但由于a和b是遗留应用程序,它只接受:
a 接受连接时 Host: a.foo.comb 接受连接时 Host: b.foo.com所以,我有第三方库,这是一个.jar文件.那个罐子里有一些类.问题是,.jar中的一个类中有一个错误.我知道这是因为我可以反编译jar文件,查看java代码,我很确定,该类是我的程序错误的来源.
我的想法是,删除该类并将其替换为我自己的类,但我不知道如何.
这是掌舵和分蘖版本:
> helm version --tiller-namespace data-devops
Client: &version.Version{SemVer:"v2.9.1", GitCommit:"20adb27c7c5868466912eebdf6664e7390ebe710", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.9.1", GitCommit:"20adb27c7c5868466912eebdf6664e7390ebe710", GitTreeState:"clean"}
Run Code Online (Sandbox Code Playgroud)
以前的helm安装失败:
helm ls --tiller-namespace data-devops
NAME REVISION UPDATED STATUS CHART NAMESPACE
java-maven-app 1 Thu Aug 9 13:51:44 2018 FAILED java-maven-app-1.0.0 data-devops
Run Code Online (Sandbox Code Playgroud)
当我尝试使用此命令再次安装它时,它失败了:
helm --tiller-namespace data-devops upgrade java-maven-app helm-chart --install \
--namespace data-devops \
--values helm-chart/values/stg-stable.yaml
Error: UPGRADE FAILED: "java-maven-app" has no deployed releases
Run Code Online (Sandbox Code Playgroud)
helm upgrade --install如果先前的安装失败,命令是否会失败?我期待它强行安装.任何的想法?
我在掌舵中有这种模板文件:
api 版本:networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: {{.Values.app.name}}-global-route
namespace: {{.Release.Namespace}}
spec:
hosts:
- "{{.Values.app.name}}-global.{{.Release.Namespace}}.svc.cluster.local"
gateways:
- {{.Values.app.name}}-gateway
- mesh
http:
# 1st priority, to route specific end-user to canary service
- route:
- destination:
host: "{{.Values.app.name}}-global.{{.Release.Namespace}}.svc.cluster.local"
subset: canary
match: {{.Values.infra.trafficRoute.canaryCondition}}
Run Code Online (Sandbox Code Playgroud)
# default values supplied for templates/* files
app:
name: java-maven-app
infra:
trafficRoute:
canaryCondition:
- headers:
end-user:
exact: apratama
key:
exact: agung
Run Code Online (Sandbox Code Playgroud)
所以,基本上我想要实现的是让最终用户(使用我的掌舵图的人)自定义金丝雀条件。条件本身取决于 istio 的match数据结构(可以是嵌套的和复杂的值)。我用helm upgrade --install命令在上面尝试过,但不知何故我得到了这个错误:
Error: UPGRADE FAILED: YAML parse error on …Run Code Online (Sandbox Code Playgroud) 假设有如下文档的结构:
{_id:"session-01", status:"free"}
并且有两个并发操作执行以下findAndModify操作:
db.collection.findAndModify({query:{status:"free"}, update:{status:"occupied"}, new:true})
我想要实现的只有一个操作可以获得"空闲"操作,并对其执行锁定,因此其他操作必须为空.那是findAndModify的作用吗?
我知道这{{.Release.namespace}}将呈现所安装的应用程序的名称空间helm。在这种情况下,helm template命令会将其呈现为空字符串(因为它尚不知道发布名称空间)。
但是,令我感到惊讶的是helm upgrade --install命令(我还没有尝试过其他命令,例如helm install)在某些情况下也使它为空。
这是我的舵图模板的示例:
apiVersion: v1
kind: Service
metadata:
name: {{.Values.app.name}}-{{.Values.app.track}}-internal
namespace: {{.Release.namespace}}
annotations:
testAnnotate: "{{.Release.namespace}}"
spec:
ports:
- protocol: TCP
port: 80
targetPort: 8080
selector:
app: {{.Values.app.name}}
environment: {{.Values.app.env}}
track: {{.Values.app.track}}
type: ClusterIP
Run Code Online (Sandbox Code Playgroud)
在调用helm upgrade --install该图表模板(并成功安装)之后,然后尝试查看资源的输出
> kubectl get -o yaml svc java-maven-app-stable-internal -n data-devops
apiVersion: v1
kind: Service
metadata:
annotations:
testAnnotate: ""
creationTimestamp: 2018-08-09T06:56:41Z
name: java-maven-app-stable-internal
namespace: data-devops
resourceVersion: "62906341"
selfLink: /api/v1/namespaces/data-devops/services/java-maven-app-stable-internal
uid: …Run Code Online (Sandbox Code Playgroud) 我是初学者,需要帮助.
我目前正参与一个项目,需要构建一个聊天应用程序(服务器端和客户端).经过进一步探索,最终我对XMPP感兴趣.
对于XMPP Server,我一直对支持XMPP协议的Openfire感兴趣.仍未解决的问题是Openfire是否可以扩展到消息通知的需求,这是Blackberry Messenger的一项功能,可以确定消息是PENDING,DELIVERED还是已被客户端(用户)读取.
谁能帮我?
此问题与我之前的问题有关: Google Analytics中的点击,会话和用户级别有什么区别?
因此,我尝试将自定义维度设置为用户级别范围,但数据仍显示0视图.由于报告不是实时的,我等了2天,但数据仍然为0.但是当我将其更改为会话级别范围时,第二天,数据开始显示.
我要跟踪的用例必须设置为用户级别范围,但我不知道出了什么问题.我想念的东西?
正如您可以看到下面的示例图片,我的问题是如何确定由一系列点形成的多边形.
在左图中,点的系列是{A,B,C,D,E,A},因此它只形成1个多边形{A,B,C,D,E}.
在图片的右侧,一系列点是{A,B,C,D,E,F,A}.它创建了2个多边形{A,F,G }和{B,C,D,E,G },其中G是来自线AB和FE的交点.
我不仅对多边形的数量感兴趣,而且我还想知道从它创建的多边形信息(多边形的一系列点).
该算法将在移动设备中实时使用,因此必须足够快才能进行计算.哦,一系列点将由用户的拖动触摸点生成.
假设:
我一直在考虑解决方案,并且为了查看交叉点,我坚持使用O(N ^ 2)解,N =边数.我可以做的优化是在一些区域内维护线组,所以我只是最小化可以相互计算的总线数.
至于提取形成多边形的解决方案,我仍然卡住了.

假设我正在使用共享的AWS帐户。我想用前缀“ x-team”设置表,例如:
另一个团队还拥有其他具有不同前缀命名方案的表。为了限制我们的应用范围,我们想要设置每个团队使用的不同凭据。
在本文档中http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ddb-api-permissions-ref.html,他们使用通配符*,但是没有说明可以对表的前缀名称方案使用通配符。
android ×2
kubernetes ×2
algorithm ×1
amazon-iam ×1
chat ×1
decompiling ×1
envoyproxy ×1
haproxy ×1
ios ×1
jar ×1
java ×1
mongodb ×1
nginx ×1
openfire ×1
xmpp ×1