{"id":13646489,"url":"https://github.com/caicloud/loadbalancer-controller","last_synced_at":"2025-04-19T18:23:52.571Z","repository":{"id":54683683,"uuid":"79294383","full_name":"caicloud/loadbalancer-controller","owner":"caicloud","description":"Kubernetes loadbalancer controller to provision ingress controller dynamically","archived":false,"fork":false,"pushed_at":"2021-02-05T07:51:58.000Z","size":16632,"stargazers_count":95,"open_issues_count":3,"forks_count":50,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-03-29T11:34:40.509Z","etag":null,"topics":["compass","compass-apps","controller","ingress","ingress-controller","kubernetes","loadbalancer"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/caicloud.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null}},"created_at":"2017-01-18T02:18:37.000Z","updated_at":"2024-09-14T13:57:09.000Z","dependencies_parsed_at":"2022-08-14T00:00:23.853Z","dependency_job_id":null,"html_url":"https://github.com/caicloud/loadbalancer-controller","commit_stats":null,"previous_names":[],"tags_count":61,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caicloud%2Floadbalancer-controller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caicloud%2Floadbalancer-controller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caicloud%2Floadbalancer-controller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caicloud%2Floadbalancer-controller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/caicloud","download_url":"https://codeload.github.com/caicloud/loadbalancer-controller/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249762269,"owners_count":21321902,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["compass","compass-apps","controller","ingress","ingress-controller","kubernetes","loadbalancer"],"created_at":"2024-08-02T01:02:57.235Z","updated_at":"2025-04-19T18:23:52.554Z","avatar_url":"https://github.com/caicloud.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n**Table of Contents**  *generated with [DocToc](https://github.com/thlorenz/doctoc)*\n\n- [LoadBalancer Controller](#loadbalancer-controller)\n  - [About the project](#about-the-project)\n    - [Status](#status)\n    - [Design](#design)\n    - [See also](#see-also)\n  - [Getting started](#getting-started)\n    - [Layout](#layout)\n  - [TODO](#todo)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n# LoadBalancer Controller \n\n## About the project\n\nA LoadBalancer, containing a `proxy` and multiple `providers`,  provides external traffic load balancing for kubernetes applications.\n\nA `proxy` is an ingress controller watching ingress resources to provide accesses that allow inbound connections to reach the cluster services.\n\nA `provider` is the entrance of the cluster providing high availability for connections to proxy (ingress controller).\n\n### Status\n\n**Working in process** \n\nThis project is still in alpha version.\n\n### Design\n\nLearn more about loadbalancer on [design doc](./docs/design.md)\n\n### See also\n\n-   [loadbalancer provider](https://github.com/caicloud/loadbalancer-provider)\n\n## Getting started\n\n### Layout\n\n```\n├── cmd\n│   └── controller\n├── config\n├── controller\n├── docs\n│   └── images\n├── hack\n│   └── license\n├── pkg\n│   ├── apis\n│   │   └── networking\n│   │       └── v1alpha1\n│   ├── informers\n│   │   ├── internalinterfaces\n│   │   └── networking\n│   │       └── v1alpha1\n│   ├── listers\n│   │   └── networking\n│   │       └── v1alpha1\n│   ├── toleration\n│   ├── tprclient\n│   │   └── networking\n│   │       └── v1alpha1\n│   └── util\n│       ├── controller\n│       ├── lb\n│       ├── strings\n│       ├── taints\n│       └── validation\n├── provider\n│   └── providers\n│       └── ipvsdr\n├── proxy\n│   └── proxies\n│       └── nginx\n└── version\n```\n\nA brief description:\n\n-   `cmd` contains main packages, each subdirecoty of `cmd` is a main package.\n-   `docs` for project documentations.\n-   `hack` contains scripts used to manage this repository.\n-   `pkg` contains apis, informers, listers, clients, util for LoadBalancer TPR.\n-   `provider` contains provider plugins, each subdirectory is one kind of a provider\n-   `proxy` contains proxy plugins, each subdirectory is one kind of a proxy\n-   `version` is a placeholder which will be filled in at compile time\n\n## TODO\n\n-   readjust the directory structure\n-   update api to v1alpha2\n-   separate api from the project to clientset\n-   auto generate clients and informers","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaicloud%2Floadbalancer-controller","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcaicloud%2Floadbalancer-controller","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaicloud%2Floadbalancer-controller/lists"}