Commit Graph

334 Commits

Author SHA1 Message Date
RainbowMango d8e2053b35 Suppress reported work from propagating
Signed-off-by: RainbowMango <qdurenhongcai@gmail.com>
2021-07-09 11:55:30 +08:00
changzhen 1e6c21cc28 mutate policy's ResourceSelectors in webhook
Signed-off-by: changzhen <changzhen5@huawei.com>
2021-07-09 11:02:23 +08:00
pigletfly d4bbde279f Add skippedPropagatingAPIs option
Signed-off-by: pigletfly <wangbing.adam@gmail.com>
2021-07-08 19:17:01 +08:00
changzhen 7e63e90ef9 derive service from ServiceImport
Signed-off-by: changzhen <changzhen5@huawei.com>
2021-07-07 19:30:40 +08:00
karmada-bot b35402c3bd
Merge pull request #496 from qianjun1993/ensureWork
ensure work with given replicas
2021-07-07 15:40:24 +08:00
junqian ffe285ea2a ensure work with given replicas
Signed-off-by: junqian <junqian@tencent.com>
2021-07-07 15:14:23 +08:00
changzhen a6c76d2ffa collect endpointslices from executionNamespace to service namespace
Signed-off-by: changzhen <changzhen5@huawei.com>
2021-07-06 22:08:58 +08:00
Garrybest 38690cbda6 share informer manager in global
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-07-05 19:31:41 +08:00
karmada-bot d95edbd747
Merge pull request #484 from XiShanYongYe-Chang/mcs
Add ServiceExport controller to report EndpointSlice
2021-07-03 17:15:19 +08:00
changzhen f32bd501e6 add service_export_controller to watch serviceexport and report endpointslices to karmada
Signed-off-by: changzhen <changzhen5@huawei.com>
2021-07-03 16:33:07 +08:00
Garrybest b1de17b3d7 block start in cluster health monitor
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-07-01 10:41:45 +08:00
karmada-bot e1db428290
Merge pull request #454 from Garrybest/cluster-lifecycle
monitor cluster health in cluster_controller
2021-06-28 09:18:12 +08:00
Garrybest d434a4d57e monitor cluster health in cluster_controller
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-06-27 16:43:29 +08:00
lihanbo f45147a9ce adopt applying manifest to member cluster when resource with the same name and kind already exists
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-06-26 16:25:10 +08:00
karmada-bot d982bea021
Merge pull request #468 from pigletfly/fix-sync-work
Fix sync work status
2021-06-25 21:51:09 +08:00
shinytang6 3ad39af5cd fix(controller): rm sub-resources from cluster api enablement list
Signed-off-by: shinytang6 <1074461480@qq.com>
2021-06-24 21:06:09 +08:00
pigletfly 46e587e5ad Fix sync work status
Signed-off-by: pigletfly <wangbing.adam@gmail.com>
2021-06-24 16:44:53 +08:00
karmada-bot c053b6c8b3
Merge pull request #462 from vincent-pli/extend-cluster-status
Extend cluster.status.APIEnablements.Resources to struct with Kind
2021-06-24 15:15:08 +08:00
pengli d5ee4e64cd Extend cluster.status.APIEnablements.Resources to struct with Kind
Signed-off-by: pengli <justdoit.pli@gmail.com>
2021-06-24 13:40:52 +08:00
Garrybest 24ca29017e add ScalarResources into cluster
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-06-23 15:27:34 +08:00
karmada-bot fa3ac4888e
Merge pull request #421 from Garrybest/cluster-lifecycle-manager
add cluster lease controller
2021-06-18 17:50:12 +08:00
karmada-bot 3f99da3024
Merge pull request #442 from vincent-pli/no-informer-for-member-cluster-when-applied-faied
No informer for sync status back when k8s resource applied failed to member clusters
2021-06-18 12:51:25 +08:00
pengli b602aaf868 no informer for sync status back when k8s resource applied failed to member cluster
Signed-off-by: pengli <justdoit.pli@gmail.com>
2021-06-18 12:00:28 +08:00
karmada-bot c6000efe6b
Merge pull request #444 from Garrybest/init-container
modify pending pods resource calculation
2021-06-17 10:13:08 +08:00
Rohan Sharma cd00c7c73c Fix redundant log
Signed-off-by: Rohan Sharma <rhnsharma5113@gmail.com>
2021-06-16 20:25:31 +05:30
Garrybest b9010cfe9b add cluster lease controller
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-06-16 21:19:43 +08:00
Garrybest 207eb1677f add pending pods resource calculation
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-06-16 21:13:46 +08:00
Garrybest 7bc0d00e61 clean up cluster resource calculation
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-06-15 20:15:04 +08:00
Garrybest cd6ba3558f calculate ResourceSummary in new cluster API
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-06-15 15:03:06 +08:00
RainbowMango 17804ac550 Split listNodesAndPods function
Signed-off-by: RainbowMango <qdurenhongcai@gmail.com>
2021-06-11 17:13:42 +08:00
karmada-bot 738c148401
Merge pull request #417 from Garrybest/cluster-api
make cluster represents more precise resources
2021-06-11 16:15:02 +08:00
Garrybest 7632300761 change legacy code to adopt new cluster API
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-06-10 19:44:58 +08:00
lihanbo aa4baa12a2 clean up works when resource binding has been removed
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-06-10 10:00:54 +08:00
Garrybest 0331f8c6df modify hard code in cluster_status_controller
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-06-04 20:51:16 +08:00
Garrybest 26085fcd6f feat(cluster-status-controller): use cached lister for getting node summary
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-06-03 11:54:44 +08:00
changzhen 5473488c04 fix golangci-lint: Implicit memory aliasing in for loop(G601)
Signed-off-by: changzhen <changzhen5@huawei.com>
2021-06-01 16:42:57 +08:00
Rui Fang bbcf69f368
work: fix workload name conflicts (#358) (#359)
Signed-off-by: Garrybest <garrybest@foxmail.com>
2021-05-20 10:34:27 +08:00
gy95 d33ae3818c
fix blank lines of import packages and repeated import problems (#337)
Signed-off-by: gy95 <guoyao17@huawei.com>
2021-05-16 19:01:11 +08:00
futuretea 39d1a3a636 Fix goimports
Signed-off-by: futuretea <1913508671@qq.com>
2021-05-13 11:31:19 +08:00
RainbowMango 763c2a10e7 Adopt Reconcile() method signature change
Adopt MapOjbect removing change
Adopt event handling object changes
Adopt ToRequestsFunc to MapFunc change
Adopt EnqueueRequestsFromMapFunc change
Adopt runerable interface change
Adopt using admission review version v1

Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-05-08 19:12:35 +08:00
Hongcai Ren fe2efa6139
Retry collect cluster status in case of cluster offline. (#275)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-04-20 09:16:54 +08:00
Hongcai Ren 71f4ddeb81
Add --cluster-status-update-frequency flag for karmada-agent (#272)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-04-17 18:38:24 +08:00
Hanbo Li 28e6d3ff71
support ReplicaSchedulingPolicy (#269)
Signed-off-by: lihanbo <lihanbo2@huawei.com>
Signed-off-by: Lihanbo (Hampo <l00512446@china.huawei.com>
2021-04-15 17:37:38 +08:00
Hongcai Ren fd5aeb8cf5
Introduce federated object key for refactor status clollection (#266)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-04-12 15:12:16 +08:00
Hanbo Li a3ebc74cde
trigger resync for override policy changes (#250)
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-04-02 17:34:04 +08:00
Hanbo Li dcad956744
optimize karmadactl unjoin command (#254)
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-04-02 10:14:07 +08:00
Hongcai Ren 3b3fde5ccd
remove useless karmada.io/executionspace label from cluster object. (#253)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-04-01 17:08:42 +08:00
yangcheng-icbc 3c193e1760
the binding name for any resource template should be a name-kind format (#248)
Signed-off-by: icbc-yangcheng <shineus1996@gmail.com>
2021-03-31 16:33:45 +08:00
Zhen Chang 986bcbcd29
add judgment with work label when joining binding queue (#246)
Signed-off-by: changzhen <changzhen5@huawei.com>
2021-03-31 09:24:02 +08:00
lihanbo d69f65479d fix the failure of getting namespace in cluster controller
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-03-27 20:26:37 +08:00
lihanbo e7aeb332ad add e2e test for karmada agent
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-03-27 17:58:55 +08:00
RainbowMango 4696f7800d Fix non-operation update block status reflect issue
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-03-25 21:29:15 +08:00
Hanbo Li 65a4f32e3e
generate work name based on different resource (#232)
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-03-25 11:59:06 +08:00
Hanbo Li 59a02e0030
add karmada agent (#226)
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-03-24 14:51:13 +08:00
Zhen Chang 0290ebf253
Aggregate status to clusterResourceBinding (#223)
Signed-off-by: changzhen <changzhen5@huawei.com>
2021-03-18 14:40:33 +08:00
Zhen Chang da34779efb
Aggregate status to resourcebinding (#221)
Signed-off-by: changzhen <changzhen5@huawei.com>
2021-03-17 18:17:46 +08:00
Hanbo Li fa86b6afd1
add cluster resource binding controller (#205)
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-03-11 09:18:28 +08:00
Zhen Chang 1b0aa972a1
Add webhook for mutating workload object of work resource (#206)
Signed-off-by: changzhen <changzhen5@huawei.com>
2021-03-10 17:46:58 +08:00
Hongcai Ren 5abf32099f
wait for dependent override present before apply policy (#204)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-03-10 17:14:15 +08:00
Hongcai Ren 614d7b0b8d
trigger re-match for policy changes (#202)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-03-09 18:56:54 +08:00
RainbowMango 30bda2b55b Moving ResourceBinding to work.karmada.io group
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-03-06 15:37:51 +08:00
RainbowMango 0b22238888 Adopt work API group change
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-03-06 14:30:06 +08:00
Hongcai Ren f262e2680f
Deprecate created-by label (#194)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-03-06 11:13:23 +08:00
Hongcai Ren 7905bb2371
Rename PropagationBinding to ResourceBinding (#193)
* Rename PropagationBinding to ResourceBinding

Signed-off-by: RainbowMango <renhongcai@huawei.com>

* Auto generate files

Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-03-06 09:46:35 +08:00
Hongcai Ren 288d24c7b9
Deprecate create by label from manifests (#191)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-03-06 09:28:01 +08:00
Hongcai Ren 3e31afdf4f
Deprecate owner label(karmada.io/created-by) set to Work object (#184)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-03-04 11:20:26 +08:00
RainbowMango d86fcf9fe3 match appropriate policy for detected resource.
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-03-03 10:14:56 +08:00
Hongcai Ren b83a915955
Deprecated PolicyClaimLabel and replace with new labels (#178)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-02-27 18:23:10 +08:00
xsy 9711b9e5f8
Fix the failure of updating member cluster resources when the work changes (#179)
Signed-off-by: xieshiyi <xieshiyi1@huawei.com>
2021-02-27 18:13:25 +08:00
Hanbo Li 14154f7c77
add namespace sync controller (#173)
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-02-26 09:49:24 +08:00
Hongcai Ren e7298f6f14
Optimize AsyncWorker make it could be re-use by other components (#174)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-02-25 20:27:07 +08:00
xsy 5c5aacdf51
fix panic when single cluster manager not found (#170)
Signed-off-by: xieshiyi <xieshiyi1@huawei.com>
2021-02-25 10:15:27 +08:00
Hongcai Ren 5f7305f1d7
Rename PropagationWork to Work. (#169)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-02-09 14:30:34 +08:00
Hongcai Ren c5502fc434
Remove hardcoded condition type. (#166)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-02-05 17:25:55 +08:00
Hanbo Li 6d907af426
support DependentOverrides (#157)
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-02-03 17:53:37 +08:00
Xianpao Chen 540188c3cc
transform hpa to propagationwork (#147)
Signed-off-by: chenxianpao <chenxianpao@huawei.com>
2021-01-29 12:29:41 +08:00
Xianpao Chen f684ef0371
init hpa controller framework (#141)
Signed-off-by: chenxianpao <chenxianpao@huawei.com>
2021-01-26 10:12:06 +08:00
Kevin Wang aa3d5b1c6a
update propagationpolicy controller name, according to API change (#145)
* update propagationpolicy controller name, according to API change

Signed-off-by: Kevin Wang <kevinwzf0126@gmail.com>

* fix lint

Signed-off-by: Kevin Wang <kevinwzf0126@gmail.com>
2021-01-25 18:51:11 +08:00
Kevin Wang 0dba6b8e23
update cluster_status_controller name according to API change (#144)
Signed-off-by: Kevin Wang <kevinwzf0126@gmail.com>
2021-01-25 18:50:25 +08:00
Kevin Wang 422cd8e555 rename propagationstrategy to policy in implementations
Signed-off-by: Kevin Wang <kevinwzf0126@gmail.com>
2021-01-25 15:55:06 +08:00
Kevin Wang 4afcabe5f1 rename apigroup name, from propagationstrategy to policy
Signed-off-by: Kevin Wang <kevinwzf0126@gmail.com>
2021-01-25 15:55:06 +08:00
Kevin Wang e33559250c rename membercluster to cluster in relevant implementations
Signed-off-by: Kevin Wang <kevinwzf0126@gmail.com>
2021-01-23 09:53:52 +08:00
Kevin Wang 03120e6923 update generated files
Signed-off-by: Kevin Wang <kevinwzf0126@gmail.com>
2021-01-23 09:53:52 +08:00
Kevin Wang da394ab07a rename membercluster api to cluster
Signed-off-by: Kevin Wang <kevinwzf0126@gmail.com>
2021-01-23 09:53:52 +08:00
Xianpao Chen 4ad4367eae
remove duplicate errors import (#135)
Signed-off-by: chenxianpao <chenxianpao@huawei.com>
2021-01-22 11:03:20 +08:00
Xianpao Chen 991d390778
refactor bindingcontroller with c.Client (#131)
Signed-off-by: chenxianpao <chenxianpao@huawei.com>
2021-01-21 17:33:47 +08:00
Hongcai Ren f04229cec9
Support override policy (#130)
* support override resources by policy

Co-authored-by: lihanbo <lihanbo2@huawei.com>

Signed-off-by: RainbowMango <renhongcai@huawei.com>

* Update vendor

Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-01-20 10:33:18 +08:00
Hongcai Ren 893fe6b93e
print logs only for real error and remove outdate todo (#129)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-01-18 18:35:21 +08:00
Xianpao Chen 323a375dbb
refactor karmadaclient to client (#125)
Signed-off-by: chenxianpao <chenxianpao@huawei.com>
2021-01-18 18:28:44 +08:00
Hanbo Li b9504db59b
recreate resource when resource in member cluster is unexpectedly deleted (#127)
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-01-18 11:38:46 +08:00
Zhonghu Xu c59afde0e6
Added scheduler framework and basic functionality(#108)
Signed-off-by: xuzhonghu <xuzhonghu@huawei.com>
2021-01-07 20:39:38 +08:00
Hanbo Li 143f09af1b
add object watcher to manage operations for object dispatched to member clusters (#104)
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2021-01-07 18:51:07 +08:00
Kevin Wang b3b08d6d70
update propagation policy api, make namespace and name singular in resourceSelector (#107)
* update propagation policy api, make namespace and name singular in resourceSelector

Signed-off-by: Kevin Wang <kevinwzf0126@gmail.com>
2021-01-07 10:25:28 +08:00
Hongcai Ren 3785f32ef2
Refelect resource running status to PropagationWork. (#106)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-01-05 16:18:28 +08:00
Hongcai Ren e794857320
execution controller only foucs on generation changed event (#105)
Signed-off-by: RainbowMango <renhongcai@huawei.com>
2021-01-05 12:00:52 +08:00
Xianpao Chen 8e0f2c4cae
add work queue for status controller (#99)
Signed-off-by: chenxianpao <chenxianpao@huawei.com>
2020-12-31 17:39:33 +08:00
Hanbo Li 7ed40d0ea7
get member cluster healthy status with the /readyz endpoint (#98)
Signed-off-by: lihanbo <lihanbo2@huawei.com>
2020-12-31 10:20:07 +08:00
Hongcai Ren e4c7379eb5
simplify finalizer usage. (#94) 2020-12-30 09:25:00 +08:00
Hanbo Li 5327705f6e
add finalizer when creating propagationwork (#92) 2020-12-28 17:09:53 +08:00
Xianpao Chen 62a85ea0f8
add informermangers for status processing (#91)
* add informermangers for status processing

Co-authored-by: Hongcai Ren <renhongcai@huawei.com>
2020-12-28 10:14:05 +08:00
chenxianpao a2925a3f9d fix bug that can't resync policy corretly when resource was deleted 2020-12-26 14:24:35 +08:00
lihanbo e568db711e get membercluster resource from cache 2020-12-26 11:45:00 +08:00
chenxianpao 1c760c6b1f remove unnecessary file 2020-12-25 17:38:21 +08:00
lihanbo fb91d91c94 add membercluster status controller 2020-12-23 14:48:48 +08:00
RainbowMango a35b577afe adoption after enalbe CRD subresource 2020-12-21 09:24:33 +08:00
Hongcai Ren 8c312961f9
Improve e2e test framework and add a policy test case (#78)
* Add E2E test case of basic policy propagation

* update vendor
2020-12-19 11:22:02 +08:00
Xianpao Chen dc017b0b8c
Add work status controller framework (#75) 2020-12-17 16:56:28 +08:00
Kevin Wang 52ff0e4ab9
reflect github org update (#73)
Signed-off-by: Kevin Wang <kevinwzf0126@gmail.com>
2020-12-15 11:47:13 +08:00
Hanbo Li edd8763265
add karmadactl unjoin command (#67) 2020-12-14 17:36:48 +08:00
Xianpao Chen ce8b52c3b3
refactor ensure function by createorupdate in controller-runtime (#68) 2020-12-11 15:50:37 +08:00
Xianpao Chen bf84ff9001
remove orphan work and binding (#62) 2020-12-09 11:48:45 +08:00
RainbowMango aa24ea2457 client interface change after scope change. 2020-12-08 14:12:35 +08:00
Hanbo Li 4d2e1de9e9
prefix execution space name with karmada-es- (#61) 2020-12-08 11:12:28 +08:00
Hanbo Li e7d751bbc8
manipulate GVR from GVK by RESTMapper for execution controller (#60) 2020-12-07 17:16:18 +08:00
Xianpao Chen 61c86f7a0c
rename function name that ambiguous (#54) 2020-12-07 10:02:52 +08:00
RainbowMango c94a795299 manipulate GVR from GVK by RESTMapper 2020-12-07 09:38:01 +08:00
Hanbo Li 75d912aa5c
refactor membercluster controller and execution controller with controller-runtime (#55) 2020-12-04 16:39:05 +08:00
Xianpao Chen 28ecd3b0ff
refactor binding controller with controller-runtime (#52) 2020-12-04 11:47:06 +08:00
RainbowMango 6d768938b7 Introduce controller-runtime to implementes policy controller. 2020-12-03 21:40:37 +08:00
RainbowMango f9cde6835b Fix can not propagate to multiclusters issue 2020-12-01 15:34:18 +08:00
Xianpao Chen be32c34b69
add policy resource label selector (#36) 2020-11-26 15:21:48 +08:00
mrlihanbo 395b4da4f8
ensure finalizer for given propagationwork (#34) 2020-11-26 14:42:17 +08:00
mrlihanbo 90988a5580
delete execution space when membercluster deleted (#33) 2020-11-26 11:52:06 +08:00
Xianpao Chen a3c6e061eb
fix no apiversion and kind bug when creating binding or work (#29) 2020-11-23 19:56:12 +08:00
mrlihanbo 3b4bec41ba
add execution controller (#25) 2020-11-23 17:49:35 +08:00
RainbowMango 3cce1a06c1 suppress some repeated logs. 2020-11-20 19:52:01 +08:00
chenxianpao 034ba017b4 Add propagationWork ownerreference 2020-11-19 20:16:38 +08:00
chenxianpao dafa93bc6c 1. New policy controller. 2. check work exist condition 2020-11-19 11:53:04 +08:00
lihanbo e8f189ab36 create namespace when a member cluster joined 2020-11-16 21:49:16 +08:00
chenxianpao 3a9e5cdac4 Transform binding to work 2020-11-16 21:01:10 +08:00
chenxianpao 64f3ebc0f5 Enable binding controller 2020-11-13 09:58:42 +08:00
RainbowMango ab18351365 enable membercluster controller. 2020-11-12 17:31:11 +08:00
chenxianpao 9557372929 Add binding controller 2020-11-12 10:32:06 +08:00
RainbowMango 135b0dbdda Add controller-manager framework 2020-11-11 14:13:09 +08:00