首页 文章

Vuber的Kubernetes Ingress控制器

提问于
浏览
1

在Kubernetes CoreOS Vagrant Multi-Machine上运行入口控制器有什么特别之处吗?我按照这个例子,但是当我运行 kubectl -f 时,我没有得到一个地址 .

例:

http://kubernetes.io/v1.1/docs/user-guide/ingress.html#single-service-ingress

Build :

https://coreos.com/kubernetes/docs/latest/kubernetes-on-vagrant.html

我看着kubernetes的网络 . 一切看起来应该没有进一步配置就可以运行 .

我的目标是在构建 生产环境 平台之前创建一个本地测试环境 . 我在想他们如何设置他们的虚拟盒网络 . 我即将深入研究CoreOS Cloud 配置,但我想先问一下 .

UPDATE

是的我正在运行入口控制器 .

https://github.com/kubernetes/contrib/blob/master/Ingress/controllers/nginx-alpha/rc.yaml

它运行时没有出错 . 就在我运行 kubectl -f 时,我没有得到一个地址 . 我'm thinking there'要么是两件事:

  • 我必须在CoreOS-Kubernetes vagrant多节点的网络中做一些额外的事情 .

  • 它's running right, but I' m指向我的localhost到错误的IP . 我正在使用172.17.4.x ip,我也有10.0.0.x.我可以使用NodePort通过172.17.4.x访问服务,但我可以访问我的Ingress .

这是代码:

apiVersion: v1
kind: ReplicationController
metadata:
  name: nginx-ingress
  labels:
    app: nginx-ingress
spec:
  replicas: 1
  selector:
    app: nginx-ingress
  template:
    metadata:
      labels:
        app: nginx-ingress
    spec:
      containers:
      - image: gcr.io/google_containers/nginx-ingress:0.1
        imagePullPolicy: Always
        name: nginx
        ports:
        - containerPort: 80
          hostPort: 80

Update 2 命令输出:

kubectl get pods

NAME                  READY     STATUS    RESTARTS   AGE
echoheaders-kkja7     1/1       Running   0          24m
nginx-ingress-2wwnk   1/1       Running   0          25m

kubectl logs nginx-ingress-2wwnk --previous

Pod "nginx-ingress-2wwnk" in namespace "default": previous terminated container "nginx" not found

kubectl exec nginx-ingress-2wwnk -- cat /etc/nginx/nginx.conf

events {
  worker_connections 1024;
}
http {


}%

我在NodePort上运行echoheaders服务 . 当我在浏览器上键入节点IP和端口时,我就可以了 .

我也重新启动了virtualbox中的所有节点 .

1 回答

  • 1

    在kubernetes irc和slack的帮助下,我修了一会儿 . 如果我没记错的话,我让入口服务在一个已经被使用的端口上进行监听,我认为对于流浪者来说 . 这些命令确实有帮助:

    kubectl get pod <nginx-ingress pod> -o json
    kubectl exec <nginx-ingress pod> -- cat /etc/nginx/nginx.conf
    kubectl get pods -o wide
    kubectl logs <nginx-ingress pod> --previous
    

相关问题