Skip to content
This repository has been archived by the owner on Aug 26, 2019. It is now read-only.

Storage/AZ affinity when using multiple availability zones #7

Open
seanknox opened this issue Oct 27, 2016 · 2 comments
Open

Storage/AZ affinity when using multiple availability zones #7

seanknox opened this issue Oct 27, 2016 · 2 comments

Comments

@seanknox
Copy link
Contributor

Thanks for releasing alea! I'm excited to try it out in our cluster.

We run a multi-AZ Kubernetes/Deis cluster on AWS. How do you maintain storage/AZ affinity across k8s nodes?

@wearethefoos
Copy link
Member

Hi @seanknox the storage templates currently only support GCE. To make them work on AWS, we will need to alter the storage templates to work with the aws ebs provisioner. More info can be found here: http://kubernetes.io/docs/user-guide/persistent-volumes/#storageclasses

While creating a storage class, you can pass in an AZ, or leave it up to the provisioner to pick a random one. I don't know if storage can be managed easily across AZs

As for making this work on AWS, it might be as simple as adding some overrides in the settings.yaml, but we will have to test that. I will be happy to do so and report back the results.

Also, @rimusz might know more about this currently.

@rimusz
Copy link

rimusz commented Oct 28, 2016

@seanknox for AWS you cloud use such storage manifest:

kind: StorageClass
apiVersion: storage.k8s.io/v1beta1
metadata:
  name: standard
provisioner: kubernetes.io/aws-ebs
parameters:
  type: gp2
  zone: us-west-2
#  iopsPerGB: "10"

You need such manifest per each AZ.

And to maintain storage/AZ affinity across k8s nodes, your back end services need to be clustered so then you spread them across AZ.

There is no magic k8s to do that automatically, it all depends what you use, if e.g mondo or postgres can be set as a cluster, then you spread tehm around AZ.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants