首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Gcloud/kubernetes获取客户端外部ip、im

如何使用Gcloud/kubernetes获取客户端外部ip、im
EN

Stack Overflow用户
提问于 2016-06-28 13:09:14
回答 3查看 642关注 0票数 0

我最近开始在gcloud上与kubernetes合作,到目前为止还相当顺利,但我似乎无法使用通配符(Jsf)在我的应用程序上获得客户端/用户外部ip地址(Jsf)任何想法都会受到欢迎!我使用以下命令公开我的吊舱:

kubectl expose rc modcluster-replication-controller --name=modcluster --type="LoadBalancer"

  • 1荚运行野蝇独立模式
  • 1荚运行模块-机群
  • 1个吊舱运行邮政
  • 1 rc运行mod-集群-复制控制器
  • 1公开rc mod-群集-复制控制端口80
  • 1 gcloud负载平衡器

Im使用基于票怪库伯内特斯的kubernetes、gcloud、off集群、野蝇

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-06-28 17:06:55

我的建议(如果您的应用程序是端口80/443上的HTTP/HTTPs ),是利用in控制器,它基本上将服务公开为HTTP/HTTPs负载均衡器,注入包中的X转发-For。

这将显示源/客户端的IP地址。请按照X转发-For字段上的教程详细信息提供这里

我刚刚用教程测试的样例调用: LB IP: 130.211.10.191

容器内的the转储:

$ tcpdump -n -l -w - | strings

代码语言:javascript
复制
Output:
Host: 130.211.10.191
Cache-Control: max-age=0
Accept:
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (X11; CrOS x86_64 7978.74.0) AppleWebKit/537.36
(KHTML, like Gecko) Chrome/50.0.2661.103 Safari/537.36
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-US,en;q=0.8
If-None-Match: "574da256-264"
If-Modified-Since: Tue, 31 May 2016 14:40:22 GMT
X-Cloud-Trace-Context:
6b36a7d93d60dc6921417796255466d5/14093000126457324029
Via: 1.1 google
X-Forwarded-For: 81.47.XXX.XXX, 130.211.10.191    # the IP starting with
81. is my local IP
X-Forwarded-Proto: http
Connection: Keep-Alive
JxHTTP/1.1 304 Not Modified
票数 4
EN

Stack Overflow用户

发布于 2017-08-02 12:07:32

k8s版本1.7 (刚刚在1.7.2中进行了测试)使得这很容易。只需在您的LoadBalancer服务中使用spec:外部性流量策略:本地。它将服务80和443港口,没有任何问题。例如:

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  name: myservice
spec:
  ports:
  - port: 80
    protocol: TCP
    targetPort: 80
    name: http
  - port: 443
    protocol: TCP
    targetPort: 443
    name: https
  selector:
    app: myapp
    role: myrole
  type: LoadBalancer
  loadBalancerIP: 104.196.208.195
  externalTrafficPolicy: Local 
票数 0
EN

Stack Overflow用户

发布于 2017-09-18 05:33:59

代码语言:javascript
复制
kubectl describe svc servicename | grep 'LoadBalancer Ingress'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38077169

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档