Skip to content

Expose master + regionservers ui via NodePort Service #239

Description

@sbernauer

Currently stackablectl shows the following services:

stackablectl services list 
 PRODUCT    NAME       NAMESPACE  ENDPOINTS                             EXTRA INFOS 
                                                                                    
 hbase      hbase      default    regionserver 172.18.0.3:30025                     
                                  ui           http://172.18.0.3:30164              
                                  metrics      172.18.0.3:30447                     
                                                                                    
 hdfs       hdfs       default                                                      
                                                                                    
 zookeeper  zookeeper  default    zk           172.18.0.5:31384

There are clearly some services missing.
A task for refinement is to research what UIs should be accessible. We already know that there should be one endpoint per RegionServer. All RegionServers must be reachable individually.

Additional information

k get svc | grep hbase
hbase                        NodePort    10.96.252.49    <none>        16020:30025/TCP,16030:30164/TCP,8081:30447/TCP                11m
hbase-master-default         ClusterIP   None            <none>        16000/TCP,16010/TCP,8081/TCP                                  11m
hbase-regionserver-default   ClusterIP   None            <none>        16020/TCP,16030/TCP,8081/TCP                                  11m

k describe svc hbase hbase-master-default hbase-regionserver-default
Name:                     hbase
Namespace:                default
Labels:                   app.kubernetes.io/component=regionserver
                          app.kubernetes.io/instance=hbase
                          app.kubernetes.io/managed-by=hbase-operator
                          app.kubernetes.io/name=hbase
                          app.kubernetes.io/role-group=global
                          app.kubernetes.io/version=2.4.12-stackable0.2.0
Annotations:              <none>
Selector:                 app.kubernetes.io/component=regionserver,app.kubernetes.io/instance=hbase,app.kubernetes.io/name=hbase
Type:                     NodePort
IP Family Policy:         SingleStack
IP Families:              IPv4
IP:                       10.96.252.49
IPs:                      10.96.252.49
Port:                     regionserver  16020/TCP
TargetPort:               16020/TCP
NodePort:                 regionserver  30025/TCP
Endpoints:                10.244.1.79:16020,10.244.3.88:16020
Port:                     ui  16030/TCP
TargetPort:               16030/TCP
NodePort:                 ui  30164/TCP
Endpoints:                10.244.1.79:16030,10.244.3.88:16030
Port:                     metrics  8081/TCP
TargetPort:               8081/TCP
NodePort:                 metrics  30447/TCP
Endpoints:                10.244.1.79:8081,10.244.3.88:8081
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>


Name:              hbase-master-default
Namespace:         default
Labels:            app.kubernetes.io/component=master
                   app.kubernetes.io/instance=hbase
                   app.kubernetes.io/managed-by=hbase-operator
                   app.kubernetes.io/name=hbase
                   app.kubernetes.io/role-group=default
                   app.kubernetes.io/version=2.4.12-stackable0.2.0
                   prometheus.io/scrape=true
Annotations:       <none>
Selector:          app.kubernetes.io/component=master,app.kubernetes.io/instance=hbase,app.kubernetes.io/name=hbase,app.kubernetes.io/role-group=default
Type:              ClusterIP
IP Family Policy:  SingleStack
IP Families:       IPv4
IP:                None
IPs:               None
Port:              master  16000/TCP
TargetPort:        16000/TCP
Endpoints:         10.244.3.87:16000
Port:              ui  16010/TCP
TargetPort:        16010/TCP
Endpoints:         10.244.3.87:16010
Port:              metrics  8081/TCP
TargetPort:        8081/TCP
Endpoints:         10.244.3.87:8081
Session Affinity:  None
Events:            <none>


Name:              hbase-regionserver-default
Namespace:         default
Labels:            app.kubernetes.io/component=regionserver
                   app.kubernetes.io/instance=hbase
                   app.kubernetes.io/managed-by=hbase-operator
                   app.kubernetes.io/name=hbase
                   app.kubernetes.io/role-group=default
                   app.kubernetes.io/version=2.4.12-stackable0.2.0
                   prometheus.io/scrape=true
Annotations:       <none>
Selector:          app.kubernetes.io/component=regionserver,app.kubernetes.io/instance=hbase,app.kubernetes.io/name=hbase,app.kubernetes.io/role-group=default
Type:              ClusterIP
IP Family Policy:  SingleStack
IP Families:       IPv4
IP:                None
IPs:               None
Port:              regionserver  16020/TCP
TargetPort:        16020/TCP
Endpoints:         10.244.1.79:16020,10.244.3.88:16020
Port:              ui  16030/TCP
TargetPort:        16030/TCP
Endpoints:         10.244.1.79:16030,10.244.3.88:16030
Port:              metrics  8081/TCP
TargetPort:        8081/TCP
Endpoints:         10.244.1.79:8081,10.244.3.88:8081
Session Affinity:  None
Events:            <none>

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions