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

Enable create_actor_pool to use elastic ip #95

Merged
merged 7 commits into from
Aug 12, 2024

Conversation

frostyplanet
Copy link
Contributor

@frostyplanet frostyplanet commented Jul 14, 2024

create_actor_pool: Add extra_conf option listen_elastic_ip

Usage:

        create_actor_pool(elastic_address,
            n_process=0,
            extra_conf={'listen_elastic_ip': True},
        )

While xinference worker serve on cloud elastic_ip,
the address used in create_actor_pool() and create_actor both have to be the elastic ip,
in order for ActorRef passing around RPC method to client, but we could only listen on 0.0.0.0.
(Because the ip is not only valid outside the host)

Additional fixes:

  1. The previous PR ENH: fix non-local client connection problem when server listen on 0.0.0.0 #92 does not consider ucx address format: ucx://127:0.0.1:3456
  2. Fix some address.split() for ipv6 case because ipv6 contains multiple : in the ip part

Add cross unittests for ipv6 X listen_elastic_ip X ucx.
The only missing part is ucx X ipv6, because ucx does not supoort ipv6
ISSUE: #96

@XprobeBot XprobeBot added this to the v0.3.3 milestone Jul 14, 2024
@frostyplanet frostyplanet changed the title Fix bug related to ucs and ipv6 Fix bug related to ucx and ipv6 Jul 14, 2024
@frostyplanet frostyplanet changed the title Fix bug related to ucx and ipv6 Enable create_actor_pool to use elastic ip Jul 14, 2024
Copy link

codecov bot commented Jul 14, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 85.03%. Comparing base (d6465c9) to head (0a5cdf8).
Report is 7 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #95      +/-   ##
==========================================
- Coverage   88.97%   85.03%   -3.95%     
==========================================
  Files          48       54       +6     
  Lines        4038     4552     +514     
  Branches      770      831      +61     
==========================================
+ Hits         3593     3871     +278     
- Misses        358      587     +229     
- Partials       87       94       +7     
Flag Coverage Δ
unittests 84.86% <ø> (-3.95%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Because ipv6 ip has multiple ':'
Introduced from
 commit 5ffa0ea
Author: Adam Ning <frostyplanet@gmail.com>
Date:   Wed Jul 10 15:24:08 2024 +0800

    ENH: fix non-local client connection problem when server listen on 0.0.0.0 (xorbitsai#92)
frostyplanet and others added 5 commits August 8, 2024 16:43
Usage:

    create_actor_pool(elastic_address,
	n_process=0,
	extra_conf={'listen_elastic_ip': True},
    )

While xinference worker serve on cloud elastic_ip,
the address used in create_actor_pool() and create_actor both have to be the elastic ip,
in order for ActorRef passing around RPC method to client, but we could only listen on 0.0.0.0.
(Because the ip is not only valid outside the host)
Copy link
Contributor

@qinxuye qinxuye left a comment

Choose a reason for hiding this comment

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

LGTM

@qinxuye qinxuye merged commit 64aca92 into xorbitsai:main Aug 12, 2024
12 of 13 checks passed
luweizheng added a commit to luweizheng/xoscar that referenced this pull request Sep 24, 2024
Co-authored-by: Lu Weizheng <luweizheng36@hotmail.com>
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.

4 participants