Commit Graph

190 Commits

Author SHA1 Message Date
lojies
9498b227a1 change infof to Errorf in some codes 2016-09-12 15:55:42 +08:00
Kubernetes Submit Queue
cf4ea938c8 Merge pull request #32278 from pigmej/typos_englishify_federation
Automatic merge from submit-queue

Typos and englishify federation

**What this PR does / why we need it**: Typos + "englishify" /federated

**Which issue this PR fixes** None

**Special notes for your reviewer**: Just typos + "englishify" federated and obviously autogenerated stuff.

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
`NONE`
2016-09-11 21:34:35 -07:00
Jedrzej Nowak
6aaad93908 Typos and englishify federation 2016-09-09 09:53:24 +02:00
Kubernetes Submit Queue
b616349efc Merge pull request #32282 from mwielgus/register-on-fake-fix
Automatic merge from submit-queue

Remove panic handling from federated test helper

This was added by accident when helping @quinton-hoole with https://github.com/kubernetes/kubernetes/pull/31600.
2016-09-08 06:59:48 -07:00
Marcin Wielgus
d93456ab37 Remove panic handling from federated test helper 2016-09-08 14:53:10 +02:00
Marcin Wielgus
13a80ce912 FakeWatcher with channel size constructor 2016-09-08 13:38:44 +02:00
Kubernetes Submit Queue
34012d7877 Merge pull request #32234 from mwielgus/fake-watch-fix
Automatic merge from submit-queue

WatcherDispatcher for federated controller tests

This PR fixes a problem when 2 informers create a watch for the same resource using the same client. Previously only one informer would receive updates.

cc: @quinton-hoole @wojtek-t @kubernetes/sig-cluster-federation

quinton-hoole: To provide some more context to those doing cherrypicking, the bug that this PR fixes makes federated unit tests fail intermittently, and generally behave very poorly.
2016-09-07 16:25:07 -07:00
Marcin Wielgus
961b1a94e2 WatcherDispatcher for federated controller tests 2016-09-07 23:53:37 +02:00
Marcin Wielgus
091b843b4a Delete resources in federated namespce 2016-09-07 21:01:38 +02:00
Kubernetes Submit Queue
59a25fb7ed Merge pull request #31677 from jianhuiz/federation-replicaset-controller-delay-fix
Automatic merge from submit-queue

fix deliverer dealy constant usage

some delay constants were not correctly used

#29741
@quinton-hoole @deepak-vij @kshafiee @mwielgus
2016-09-05 20:52:34 -07:00
Kubernetes Submit Queue
ac7fbf502a Merge pull request #31925 from nikhiljindal/freshDebugNs
Automatic merge from submit-queue

Adding namespaces/finalizer subresource to federation apiserver

Fixes https://github.com/kubernetes/kubernetes/issues/31077

cc @kubernetes/sig-cluster-federation @mwielgus 


Verified manually that I can delete federation namespaces now.
Will update federation-namespace e2e test to verify that namespace is deleted fine
2016-09-02 19:30:25 -07:00
nikhiljindal
274487da87 Adding namespaces/finalizer subresource to federation apiserver 2016-09-02 15:30:32 -07:00
Kubernetes Submit Queue
2907015b58 Merge pull request #31814 from mwielgus/add-hash-to-planer
Automatic merge from submit-queue

Use hash in federated replica set planner

Without this all replicaset of size 1 would land in the same cluster if the default preferences (weight=1) are used. 

cc: @jianhuiz  @quinton-hoole @kubernetes/sig-cluster-federation
2016-09-01 08:20:17 -07:00
Marcin Wielgus
015a970ceb Use hash in federated replica set planner 2016-09-01 16:35:40 +02:00
Kubernetes Submit Queue
e35675cf59 Merge pull request #31821 from mwielgus/event-name-sync
Automatic merge from submit-queue

Sync event names in federated controller

cc: @quinton-hoole
2016-09-01 01:48:25 -07:00
Marcin Wielgus
118de37dbe Sync event names in federated controller 2016-08-31 23:40:53 +02:00
Marcin Wielgus
d1bfb3f8ff Events for federated replica set controller 2016-08-31 23:35:20 +02:00
jianhuiz
3ba0c0578e fix deliverer dealy constant usage 2016-08-31 13:47:42 -07:00
Kubernetes Submit Queue
ae940c09f3 Merge pull request #31744 from mwielgus/rs-fix-2
Automatic merge from submit-queue

Clean-up and fixes in federated replica set

* Create and update consistent with other controllers. Previously an annotation update on federated rs would not trigger local rs update.
* Use of federatedUpdater. The previous code use talked to clusters manually, assuming that the stats values in the local rs would be automatically and immediately updated. These stats are updated by controllers so they are not immediately updated and the currently existing stats can be used for building federated rs stats.
* Trigger a rs recheck after some operations are executed.

cc: @quinton-hoole @jianhuiz @wojtek-t @kubernetes/sig-cluster-federation
2016-08-31 11:25:01 -07:00
Kubernetes Submit Queue
1063731234 Merge pull request #31705 from mwielgus/secrets-events
Automatic merge from submit-queue

Events for federated secrets controller

cc: @quinton-hoole @nikhiljindal @kubernetes/sig-cluster-federation
2016-08-31 11:03:45 -07:00
Marcin Wielgus
7258b8e4f6 Events for federated secrets controller 2016-08-31 18:57:40 +02:00
Marcin Wielgus
4c55babcf8 Clean-up and fixes in federated replica set 2016-08-31 18:53:54 +02:00
Marcin Wielgus
e850d4f0a2 Events for federated ingress controller 2016-08-30 23:52:35 +02:00
Marcin Wielgus
044fab9f58 Events for federated namesapce controller 2016-08-30 16:28:49 +02:00
Marcin Wielgus
6531c83b7b OnError callback function for federated updater 2016-08-30 12:01:50 +02:00
Kubernetes Submit Queue
1919fe3a59 Merge pull request #31526 from mwielgus/event-sink
Automatic merge from submit-queue

EventSink for federated controllers

So that the controllers can reuse k8s.io/kubernetes/pkg/client/record machinery.

cc: @quinton-hoole @nikhiljindal @kubernetes/sig-cluster-federation
2016-08-29 13:46:24 -07:00
Marcin Wielgus
417913234d EventSink for federated controllers 2016-08-27 19:48:11 +02:00
Marcin Wielgus
9cdcb31d2b Increase log level for debug infos in Federated ReplicaSet controller 2016-08-26 17:39:06 +02:00
Kubernetes Submit Queue
6eb279ee6e Merge pull request #31512 from mwielgus/more-debug-rs
Automatic merge from submit-queue

More scheduling debug in federated replica set

cc: @quinton-hoole @jianhuiz @kubernetes/sig-cluster-federation
2016-08-26 06:49:11 -07:00
Marcin Wielgus
535a110603 More scheduling debug in federated replica set 2016-08-26 13:48:16 +02:00
Marcin Wielgus
31dd5e8d91 Proper phase/finalizer logic in federated namespace controller 2016-08-26 12:44:20 +02:00
Kubernetes Submit Queue
4f4c50223e Merge pull request #31265 from mwielgus/fed-test-ref
Automatic merge from submit-queue

Federation controller tests refactoring - move common func to utils

cc: @quinton-hoole @kubernetes/sig-cluster-federation
2016-08-24 10:11:42 -07:00
Marcin Wielgus
1d2e9a2d31 Federation controller tests refactoring 2016-08-23 18:33:04 +02:00
Kubernetes Submit Queue
d6fb8b06dd Merge pull request #31231 from mwielgus/rs-fix3
Automatic merge from submit-queue

Test if 2 federated informers in rs controller are in sync

cc: @quinton-hoole @kubernetes/sig-cluster-federation
2016-08-23 08:04:11 -07:00
Kubernetes Submit Queue
ea7d417377 Merge pull request #31237 from mwielgus/secret-tests
Automatic merge from submit-queue

Tests for data update in federated secret controller

cc: @quinton-hoole @kubernetes/sig-cluster-federation
2016-08-23 06:36:51 -07:00
Marcin Wielgus
e29cf44a1e Tests for data update in federated secret controller 2016-08-23 14:42:51 +02:00
Kubernetes Submit Queue
794761f1d6 Merge pull request #31224 from mwielgus/hadnlers-fix
Automatic merge from submit-queue

ObjectMeta equivalence in federated controller handlers + update in fed secrets

Federated secrets should trigger also on data/type update, not only on object meta.

cc: @quinton-hoole @kubernetes/sig-cluster-federation
2016-08-23 05:13:17 -07:00
Marcin Wielgus
7d1c85e476 Test if 2 federated informers in rs controller are in sync 2016-08-23 13:10:48 +02:00
Marcin Wielgus
3216336923 Set annotation name in federated replica set controller 2016-08-23 11:48:25 +02:00
Marcin Wielgus
1f5605763f ObjectMeta equivalence in federated controller handlers + update in fed secrets 2016-08-23 11:45:01 +02:00
Quinton Hoole
97d6494c41 Add Federated Ingress Controller. 2016-08-22 12:59:54 -07:00
jianhuiz
257bda7e1c review fix 2016-08-22 09:27:31 -07:00
jianhuiz
7598d43db0 use palnner v2 and pod analyzer 2016-08-22 09:27:31 -07:00
jianhuiz
a491580597 add federation replicaset controller 2016-08-22 09:27:30 -07:00
Marcin Wielgus
9b00a6654c Comments and extra tests for federated ObjectMeta utils 2016-08-21 21:14:07 +02:00
Marcin Wielgus
b0ec300ce8 Apply object meta functions to controllers 2016-08-21 13:02:55 +02:00
Marcin Wielgus
66df63f618 Object meta helper functions for federated controller 2016-08-21 13:02:19 +02:00
Kubernetes Submit Queue
eaa2b6f528 Merge pull request #31042 from jianhuiz/federation-informer-kube-client
Automatic merge from submit-queue

Federation informer use kube clientset for target

This is to use kubernetes clientset as the federation informer target clientset as it's used to talking the k8s cluster.

#29939 #30669 #30207
@mwielgus @quinton-hoole @kshafiee @deepak-vij
2016-08-20 08:06:08 -07:00
jianhuiz
47f317eeb3 update federation controllers to use kube clientset 2016-08-19 15:51:41 -07:00
jianhuiz
65cb176572 use kube clientset to access k8s clusters 2016-08-19 15:00:15 -07:00
Marcin Wielgus
0ec28ac86e Handle secret namespace and data properly in federated secret controller 2016-08-19 23:02:40 +02:00
kshafiee
febe9adcf0 Federated secret controller 2016-08-19 17:02:30 +00:00
Kubernetes Submit Queue
b6d4462f01 Merge pull request #30983 from mwielgus/planer2
Automatic merge from submit-queue

Support for preexisting replicas and estimated capacity in federated replicaset controller

With this PR the planer will be able to:
* Keep already existing replicas in their current clusters if rebalance = false and min/max boundaries are met.

* Limit the number of replicas in a cluster to the level that was measured by the count of running and unschedulable pods. And provide an estimate how much more pods would be nice to put in a cluster so that if they are scheduled we will be closer to the desired layout or to schedule the desired number of replicas at all.

cc: @quinton-hoole @jianhuiz @wojtek-t @kubernetes/sig-cluster-federation
2016-08-19 08:28:03 -07:00
Marcin Wielgus
8dfdc5b612 Support for preexisting replicas and estimated capacity in federated replica set planner 2016-08-19 16:14:21 +02:00
Marcin Wielgus
03fd876d25 Federated replica set pod analyser 2016-08-19 14:38:40 +02:00
Kubernetes Submit Queue
83ded2858c Merge pull request #28568 from xiangpengzhao/check_ensureDnsRecords_return_value
Automatic merge from submit-queue

Check return value when calling ensureDnsRecords

When [lockedUpdateDNSRecords](https://github.com/xiangpengzhao/kubernetes/blob/check_ensureDnsRecords_return_value/federation/pkg/federation-controller/service/servicecontroller.go#L723) calls `ensureDnsRecords`, it should check the return value. If it returns error, the `ensuredCount ` should not increment.
2016-08-18 16:25:09 -07:00
Kubernetes Submit Queue
b15c2d67e6 Merge pull request #30872 from mwielgus/fed-informer-deadlock
Automatic merge from submit-queue

Fix deadlock possibility in federated informer

On cluster add subinformer locks and tries to add cluster to federated informer. When someone checks if everything is in sync federated informer is locked and then subinformer is inspected what apparently requires a lock. With really bad timing this can create a deadlock.

This PR ensures that there is always at most 1 lock taken in federated informer.

cc: @quinton-hoole @kubernetes/sig-cluster-federation 

Fixes: #30855
2016-08-18 08:31:26 -07:00
Marcin Wielgus
420bab477e Federated namespace controller - stop reconcilation if not in sync 2016-08-18 14:48:38 +02:00
Marcin Wielgus
681d153050 Fix deadlock possibility in federated informer 2016-08-18 14:37:38 +02:00
Marcin Wielgus
23ca79bd53 Remove Set/GetClusterName hack from federated libs: 2016-08-18 08:04:46 +02:00
Marcin Wielgus
c75cefa296 FederatedInformer returns clusterName + obj pair when needed 2016-08-18 07:48:21 +02:00
Marcin Wielgus
c1cbe4771b Use backoff from util/flowcontroll in federated namespace controller and other minor fixes 2016-08-16 21:51:24 +02:00
Marcin Wielgus
b2c192bcc9 Federated Namespace Controller test 2016-08-16 21:05:50 +02:00
Marcin Wielgus
e428ffe879 Federated namespace controller 2016-08-16 21:05:50 +02:00
Kubernetes Submit Queue
ce302c0c55 Merge pull request #30509 from mwielgus/set-client
Automatic merge from submit-queue

SetClientFactory in FederatedInformer

For unit tests.

cc: @quinton-hoole @wojtek-t @kubernetes/sig-cluster-federation
2016-08-16 11:10:58 -07:00
Kubernetes Submit Queue
69419a145a Merge pull request #29802 from jfrazelle/fix-go-vet-errors
Automatic merge from submit-queue

fix go vet errors

<!--
Checklist for submitting a Pull Request

Please remove this comment block before submitting.

1. Please read our [contributor guidelines](https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md).
2. See our [developer guide](https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md).
3. If you want this PR to automatically close an issue when it is merged,
   add `fixes #<issue number>` or `fixes #<issue number>, fixes #<issue number>`
   to close multiple issues (see: https://github.com/blog/1506-closing-issues-via-pull-requests).
4. Follow the instructions for [labeling and writing a release note for this PR](https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes) in the block below.
-->

```release-note
```

This fixes the `go vet` errors brought about by go 1.7 testing re (#28742).

The are all pretty trivial and mostly related to literal composites.

also related to #16086
2016-08-15 13:10:08 -07:00
Marcin Wielgus
9c794c4296 Fix in default client factory in federated informer 2016-08-13 02:12:35 +02:00
Marcin Wielgus
8dbe762e6f SetClientFactory in FederatedInformer 2016-08-12 17:34:01 +02:00
Marcin Wielgus
8b53924a97 Federation - common libs - get clientset for cluster 2016-08-11 16:21:34 +02:00
Jess Frazelle
7e9d82129e
fix go vet errors
Signed-off-by: Jess Frazelle <jessfraz@google.com>

fix composites

Signed-off-by: Jess Frazelle <me@jessfraz.com>
2016-08-10 16:45:41 -07:00
Marcin Wielgus
9f01136df4 Federation - common libs - small changes in delaying deliverer 2016-08-10 17:05:15 +02:00
Marcin Wielgus
c435647dd7 Minor fixes in federated controller libraries 2016-08-10 14:25:26 +02:00
Kubernetes Submit Queue
ab68ce9676 Merge pull request #30353 from mwielgus/handlers-fed
Automatic merge from submit-queue

Federation - common libs - a set of handy handlers for informers

A common scenario for using informer handlers would be to put the object key in a queue
for global reconciliation.

cc: @quinton-hoole @wojtek-t @kubernetes/sig-cluster-federation

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/30353)
<!-- Reviewable:end -->
2016-08-10 04:45:04 -07:00
Marcin Wielgus
99ba03f423 Federation - common libs - a set of handy handlers for informers 2016-08-10 12:18:35 +02:00
Kubernetes Submit Queue
3e006ea298 Merge pull request #29817 from xiangpengzhao/opt-print-info
Automatic merge from submit-queue

Separate long comment into lines



<!-- Reviewable:start -->
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/29817)
<!-- Reviewable:end -->
2016-08-09 20:14:14 -07:00
Kubernetes Submit Queue
489b204b07 Merge pull request #30126 from mwielgus/federated_updater
Automatic merge from submit-queue

Federation - common libs - FedratedUpdater

A helper for executing multiple add/update/del operations on federation clusters. Contains a workaround against missing #28921.

cc @nikhiljindal @wojtek-t @madhusudancs @kubernetes/sig-cluster-federation 

Fixes: #29869 #30030
Ref: #29347

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/30126)
<!-- Reviewable:end -->
2016-08-09 07:28:26 -07:00
Marcin Wielgus
d836fd523f Federation - common libs - fedrated updater 2016-08-09 15:39:16 +02:00
Kubernetes Submit Queue
48c0612805 Merge pull request #29866 from xiangpengzhao/err-to-nil
Automatic merge from submit-queue

Return nil directly when err is nil.

When err is nil, return nil directly instead of `err` to avoid confusion.
2016-08-08 12:23:32 -07:00
Marcin Wielgus
fcbb0eef2d Federation common libs - deliverAfer for delaying deliverer 2016-08-08 16:30:10 +02:00
xiangpengzhao
0623f7bcf8 Return nil directly when err is nil. 2016-08-08 04:20:44 -04:00
Kubernetes Submit Queue
2537f66f0e Merge pull request #29230 from luxas/goimport
Automatic merge from submit-queue

Run goimport for the whole repo

While removing GOMAXPROC and running goimports, I noticed quite a lot of other files also needed a goimport format. Didn't commit `*.generated.go`, `*.deepcopy.go` or files in `vendor`

This is more for testing if it builds.
The only strange thing here is the gopkg.in/gcfg.v1 => github.com/scalingdata/gcfg replace.
cc @jfrazelle @thockin
2016-08-05 16:22:01 -07:00
Marcin Wielgus
fc263877a5 Federation - common libs - cluster lifecycle handlers in FederatedInformer 2016-08-05 15:09:02 +02:00
Kubernetes Submit Queue
ac266ae85b Merge pull request #29939 from mwielgus/federated_informer
Automatic merge from submit-queue

Federation - common libs - FederatedInformer

Fixes #29383

Will add more tests after the first pass of the review.

ref: #29347

cc: @nikhiljindal @wojtek-t
2016-08-03 13:43:37 -07:00
Marcin Wielgus
040203b40a Federation - common libs - FederatedInformer 2016-08-03 17:53:05 +02:00
Kubernetes Submit Queue
503f5afe1a Merge pull request #29858 from xiangpengzhao/delete-useless-code
Automatic merge from submit-queue

Delete useless code

The correct code is `cluster, ok := obj.(*v1beta1.Cluster)`, so the above `cluster := obj.(*v1beta1.Cluster)` is useless.
2016-08-02 23:36:31 -07:00
Lucas Käldström
c88a07ce1a Run goimports 2016-08-02 15:12:39 +03:00
xiangpengzhao
14adb38018 Delete useless code 2016-08-01 13:00:46 -04:00
xiangpengzhao
4ccd90d741 Log error in each loop it appears and fix wrong count of missed cluster. 2016-08-01 06:39:12 -04:00
xiangpengzhao
dfd12276df Keep track of missed and unensured counts 2016-08-01 05:21:40 -04:00
xiangpengzhao
d4fa23feb8 Check return value when calling ensureDnsRecords 2016-08-01 05:21:40 -04:00
Harry Zhang
c495397cae Refactor uuid into its own pkg 2016-07-30 00:07:02 -04:00
xiangpengzhao
6c9907b042 Separate long comment into lines. 2016-07-29 22:27:24 -04:00
xiangpengzhao
60798e7c48 Keep retry times the same for each place where ensureDnsRecords is called. 2016-07-29 12:30:27 -04:00
k8s-merge-robot
e7db6687fc Merge pull request #29455 from mwielgus/frsc-scheduling
Automatic merge from submit-queue

Replica location planner for Federated ReplicaSet Controller

Requires #29385 to be merged.

cc: @quinton-hoole @wojtek-t
2016-07-25 16:16:11 -07:00
Marcin Wielgus
ed92579d2e Replica location planner for Federated ReplicaSet Controller 2016-07-23 02:04:33 +02:00
Justin Santa Barbara
6463a220ee Expose Changesets (transactions) in dns provider
This makes the dnsprovider usable in more scenarios, and it also solves
some TODOs in the federation code.
2016-07-22 08:43:20 -04:00
k8s-merge-robot
f7409f3be2 Merge pull request #29368 from mwielgus/delaying_deliverer
Automatic merge from submit-queue

Delaying deliverer for Federated ReplicaSet

A helper struct to push data to a channel after a given delay. It runs on a single gouroutine and allows updates. An update cancels previous delivery if it was about to happen later than the new one. Otherwise the new update is discarded. 
All data require a string key that is used to identify the data (for updates and de-duplication).

cc: @quinton-hoole @wojtek-t
2016-07-22 01:13:57 -07:00
k8s-merge-robot
72a697a13d Merge pull request #28182 from quinton-hoole/2016-06-28-compare-rrsets-properly
Automatic merge from submit-queue

Federation: Use equivalent() instead of == to compare DNS ResourceRecordSets. Fixes #28135

Without this we sometimes incorrectly assume that DNS records hosted on cloud DNS servers need to be replaced when they don't need to be.  This results in unnecessary churn on DNS records.

cc: @nikhiljindal @madhusudancs @mfanjie FYI
2016-07-22 00:41:06 -07:00
Marcin Wielgus
85dd375cc8 Delaying deliverer for Federated ReplicaSet 2016-07-21 16:49:16 +02:00
Quinton Hoole
3dd1c0088e Use ResourceRecordSetsEquivalent() instead of == to compare rrsets. Fixes #28135 2016-07-20 15:49:19 -07:00