Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support enableIngress for RayCluster #38

Merged
merged 2 commits into from
Feb 17, 2022

Conversation

Jeffwan
Copy link
Collaborator

@Jeffwan Jeffwan commented Sep 19, 2021

address #27

Add new reconcile loop for ingress object. This is only working for RayCluster with spec.HeadGroupSpec.EnabledIngress = true users. By default, this is not enabled.

@Jeffwan Jeffwan added this to the v0.1.0 release milestone Oct 3, 2021
@Jeffwan Jeffwan removed this from the v0.1.0 release milestone Oct 14, 2021
@Jeffwan Jeffwan changed the title WIP: Support enableIngress for RayCluster Support enableIngress for RayCluster Nov 8, 2021
@Jeffwan Jeffwan force-pushed the support_ingress branch 5 times, most recently from dc914be to 8e08e07 Compare November 16, 2021 05:32
annotation[key] = value
}

// The tricky thing is we need three ports. redis, dashboard, client. should we use /dashboard /redis to support that?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the dashboard port is necessary, the redis/client-server port should be optional. We use ingress to expose port to internet access, but the redis/client-server is for internal network.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree. Another tricky thing is redis/client are TCP/UDP that most ingress can not easily support well. I will modify the first version to support dashboard only.

IngressRuleValue: networkingv1.IngressRuleValue{
HTTP: &networkingv1.HTTPIngressRuleValue{
// https://github.com/kubernetes/ingress-nginx/issues/1655#issuecomment-79129310
// It's ok to expose more ports on the same path
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will it expose more ports on the same path?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

since we only expose dashboard, we won't use this pattern now.

Name: utils.GenerateServiceName(cluster.Name),
Namespace: cluster.Namespace,
Labels: labels,
Annotations: annotation,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we add owner reference with Raycluster? It can help to delete ingress automatically?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's a good idea. I will do

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

owner reference is configured outside now

Add ingress resources in role

Copy more configurations from cluster annotation

Add ingress example

Update ingress version from v1beta1 to v1
return err
}

if err := controllerruntime.SetControllerReference(instance, ingress, r.Scheme); err != nil {
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chenk008 I set reference here.

@Jeffwan Jeffwan force-pushed the support_ingress branch 2 times, most recently from c6c8993 to 420c1bb Compare February 16, 2022 10:05
@chenk008
Copy link
Contributor

LGTM, thanks!

@chenk008 chenk008 merged commit ffa7e60 into ray-project:master Feb 17, 2022
@Jeffwan Jeffwan deleted the support_ingress branch February 17, 2022 08:20
chenk008 pushed a commit to chenk008/kuberay that referenced this pull request Mar 8, 2022
* Support enableIngress for RayCluster

Add ingress resources in role

Copy more configurations from cluster annotation

Add ingress example

Update ingress version from v1beta1 to v1

* Update to expose dashboard only
chenk008 added a commit that referenced this pull request Mar 22, 2022
Merge branch add_pod_lables of git@gitlab.alipay-inc.com:Arc/kuberay.git into master
https://code.alipay.com/Arc/kuberay/pull_requests/4?tab=diff

Signed-off-by: 壮酱 <zhengchicheng.zcc@antgroup.com>


* add operator config

* add vendor

* folder name change to kuberay-operator (#143)


* Add CRD verb permission in helm (#144)

* add crd verb permission in helm

* fix ray cluster volume

* Update helm-chart/kuberay-operator/README.md

Co-authored-by: Oliver Mannion <125105+tekumara@users.noreply.github.com>

Co-authored-by: wuhua.ck <wuhua.ck@alibaba-inc.com>
Co-authored-by: Oliver Mannion <125105+tekumara@users.noreply.github.com>
* Explanation and Best Practice for workers-head Reconnection (#142)

* Add Explaination and Best Practice for workers-head Reconnection

* Fixed formatting issue

* Minor updates

* updated to permlink and remove one empty line

* minor fix

Co-authored-by: Lin Ma <lin.ma1@bytedance.com>
* refactor: rename kubray -> kuberay (#145)

* docs: fix typo in README.md

* refactor: rename kubray -> kuberay
* Add nightly docker build workflow (#141)

* no --all-tags for nightly build

add nightly docker build workflow

add nightly docker build workflow

remove kubebuilder

update to workflow

* change docker build tag to repo revision
* add more debug info for goimport issue (#151)

* add more debug info for bug-150: goimport issue

* update goimport failure message
* Support enableIngress for RayCluster (#38)

* Support enableIngress for RayCluster

Add ingress resources in role

Copy more configurations from cluster annotation

Add ingress example

Update ingress version from v1beta1 to v1

* Update to expose dashboard only
* Add troubleshooting guide for ray version mismatch (#154)

Co-authored-by: chenyu.jiang <chenyu.jiang@bytedance.com>
* Enable gofmt and move goimports to linter job (#158)

* Enable gofmt and move related work to linter job

1. Introduce gofmt github action
2. Move goimports from build job to lint job
3. Run gofmt -s -w to simplify test codes and fix all lint issues in apiserver and cli projects

* Fix lint errors in apiserver

* Fix lint errors in cli

* Fix goimports error
* Setup ci for apiserver (#162)


* first release

* add vendor

* PullRequest: 2 add aci

Merge branch aci of git@gitlab.alipay-inc.com:Arc/kuberay.git into master
https://code.alipay.com/Arc/kuberay/pull_requests/2

Signed-off-by: 五花 <wuhua.ck@antgroup.com>


* add aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* fix aci

* test aci

* test

* test

* fix comment

* Add KubeRay release guideline (#161)


* add flag watchNamespace (#165)

Co-authored-by: chen kang <kongchen28@gmail.com>
* [Feature]Add subcommand `--version` (#166)

* add subcommand --version

* fix

* lint

Co-authored-by: wuhua.ck <wuhua.ck@alibaba-inc.com>
* Leader election need lease permission (#169)

Co-authored-by: wuhua.ck <wuhua.ck@alibaba-inc.com>
* [CLI] check viper error (#172)

* check file exist before write

* fix

Co-authored-by: wuhua.ck <wuhua.ck@alibaba-inc.com>
* fix cli typo (#173)

Co-authored-by: wuhua.ck <wuhua.ck@alibaba-inc.com>
* add vendor

* fix

* fix
lowang-bh pushed a commit to lowang-bh/kuberay that referenced this pull request Sep 24, 2023
* Support enableIngress for RayCluster

Add ingress resources in role

Copy more configurations from cluster annotation

Add ingress example

Update ingress version from v1beta1 to v1

* Update to expose dashboard only
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants