Bug 1313910 - [DOCS] Lack of information on NodePorts
Summary: [DOCS] Lack of information on NodePorts
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Documentation
Version: 3.1.0
Hardware: Unspecified
OS: Unspecified
high
medium
Target Milestone: ---
: ---
Assignee: Gaurav Nelson
QA Contact: zhou ying
Vikram Goyal
URL:
Whiteboard: 3.7-release-plan
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-03-02 15:22 UTC by Eric Jones
Modified: 2021-08-30 13:06 UTC (History)
10 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-10-26 01:11:36 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Knowledge Base (Solution) 2159611 0 None None None 2016-03-08 14:36:20 UTC

Description Eric Jones 2016-03-02 15:22:46 UTC
Document URL: 
N/A

Section Number and Name: 
N/A

Describe the issue: 
In bug #: 1287471 the below was suggested for opening up ports beyond HTTP(s):

Our recommendation is to use Service NodePorts with the product today for this function.  Our documentation should describe how to make service node ports HA by leveraging the same mechanisms the routers use to be HA.

However, I cannot seem to find the documentation that could be used to accomplish that goal.

Suggestions for improvement: 
Create this documentation.

Comment 1 Eric Jones 2016-03-07 16:27:38 UTC
Bug number 1303232 was closed in favor of 1287471

They both make some reference to using nodePorts to achieve the goal of using non-HTTP(s) routing and they both suggest that the documentation should exist on how to do this.

@Clayton, as you made these suggestions, can you help create this documentation?

Comment 4 Gaurav Nelson 2017-09-12 02:08:51 UTC
Updated the docs to include the example provided in attached solution. Please review the changes in PR https://github.com/openshift/openshift-docs/pull/5237

Comment 5 Gaurav Nelson 2017-09-18 02:08:12 UTC
Hello Eric, can you please review this PR?

Comment 7 Phil Cameron 2017-09-19 17:05:11 UTC
erjones I am not sure what you would like to achieve with HA and node ports. The nodeport is bound to the service on every node in the cluster. So if you can get traffic to any node in the cluster it will go the service which will load balance it to some endpoint.

Comment 10 Phil Cameron 2017-09-29 12:54:32 UTC
See: https://docs.openshift.com/container-platform/3.6/dev_guide/getting_traffic_into_cluster.html

This should have what you need. If not add the info there.

HA is different for routers and services. 

Routers run on specific nodes in the cluster and external network admins must get the desired traffic to the node that is running the router. To make this high availability we increase the router replicas and use ipfailover to make a virtual IP (VIP) land on one of the nodes that is running a router replica. The external admin must get traffic to the VIP. The VIP will be on a node with a router.

For services, the nodeport is listening on all nodes in the cluster. The service will have multiple endpoints (typically the DC or RC has replicas > 1) If you manage to get traffic to any of the nodes in the cluster the nodeport will connect and traffic will go to one of the endpoints.

Comment 12 Clayton Coleman 2017-10-17 07:41:55 UTC
The V1 docs (referenced above) are out of date.  I would expect NodePort to scale at least as high as anything except dedicated routing and switching technology or hardware assisted routing, but you'll need to have a layer in front to ensure traffic reaches the appropriate nodes (whether that's a TCP load balancer, ECMP routing, etc).  I commented on the Pr

Comment 13 Gaurav Nelson 2017-10-19 01:26:10 UTC
Thanks Clayton, I have updated the PR to include information provided.

Comment 14 zhou ying 2017-10-19 05:43:47 UTC
 Gaurav Nelson:

   The PR LGTM, will verify this issue.

Comment 15 openshift-github-bot 2017-10-23 05:11:30 UTC
Commit pushed to master at https://github.com/openshift/openshift-docs

https://github.com/openshift/openshift-docs/commit/e1cff0c7001bc328d7aa6e87d315668666ff5d8f
Merge pull request #5237 from gaurav-nelson/Bug1313910Fixes

Bug#1313910 fixes - added information on nodePorts


Note You need to log in before you can comment on or make changes to this bug.