[Apiman-user] service not being published to gateway after restart?

Tim Dudgeon tdudgeon.ml at gmail.com
Wed Oct 14 05:57:48 EDT 2015


OK, I tried that and now the gateway is working after a restart.
I have no idea why is didn't work when running with the built in ES.

Now one more question - how to disable the ES within apiman (I mean stop 
it running, not reconfigure the connection)?

Tim

On 13/10/2015 14:50, Eric Wittmann wrote:
> Since you have to do it anyway, I'd suggest going with an external 
> elasticsearch instance.  It's easy to hook apiman up to it.  It's just 
> a couple properties in apiman.properties.
>
> -eric
>
> On 10/13/2015 9:48 AM, Tim Dudgeon wrote:
>> If you restart a container it will contain the same state as when it was
>> stopped.
>> If you were to create a new container from the image it would of course
>> not contain the state of other containers created from that image
>> (unless you were re-using volumes).
>>
>> And with the jboss/apiman-wildfly image its working OK. I stop the
>> container and restart it and the gateway is configured.
>> But in my image, adapted from that image the gateway looses it
>> configuration, so its clearly something I've done. I just don't know 
>> what.
>>
>> What I've discovered so far is that when restarted ES contains
>> information in the apiman_manger index but has lost all info in the
>> apiman_gateway index.
>>
>> Tim
>>
>>
>> On 13/10/2015 13:44, Marc Savy wrote:
>>> Not a container expert either, but:
>>>
>>> I think it's standard practice for containers to be non-persistent
>>> (i.e. no persistent state), so you'd need an external ES instance. or
>>> set the ES data-store to be on a data volume (which is persistent).
>>>
>>> Regards,
>>> Marc
>>>
>>> On 13/10/2015 12:57, Eric Wittmann wrote:
>>>> Hm.  Without digging into it, I'm not sure what to suggest.  I'm also
>>>> not a docker expert by any stretch, so that complicates things. :)
>>>>
>>>> I can tell you that the default elasticsearch instance that comes with
>>>> the apiman quickstart stores data in the standalone/data/es directory.
>>>> You could perhaps poke around that area.  See if data is getting 
>>>> written
>>>> there, and whether it's still there when you restart the container?
>>>>
>>>> -Eric
>>>>
>>>>
>>>> On 10/13/2015 7:37 AM, Tim Dudgeon wrote:
>>>> > Right now I'm using the ES that's bundled with Apiman (though do
>>>> intend
>>>> > to switch to a separate container).
>>>> > The baffling thing is that with the Docker image on Dockerhub
>>>> > (jboss/apiman-wildfly) it restarts OK, but with my partly Dockerised
>>>> > version (with Keycloak and Postgres currently as separate
>>>> containers) it
>>>> > fails. The APIMan and ES parts are still pretty well the same as the
>>>> > jboss/apiman-wildfly image.
>>>> >
>>>> > So I seem to have messed something up, but don't have much of an
>>>> idea as
>>>> > to what.
>>>> >
>>>> > Tim
>>>> >
>>>> > On 13/10/2015 12:23, Eric Wittmann wrote:
>>>> >> When a service is published to the gateway, that configuration is
>>>> >> saved in the gateway's persistent registry.  By default (in the
>>>> latest
>>>> >> version of apiman) the gateway uses elasticsearch to store its
>>>> >> registry information.  So ideally you should run elasticsearch as a
>>>> >> separate docker container, making sure that you have an appropriate
>>>> >> persistent volume attached so that any data added to ES survives a
>>>> >> docker restart.  Then you can configure apiman to use that
>>>> external ES.
>>>> >>
>>>> >> There is documentation in the Installation Guide that explains 
>>>> how to
>>>> >> use an external elasticsearch cluster.
>>>> >>
>>>> >> -Eric
>>>> >>
>>>> >> On 10/11/2015 7:30 AM, Tim Dudgeon wrote:
>>>> >>> I'm hitting a problem where I'm running apiman in a docker
>>>> container.
>>>> >>> When I first set up a public service it runs fine.
>>>> >>> But when I restart the container the service definition is still
>>>> there,
>>>> >>> but the gateway does not respond to requests for the service. If I
>>>> >>> create a new version of the service and publish it then it works
>>>> fine.
>>>> >>>
>>>> >>> Seems like the service definition is not being published to the
>>>> gateway
>>>> >>> after a restart?
>>>> >>> I've tried it with the basic Docker container similar to
>>>> >>> jboss/apiman-wildfly on Dockerhub and it seems OK with that, so
>>>> it looks
>>>> >>> like its something I've done to cause this, but I don't see any
>>>> errors
>>>> >>> and don't know where to look to try to fix it.
>>>> >>> Any ideas what's wrong?
>>>> >>> This is with version 1.1.8.Final.
>>>> >>>
>>>> >>> Tim
>>>> >>>
>>>> >>> _______________________________________________
>>>> >>> Apiman-user mailing list
>>>> >>> Apiman-user at lists.jboss.org
>>>> >>> https://lists.jboss.org/mailman/listinfo/apiman-user
>>>> >>>
>>>> >
>>>> > _______________________________________________
>>>> > Apiman-user mailing list
>>>> > Apiman-user at lists.jboss.org
>>>> > https://lists.jboss.org/mailman/listinfo/apiman-user
>>>> >
>>>> _______________________________________________
>>>> Apiman-user mailing list
>>>> Apiman-user at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/apiman-user
>>>>
>>>
>>



More information about the Apiman-user mailing list