You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openwhisk.apache.org by David P Grove <gr...@us.ibm.com> on 2019/04/12 20:49:26 UTC

api gateway functionality when deploying on Kubernetes in Docker for Mac/Windows


I've been poking at a user-reported issue [1] where apigateway is not
working when deployed on a Kubernetes cluster running on Docker for Mac.

I believe the root problem is that the networking with Kubernetes on Docker
for Mac is not symmetrical.  That is to say, within the cluster you use
https://192.168.65.3:31001 as the OpenWhisk apiHost but outside the cluster
you use https://localhost:31001.  The 192.168.65.3 address is not exposed
to the host networking (and localhost within the cluster resolves to the
individual pods, not the host).

In the activation logs from createApi in [1] you can see that a different
backendUrl is constructed based on the apiHost that was used by the `wsk
create api` command.  This seems a little wrong to me; shouldn't we be
picking up the apiHost portion of the backendURL from some property or
configuration of the deployed system in which the createApi action is
running?

I don't know the api-gateway or routeMgmt package that well; is this an
easy fix or something that would be hard?

thanks,

--dave

[1] https://github.com/apache/incubator-openwhisk-deploy-kube/issues/436

Re: api gateway functionality when deploying on Kubernetes in Docker for Mac/Windows

Posted by Matt Hamann <ma...@gmail.com>.
Interesting issue. The gateway itself doesn't care what host it's running
on, but the management interface does.

I don't think this would be a difficult fix. Will see if I can look into
this during the coming week.

On Fri, Apr 12, 2019, 4:49 PM David P Grove <gr...@us.ibm.com> wrote:

>
>
> I've been poking at a user-reported issue [1] where apigateway is not
> working when deployed on a Kubernetes cluster running on Docker for Mac.
>
> I believe the root problem is that the networking with Kubernetes on Docker
> for Mac is not symmetrical.  That is to say, within the cluster you use
> https://192.168.65.3:31001 as the OpenWhisk apiHost but outside the
> cluster
> you use https://localhost:31001.  The 192.168.65.3 address is not exposed
> to the host networking (and localhost within the cluster resolves to the
> individual pods, not the host).
>
> In the activation logs from createApi in [1] you can see that a different
> backendUrl is constructed based on the apiHost that was used by the `wsk
> create api` command.  This seems a little wrong to me; shouldn't we be
> picking up the apiHost portion of the backendURL from some property or
> configuration of the deployed system in which the createApi action is
> running?
>
> I don't know the api-gateway or routeMgmt package that well; is this an
> easy fix or something that would be hard?
>
> thanks,
>
> --dave
>
> [1] https://github.com/apache/incubator-openwhisk-deploy-kube/issues/436
>