-
Notifications
You must be signed in to change notification settings - Fork 50
[API-597] Implementation external public address usage support #909
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
[API-597] Implementation external public address usage support #909
Conversation
|
Linux test FAILed. |
|
Windows test FAILed. |
|
Linux test FAILed. |
1 similar comment
|
Linux test FAILed. |
|
Windows test FAILed. |
2 similar comments
|
Windows test FAILed. |
|
Windows test FAILed. |
|
Linux test FAILed. |
|
Windows test PASSed. |
|
Linux test PASSed. |
1 similar comment
|
Linux test PASSed. |
|
Windows test FAILed. |
|
verify-windows |
|
Windows test PASSed. |
|
Windows test FAILed. |
1 similar comment
|
Windows test FAILed. |
|
Linux test PASSed. |
…lient. This feature is needed for external Kubernetes client to be able to connect to the Hazelcast cluster.
8e09a65 to
576f48e
Compare
|
Linux test PASSed. |
1 similar comment
|
Linux test PASSed. |
|
Windows test PASSed. |
|
Linux test PASSed. |
|
Windows test FAILed. |
1 similar comment
|
Windows test FAILed. |
|
Linux test FAILed. |
|
Windows test FAILed. |
|
Linux test PASSed. |
|
Linux test FAILed. |
Removed the check for specific error code when can not connect since it is different for Linux(operation cancelled (125)) and Mac OS(101 network_unreachable).
|
Windows test PASSed. |
|
Linux test PASSed. |
|
Linux test PASSed. |
|
Windows test PASSed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tiny edits.
Reference_Manual.md
Outdated
| The client sends requests directly to cluster members in the smart client mode (default) in order to reduce hops to accomplish operations. Because of that, the client should know the addresses of members in the cluster. | ||
| In cloud-like environments, or Kubernetes, there are usually two network interfaces, the private and the public network. When the client is in the same network as the members, it uses their private network addresses. Otherwise, if the client and the Hazelcast cluster are on different networks, the client cannot connect to members using their private network addresses. Hazelcast 4.2 introduced External Smart Client Discovery to solve that issue. The client needs to communicate with all cluster members via their public IP addresses in this case. Whenever Hazelcast cluster members are able to resolve their own public external IP addresses, they pass this information to the client. As a result, the client can use public addresses for communication. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
... network interfaces: private and public...
Reference_Manual.md
Outdated
| hazelcast::client::address{server_public_address, server_port}); | ||
| ``` | ||
|
|
||
| This solution works everywhere without further configuration: Kubernetes, AWS, GCP, Azure, etc. as long as the corresponding plugin is enabled in Hazelcast server configuration. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
... configuration (Kubernetes, AWS, GCP, Azure, etc.) as long as ...
examples/external-smart-client-discovery/connect-external-client.cpp
Outdated
Show resolved
Hide resolved
…lines no longer than a page size.
Co-authored-by: yemreinci <[email protected]>
|
Windows test PASSed. |
|
Linux test PASSed. |
1 similar comment
|
Linux test PASSed. |
|
Windows test PASSed. |
Initial implementation of external public address usage support for the C++ client. This feature is needed for external Kubernetes client to be able to connect to the Hazelcast cluster.
related to https://hazelcast.atlassian.net/browse/API-597
Verification: Sample kubernetes test run
fixes #899