incubator-openwhisk-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ben Browning <>
Subject Re: Kubernetes + packages with persistent services
Date Wed, 14 Jun 2017 16:25:56 GMT
For the first option, I'd suggest using a Kubernetes ConfigMap to store the
actual config needed by the persistent service. The user can edit the
ConfigMap as needed without having to worry about the other details. There
could of course still be a script like that creates that
ConfigMap based on provided values and deploys it along with the Deployment
for the user.

The larger question is really where should environment-specific deployment
logic live, especially when it comes to packages. Today there doesn't seem
to be any deployment instructions or Ansible files for the alarms package,
for example. Do we want separate repositories with all the Kubernetes yml
files for packages, similar to how the Kubernetes yml files for OpenWhisk
itself are separated out into a separate repo? Add OpenShift, Mesos, and
others to the mix and we need to have a plan for how we'll handle each


On Wed, Jun 14, 2017 at 12:00 PM, Toby Crawley <> wrote:

> With the move towards supporting Kubernetes, has anyone given any
> thought to better handling packages that require a persistent service
> be deployed somewhere (alarms, rss, etc)?
> When running on Kubernetes, I think we have the opportunity to make
> using packages with persistent services a nicer experience. I have a
> couple of ideas on that, and want to get feedback before going
> further (and see if there are other approaches that would work):
> * Provide a deployment yaml file in the package repo that deploys the
>   persistent service, allowing the user to easily deploy via
>   kubectl. This may also require a script to create the deployment
>   config based on the environment needed by the service (database url,
>   credentials, etc).
> * Modify the setup actions to create deployments on demand when
>   needed, and destroying them when no longer needed (for example: only
>   having the cron service running when there are active cron
>   jobs). This option is much more invasive, and requires the setup
>   action to have Kubernetes credentials (and to know it is running
>   inside kube), but does reduce resource usage.
> Of those, I think the first option is probably what makes sense
> currently. If that makes sense to others, I'm happy to provide PR's to
> the package repos.
> - Toby

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message