Commit Graph
17 Commits
Author SHA1 Message Date
Oleksii Kliukin dc36c4ca12 Implement replicaLoadBalancer boolean flag. (#38)
The flag adds a replica service with the name cluster_name-repl and
a DNS name that defaults to {cluster}-repl.{team}.{hostedzone}.

The implementation converted Service field of the cluster into a map
with one or two elements and deals with the cases when the new flag
is changed on a running cluster
(the update and the sync should create or delete the replica service).
In order to pick up master and replica service and master endpoint
when listing cluster resources.

* Update the spec when updating the cluster.
2017-06-07 13:54:17 +02:00
Oleksii Kliukin 7b0ca31bfb Implements EBS volume resizing #35.
In order to support volumes different from EBS and filesystems other than EXT2/3/4 the respective code parts were implemented as interfaces. Adding the new resize for the volume or the filesystem will require implementing the interface, but no other changes in the cluster code itself.

Volume resizing first changes the EBS and the filesystem, and only afterwards is reflected in the Kubernetes "PersistentVolume" object. This is done deliberately to be able to check if the volume needs resizing by peeking at the Size of the PersistentVolume structure. We recheck, nevertheless, in the EBSVolumeResizer, whether the actual EBS volume size doesn't match the spec, since call to the AWS ModifyVolume is counted against the resize limit of once every 6 hours, even for those calls that shouldn't result in an actual resize (i.e. when the size matches the one for the running volume).

As a collateral, split the constants into multiple files, move the volume code into a separate file and fix minor issues related to the error reporting.
2017-06-06 13:53:27 +02:00
Oleksii Kliukin 132c8425e6 Small Makefile improvements. (#31)
- Re-introduce -i flag for Mac OS
- Remove binary dependencies for builds to allow re-building w/o make
clean
2017-05-23 12:06:55 +02:00
Oleksii Kliukin bc17897478 Run sync cluster when previous add failed. (#28) 2017-05-22 15:27:26 +02:00
Oleksii Kliukin afce38f6f0 Fix error messages (#27)
Use lowercase for kubernetes objects
Use %v instead of %s for errors
Start error messages with a lowercase letter.
2017-05-22 14:12:06 +02:00
Oleksii Kliukin 8beb5936b1 Don't error out at sync on existence of the object. (#26) 2017-05-22 12:58:47 +02:00
Oleksii Kliukin c2826b10e2 Merge branch 'master' into fix/go-vet-fixes 2017-05-17 11:30:07 +02:00
Oleksii Kliukin 4457ce4e47 Replace the statefulset if it cannot be updated. (#18)
Updates to statefulset spec for fields other than 'replicas' and
containers' are forbidden. However, it is possible to delete the old
statefulset without deleting its pods and create the new one, using the
changed specs. The new statefulset shall pick up the orphaned pods.

Change the statefulset's comparison to return the combined effect of
all checks, not just the first non-matching field.
2017-05-17 11:28:21 +02:00
Oleksii Kliukin c52d042f90 Merge pull request #5 from zalando-incubator/readme-changes
Minor style fixes.
2017-05-12 18:01:52 +02:00
Oleksii Kliukin deb36f33e0 Merge pull request #4 from zalando-incubator/disable_teams_api_db_access_flags
Allow disabling access to the DB and the Teams API.

Command-line options --nodatabaseaccess and --noteamsapi disable all
teams api interaction and access to the Postgres database. This is
useful for debugging purposes when the operator runs out of cluster
(with --outofcluster flag).

The same effect can be achieved by setting enable_db_access and/or
enable_teams_api to false.
2017-05-12 17:52:34 +02:00
Oleksii Kliukin fb454b809e Merge pull request #3 from zalando-incubator/fix_license
Fix license, add .zappr.
2017-05-12 16:18:11 +02:00
Oleksii Kliukin ac4757a9c8 On a second though, remove WIP as well
The status clearly defines the state of the operator development.
2017-05-12 15:00:05 +02:00
Oleksii Kliukin 169c8611c5 Still a WIP, but no longer a prototype 2017-05-12 14:58:43 +02:00
Oleksii Kliukin 73e7ac6135 Use zalando incubator instead of an old repo 2017-05-12 14:57:58 +02:00
Oleksii Kliukin d4962105ef Change the broken reference. 2017-05-12 14:56:22 +02:00
Oleksii Kliukin 4d5d34b311 Fix the path when describing git clone 2017-05-12 12:24:53 +02:00
Oleksii Kliukin 5487aa1ad0 Fix a link 2017-05-12 12:21:29 +02:00