Live data from Hacker News

Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

news.ycombinator.com

101–110 of 116 posts

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#101
post #23

I'm working for a startup right now. We're using Kubernetes via GKE on Google Cloud. Back in 2015, I implemented a Kubernetes by hand in AWS. I'm not going to do something like that again. GKE is fairly painless and it has most of the sensible defaults that I want. Networking just works -- pods can talk to each other as well as to any VM instances from any availability zone and region. Integrating with GCP service ac…

Forgot: Matsuri is here: https://github.com/matsuri-rb/matsuri

It's largely undocumented. I've heard some interest in places to use it. Time constraints is such that creating examples for it is low on my priority list. Frankly, if you don't know Ruby, you're probably better off looking at Helm.

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#102
post #17

I can recommend Rancher. I’ve used Openshift, Kubernetes and Rancher - so far, Rancher has been the best experience. http://rancher.com/

You can also test Rancher now easily 0 setup: https://try.rancher.com

We deploy all our containerized applications to Rancher (using Cattle for orchestration) via Jenkins jobs with a standardized Makefile for build, test, and deploy, making things consistent.

We look at running straight k8s, but it was like using a chainsaw to sharpen a pencil for our use case.

In addition their devs are extremely helpful and also have a hobby of getting things to run on ARM.

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#103
We selected Kubernetes on AWS but there are a lot of details to go from source code all the way through to automated k8s deployments. We are currently using our own framework (https://github.com/closeio/devops/tree/master/scripts/k8s-ci...) but I’m keeping an eye on helm/chart to see if it makes sense to incorporate that at some point. Pykube (https://github.com/kelproject/pykube) has made it easy to automate the k8s depoyment details. We needed a process that would take Python code from our GitHub repos, build and test on CircleCI and then deploy to our k8s clusters.

A single commit to our master branch on GitHub can result in multiple service accounts, config maps, services, deployments, etc. to be created/updated. Making all of that work is complicated enough but then we also need to deal with things like canary deployments and letting us build and deploy to k8s from our local workstations. And then there are details like automatically deleting old images from ECR so your CICD process doesn’t fill that up without you knowing. Incorporating CICD processes with Kubernetes is kind of new so there is a lot of different projects and services starting to address this area.

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#104
post #12

Our team is https://cloudcraft.co/view/5582ddd4-c6f8-4354-8f5b-9fb0a3744... * Development: docker + docker-compose. Ideally, we would want to get rid of docker-compose for development. * CI: Travis (planning on switching to something that is more on the CD side) * Infrastructure management: terraform * Prod: AWS, CoreOs, Kubernetes 1 master node and 5-6 worker nodes (m4.large) in an autoscaling group. Infrastructure…

docker 1.13 swarm has full compatiblity to use compose file format to launch a cluster. you should try that. https://www.infoq.com/news/2017/01/docker-1.13

In my experience, docker itself is not very stable, and swarm is nowhere close to Kubernetes offers.

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#106
I really liked fleetd, so it's sad that it's wrapped up. It felt unixy and was small enough to understand. Now I'm looking toward serverless and total abstraction of the infrastructure. I kind of see the space in between filled by Mesos, Kube and others as a bit ephemeral.

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#107
Since most of the solutions mentioned here are container based, I will provide something different.

Started using Juju[1]. Basically, Juju handles bootstrapping/creating instances you need in the public clouds and you can use Juju Charms to specify how to deploy your services. So our deployment looks like this:

  - juju bootstrap google # Get instance in GCE
  - juju deploy my-app    # My app is deployed to GCE
You can actually try this with already publicly available apps. Example, You can deploy Wikimedia[2] by just doing:

  juju deploy wiki-simple
This will install Wikimedia, MySQL and creates the relationship needed between the Wikimedia and the database.

In our case, we have a production and development environments. Both are actually running in clouds in different regions

  - juju bootstrap google/us-east1-a production
  - juju deploy my-app

  - juju bootstrap google/europe-west1-c development
  - juju deploy my-app
In addition to running in different regions, development looks at any changes to development branch in our GitHub repo.

We don't use any containers. Juju allows us to deploy our services in any clouds (aws, gce, azure, maas ...) including local using lxd.

[1] https://www.ubuntu.com/cloud/juju

[2] https://jujucharms.com/wiki-simple

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#108
post #32

Earlier quoted context omitted.

My big issue was getting multi-node deployments working well in AWS. I hit walls of configuration issues, DNS issues, poor documentation on fields, and generally could not make much forward progress. Running locally or on a single node OpenShift was fantastic, the haproxies for ingress were easy to configure and launching new services was impressively easy. I was leveraging EFS as NFS mounts for my persistent volumes…

Yeah I can imagine that setting up a multi-node deployment on AWS might be an issue. Fortunately for openstack there is a redhat maintained heat template that should hopefully make the installation quite straightforward (but haven't tried it yet). https://github.com/redhat-openstack/openshift-on-openstack/

Yep, have used these several times. They work very well.

Re: Ask HN: Docker, Kubernetes, Openshift, etc – how do you deploy your products?

#110
post #91

Earlier quoted context omitted.

Hi, nice, this is a lot similar to our initial approach. Glad to see that! To make this flow a bit more easier, we've created a tool [1] (apologies for the plug) that is on top of Helm. What it does, is taking a diff between a bunch of Chart references with values (the desired state) and what's currently in Kubernetes (the actual state), and perform a few create/updates/deletes. So for instance you don't have to add…

Hi rollulus, thanks for the info. As far as I understand it you configure the state of the helm release + configured values in a file and apply it to a kube cluster. Depending on your cluster setup this is really helpful. Do you have a solution for triggering a rolling update of pods if a configmap has changed? In your examples I didn't see any configmaps.

Good point, eicnix. No, we don't have a solution for that, but hadn't the need so far either. Sorry.
Post reply on HN