{"action":"created","issue":{"url":"https://api.github.com/repos/linkerd/linkerd/issues/1864","repository_url":"https://api.github.com/repos/linkerd/linkerd","labels_url":"https://api.github.com/repos/linkerd/linkerd/issues/1864/labels{/name}","comments_url":"https://api.github.com/repos/linkerd/linkerd/issues/1864/comments","events_url":"https://api.github.com/repos/linkerd/linkerd/issues/1864/events","html_url":"https://github.com/linkerd/linkerd/issues/1864","id":304663796,"number":1864,"title":"Routing with Nginx Ingress","user":{"login":"eroji","id":13228540,"avatar_url":"https://avatars1.githubusercontent.com/u/13228540?v=4","gravatar_id":"","url":"https://api.github.com/users/eroji","html_url":"https://github.com/eroji","followers_url":"https://api.github.com/users/eroji/followers","following_url":"https://api.github.com/users/eroji/following{/other_user}","gists_url":"https://api.github.com/users/eroji/gists{/gist_id}","starred_url":"https://api.github.com/users/eroji/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eroji/subscriptions","organizations_url":"https://api.github.com/users/eroji/orgs","repos_url":"https://api.github.com/users/eroji/repos","events_url":"https://api.github.com/users/eroji/events{/privacy}","received_events_url":"https://api.github.com/users/eroji/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":9,"created_at":"2018-03-13T08:11:08Z","updated_at":"2018-03-15T20:16:01Z","closed_at":null,"author_association":"NONE","body":"Issue Type:\r\n\r\n- [ ] Bug report\r\n- [ ] Feature request\r\n\r\n**What happened**:\r\nThis is not a bug or feature request. It's purely a question and my lack of understanding on how to get linkerd to route correctly. I have an application that has a API path of `/app1/api/v1/lookup/12345` which then looks up the value `12345` and returns a result. This will be just one of the microservices running under the same hostname `https://services.example.com`. So ultimately, my request URL looks like this `https://services.example.com/app1/api/v1/lookup/12345`. If I create an nginx ingress resource as `https://services.example.com` to svc/l5d on port 4140, when I try to request `/app1/api/v1/lookup/12345` I get the following output.\r\n\r\n`No hosts are available for /svc/services.example.com, Dtab.base=[/srv=>/#/io.l5d.k8s/default/http;/host=>/srv;/svc=>/host;/host/world=>/srv/world-v1], Dtab.local=[]. Remote Info: Not Available`\r\n\r\nSo it appears that linkerd service does not know it is bound to the hostname via ingress and tries to route to a svc with that name and fails.\r\n\r\nI tried adding a value in the dtab to route `/services.example.com => /svc` but that doesn't seem to work and yields the same error.\r\n\r\n**What you expected to happen**:\r\nI'd like to linkerd to route incoming requests through ingress controller to my services. \r\n\r\n**How to reproduce it (as minimally and precisely as possible)**:\r\nAs described above.\r\n\r\n**Anything else we need to know?**:\r\n\r\n**Environment**:\r\n- linkerd/namerd version, config files: 1.3.6\r\n- Platform, version, and config files (Kubernetes, DC/OS, etc): 1.9.3\r\n- Cloud provider or hardware configuration: vSphere\r\n"},"comment":{"url":"https://api.github.com/repos/linkerd/linkerd/issues/comments/373508691","html_url":"https://github.com/linkerd/linkerd/issues/1864#issuecomment-373508691","issue_url":"https://api.github.com/repos/linkerd/linkerd/issues/1864","id":373508691,"user":{"login":"hawkw","id":2796466,"avatar_url":"https://avatars1.githubusercontent.com/u/2796466?v=4","gravatar_id":"","url":"https://api.github.com/users/hawkw","html_url":"https://github.com/hawkw","followers_url":"https://api.github.com/users/hawkw/followers","following_url":"https://api.github.com/users/hawkw/following{/other_user}","gists_url":"https://api.github.com/users/hawkw/gists{/gist_id}","starred_url":"https://api.github.com/users/hawkw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hawkw/subscriptions","organizations_url":"https://api.github.com/users/hawkw/orgs","repos_url":"https://api.github.com/users/hawkw/repos","events_url":"https://api.github.com/users/hawkw/events{/privacy}","received_events_url":"https://api.github.com/users/hawkw/received_events","type":"User","site_admin":false},"created_at":"2018-03-15T20:16:01Z","updated_at":"2018-03-15T20:16:01Z","author_association":"MEMBER","body":"@eroji you'll need to configure your application to use Linkerd as a proxy. Many (but not all) applications and frameworks support a `http_proxy` environment variable; otherwise, they'll likely have their own method of configuring a HTTP proxy. See https://linkerd.io/getting-started/k8s/#configure-your-application for more information.\r\n\r\nYou might also be interested to note that, unlike Linkerd, the [Conduit](https://conduit.io/) service mesh can be transparently injected into Kubernetes pods without requiring you to set it as a proxy; it will set `iptables` rules so that all outgoing requests are routed through Conduit automagically. However, it doesn't currently support the kind of policy-based routing we discussed above, but this is on the roadmap."}}
{"actor":{"display_login":"hawkw"}}