This is an automated email from the ASF dual-hosted git repository.
ssulav pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone-installer.git
The following commit(s) were added to refs/heads/master by this push:
new 4bbffd4 HDDS-14676. Add configurable port for all ozone process (#10)
4bbffd4 is described below
commit 4bbffd4ae3f04a452318d1c57371421f824b2c53
Author: Soumitra Sulav <[email protected]>
AuthorDate: Tue Mar 3 01:55:45 2026 +0530
HDDS-14676. Add configurable port for all ozone process (#10)
---
inventories/dev/group_vars/all.yml | 28 +++++
roles/ozone_config/defaults/main.yml | 2 -
roles/ozone_config/templates/core-site.xml.j2 | 2 +-
roles/ozone_config/templates/ozone-site.xml.j2 | 165 ++++++++++++++++++++-----
roles/ozone_smoke_s3g/defaults/main.yml | 2 +-
roles/ozone_smoke_s3g/tasks/main.yml | 2 +-
roles/ozone_ui/tasks/main.yml | 12 +-
7 files changed, 170 insertions(+), 43 deletions(-)
diff --git a/inventories/dev/group_vars/all.yml
b/inventories/dev/group_vars/all.yml
index 89516b1..817c47a 100644
--- a/inventories/dev/group_vars/all.yml
+++ b/inventories/dev/group_vars/all.yml
@@ -50,3 +50,31 @@ ssh_private_key_path: "" # optional path to private key
to copy for cluster
# Markers for profile management
JAVA_MARKER: "Apache Ozone Installer Java Home"
ENV_MARKER: "Apache Ozone Installer Env"
+
+# Service ports — Ozone upstream defaults.
+# ---
+# SCM
+port_scm_client: 9860 # ozone.scm.client.port
+port_scm_datanode: 9861 # ozone.scm.datanode.port
+port_scm_block_client: 9863 # ozone.scm.block.client.port
+port_scm_http: 9876 # ozone.scm.http-address
+port_scm_ratis: 9894 # ozone.scm.ratis.port
+port_scm_grpc: 9895 # ozone.scm.grpc.port
+# OM
+port_om_rpc: 9862 # ozone.om.port (binds to hostname, not
0.0.0.0)
+port_om_http: 9874 # ozone.om.http-address
+port_om_ratis: 9872 # ozone.om.ratis.port
+port_om_grpc: 8981 # ozone.om.grpc.port
+# Recon
+port_recon_http: 9888 # ozone.recon.http-address
+port_recon_datanode: 9891 # ozone.recon.datanode.port &
ozone.recon.address
+# S3G
+port_s3g_http: 9878 # ozone.s3g.http-address
+port_s3g_admin: 19878 # ozone.s3g.webadmin.http-address
+# Datanode
+port_datanode_http: 9882 # hdds.datanode.http-address
+port_datanode_replication: 9886 # hdds.datanode.replication.port
+port_datanode_ratis_ipc: 9858 # hdds.container.ratis.ipc.port &
hdds.datanode.ipc
+port_datanode_client: 9859 # hdds.container.ipc.port
(XceiverServerGrpc bind) & DatanodeDetails.clientPort
+port_datanode_ratis_server: 9856 # dfs.container.ratis.datanode.port &
hdds.container.ratis.server.port
+port_datanode_ratis_admin: 9857 # dfs.container.ratis.admin.port
diff --git a/roles/ozone_config/defaults/main.yml
b/roles/ozone_config/defaults/main.yml
index 3ea392b..0505e3f 100644
--- a/roles/ozone_config/defaults/main.yml
+++ b/roles/ozone_config/defaults/main.yml
@@ -19,5 +19,3 @@ install_base: "/opt/ozone"
data_base: "/data/ozone"
ozone_opts: "-Xmx1024m -XX:ParallelGCThreads=8"
CONFIG_DIR: "" # if provided, can be used to feed additional properties via
vars
-
-
diff --git a/roles/ozone_config/templates/core-site.xml.j2
b/roles/ozone_config/templates/core-site.xml.j2
index d842ec0..eb0e9eb 100644
--- a/roles/ozone_config/templates/core-site.xml.j2
+++ b/roles/ozone_config/templates/core-site.xml.j2
@@ -24,7 +24,7 @@
{% else %}
<property>
<name>fs.defaultFS</name>
- <value>ofs://{{ om_hosts[0] }}:9862</value>
+ <value>ofs://{{ om_hosts[0] }}:{{ port_om_rpc }}</value>
</property>
{% endif %}
</configuration>
diff --git a/roles/ozone_config/templates/ozone-site.xml.j2
b/roles/ozone_config/templates/ozone-site.xml.j2
index 3b8b967..436fb59 100644
--- a/roles/ozone_config/templates/ozone-site.xml.j2
+++ b/roles/ozone_config/templates/ozone-site.xml.j2
@@ -27,21 +27,91 @@
{% set om_hosts = (_om_all[:1] if not (ha_enabled | default(false)) else
_om_all) %}
{% set scm_hosts = (_scm_all[:1] if not (ha_enabled | default(false)) else
_scm_all) %}
+ <property>
+ <name>ozone.metadata.dirs</name>
+ <value>{{ _first_metadata }}/meta</value>
+ </property>
+ <property>
+ <name>hdds.datanode.dir</name>
+ <value>{% for d in _data_bases %}{{ d }}/dn{% if not loop.last %},{% endif
%}{% endfor %}</value>
+ </property>
+ <property>
+ <name>dfs.container.ratis.datanode.storage.dir</name>
+ <value>{{ _first_metadata }}/meta/dn</value>
+ </property>
+ <property>
+ <name>ozone.om.db.dirs</name>
+ <value>{{ _first_metadata }}/data/om</value>
+ </property>
+ <property>
+ <name>ozone.om.ratis.snapshot.dir</name>
+ <value>{{ _first_metadata }}/meta/om</value>
+ </property>
+ <property>
+ <name>ozone.scm.db.dirs</name>
+ <value>{{ _first_metadata }}/data/scm</value>
+ </property>
+ <property>
+ <name>ozone.scm.datanode.id.dir</name>
+ <value>{{ _first_metadata }}/meta/scm</value>
+ </property>
+ <property>
+ <name>ozone.scm.skip.bootstrap.validation</name>
+ <value>true</value>
+ </property>
+ <property>
+ <name>ozone.replication</name>
+{% if _all_dn_count < 3 %}
+ <value>ONE</value>
+{% else %}
+ <value>THREE</value>
+{% endif %}
+ </property>
{% if scm_hosts|length > 0 %}
+ <!-- SCM ports -->
<property>
<name>ozone.scm.names</name>
<value>{{ scm_hosts | join(',') }}</value>
</property>
<property>
<name>ozone.scm.client.address</name>
- <value>{{ scm_hosts | join(':9860,') }}:9860</value>
+ <value>{{ scm_hosts | map('regex_replace', '$', ':' ~ port_scm_client) |
join(',') }}</value>
</property>
<property>
<name>ozone.scm.datanode.address</name>
- <value>{{ scm_hosts | join(':9861,') }}:9861</value>
+ <value>{{ scm_hosts | map('regex_replace', '$', ':' ~ port_scm_datanode) |
join(',') }}</value>
+ </property>
+ <property>
+ <name>ozone.scm.block.client.address</name>
+ <value>{{ scm_hosts | map('regex_replace', '$', ':' ~
port_scm_block_client) | join(',') }}</value>
+ </property>
+ <property>
+ <name>ozone.scm.client.port</name>
+ <value>{{ port_scm_client }}</value>
+ </property>
+ <property>
+ <name>ozone.scm.datanode.port</name>
+ <value>{{ port_scm_datanode }}</value>
+ </property>
+ <property>
+ <name>ozone.scm.block.client.port</name>
+ <value>{{ port_scm_block_client }}</value>
+ </property>
+ <property>
+ <name>ozone.scm.http-address</name>
+ <value>0.0.0.0:{{ port_scm_http }}</value>
+ </property>
+ <property>
+ <name>ozone.scm.ratis.port</name>
+ <value>{{ port_scm_ratis }}</value>
+ </property>
+ <property>
+ <name>ozone.scm.grpc.port</name>
+ <value>{{ port_scm_grpc }}</value>
</property>
{% endif %}
{% if scm_hosts|length > 1 %}
+ <!-- SCM ports -->
<property>
<name>ozone.scm.primordial.node.id</name>
<value>{{ scm_hosts[0] }}</value>
@@ -62,11 +132,13 @@
{% endfor %}
{% endif %}
{% if om_hosts|length == 1 %}
+ <!-- OM ports -->
<property>
<name>ozone.om.address</name>
- <value>{{ om_hosts[0] }}:9862</value>
+ <value>{{ om_hosts[0] }}:{{ port_om_rpc }}</value>
</property>
{% elif om_hosts|length > 1 %}
+ <!-- OM ports -->
<property>
<name>ozone.om.service.ids</name>
<value>omservice</value>
@@ -78,69 +150,98 @@
{% for h in om_hosts %}
<property>
<name>ozone.om.address.omservice.om{{ loop.index }}</name>
- <value>{{ h }}:9862</value>
+ <value>{{ h }}:{{ port_om_rpc }}</value>
+ </property>
+ <property>
+ <name>ozone.om.ratis.port.omservice.om{{ loop.index }}</name>
+ <value>{{ port_om_ratis }}</value>
+ </property>
+ <property>
+ <name>ozone.om.http-address.omservice.om{{ loop.index }}</name>
+ <value>{{ h }}:{{ port_om_http }}</value>
</property>
{% endfor %}
{% endif %}
+{% if om_hosts|length > 0 %}
+ <property>
+ <name>ozone.om.port</name>
+ <value>{{ port_om_rpc }}</value>
+ </property>
+ <property>
+ <name>ozone.om.ratis.port</name>
+ <value>{{ port_om_ratis }}</value>
+ </property>
+ <property>
+ <name>ozone.om.http-address</name>
+ <value>0.0.0.0:{{ port_om_http }}</value>
+ </property>
+ <property>
+ <name>ozone.om.grpc.port</name>
+ <value>{{ port_om_grpc }}</value>
+ </property>
+{% endif %}
{% if recon_hosts|length > 0 %}
+ <!-- Recon ports -->
<property>
<name>ozone.recon.http-address</name>
- <value>{{ recon_hosts[0] }}:9888</value>
+ <value>{{ recon_hosts[0] }}:{{ port_recon_http }}</value>
</property>
<property>
<name>ozone.recon.address</name>
- <value>{{ recon_hosts[0] }}:9891</value>
+ <value>{{ recon_hosts[0] }}:{{ port_recon_datanode }}</value>
+ </property>
+ <property>
+ <name>ozone.recon.datanode.address</name>
+ <value>0.0.0.0:{{ port_recon_datanode }}</value>
+ </property>
+ <property>
+ <name>ozone.recon.datanode.port</name>
+ <value>{{ port_recon_datanode }}</value>
</property>
{% endif %}
{% if s3g_hosts|length > 0 %}
+ <!-- S3G ports -->
<property>
<name>ozone.s3g.http-address</name>
- <value>{{ s3g_hosts[0] }}:9878</value>
+ <value>{{ s3g_hosts[0] }}:{{ port_s3g_http }}</value>
</property>
<property>
<name>ozone.s3g.webadmin.http-address</name>
- <value>{{ s3g_hosts[0] }}:19878</value>
+ <value>{{ s3g_hosts[0] }}:{{ port_s3g_admin }}</value>
</property>
{% endif %}
+ <!-- Datanode ports -->
<property>
- <name>ozone.metadata.dirs</name>
- <value>{{ _first_metadata }}/meta</value>
+ <name>hdds.datanode.http-address</name>
+ <value>0.0.0.0:{{ port_datanode_http }}</value>
</property>
<property>
- <name>hdds.datanode.dir</name>
- <value>{% for d in _data_bases %}{{ d }}/dn{% if not loop.last %},{% endif
%}{% endfor %}</value>
+ <name>hdds.datanode.ipc</name>
+ <value>0.0.0.0:{{ port_datanode_ratis_ipc }}</value>
</property>
<property>
- <name>dfs.container.ratis.datanode.storage.dir</name>
- <value>{{ _first_metadata }}/meta/dn</value>
+ <name>dfs.container.ratis.datanode.port</name>
+ <value>{{ port_datanode_ratis_server }}</value>
</property>
<property>
- <name>ozone.om.db.dirs</name>
- <value>{{ _first_metadata }}/data/om</value>
+ <name>dfs.container.ratis.admin.port</name>
+ <value>{{ port_datanode_ratis_admin }}</value>
</property>
<property>
- <name>ozone.om.ratis.snapshot.dir</name>
- <value>{{ _first_metadata }}/meta/om</value>
+ <name>hdds.container.ipc.port</name>
+ <value>{{ port_datanode_client }}</value>
</property>
<property>
- <name>ozone.scm.db.dirs</name>
- <value>{{ _first_metadata }}/data/scm</value>
+ <name>hdds.container.ratis.server.port</name>
+ <value>{{ port_datanode_ratis_server }}</value>
</property>
<property>
- <name>ozone.scm.datanode.id.dir</name>
- <value>{{ _first_metadata }}/meta/scm</value>
- </property>
- <property>
- <name>ozone.scm.skip.bootstrap.validation</name>
- <value>true</value>
+ <name>hdds.container.ratis.ipc.port</name>
+ <value>{{ port_datanode_ratis_ipc }}</value>
</property>
<property>
- <name>ozone.replication</name>
-{% if _all_dn_count < 3 %}
- <value>ONE</value>
-{% else %}
- <value>THREE</value>
-{% endif %}
+ <name>hdds.datanode.replication.port</name>
+ <value>{{ port_datanode_replication }}</value>
</property>
</configuration>
diff --git a/roles/ozone_smoke_s3g/defaults/main.yml
b/roles/ozone_smoke_s3g/defaults/main.yml
index 1d4b836..462aa86 100644
--- a/roles/ozone_smoke_s3g/defaults/main.yml
+++ b/roles/ozone_smoke_s3g/defaults/main.yml
@@ -14,4 +14,4 @@
# claim, damages or other liability.
#
s3g_bucket: demos3gbuck
-s3g_key: demos3gkey
+s3g_key: demos3gkey
\ No newline at end of file
diff --git a/roles/ozone_smoke_s3g/tasks/main.yml
b/roles/ozone_smoke_s3g/tasks/main.yml
index 02851e4..9344a18 100644
--- a/roles/ozone_smoke_s3g/tasks/main.yml
+++ b/roles/ozone_smoke_s3g/tasks/main.yml
@@ -16,7 +16,7 @@
---
- name: "Set S3G endpoint argument"
set_fact:
- s3g_endpoint_arg: '--endpoint-url "http://{{ inventory_hostname }}:9878"'
+ s3g_endpoint_arg: '--endpoint-url "http://{{ inventory_hostname }}:{{
port_s3g_http }}"'
- name: "Install awscli on S3G host"
package:
diff --git a/roles/ozone_ui/tasks/main.yml b/roles/ozone_ui/tasks/main.yml
index bf7167b..c28b93f 100644
--- a/roles/ozone_ui/tasks/main.yml
+++ b/roles/ozone_ui/tasks/main.yml
@@ -25,12 +25,12 @@
- name: "Compute service UI URLs"
set_fact:
endpoint_urls:
- om: "{{ _om_hosts_ui | map('regex_replace','^(.*)$','http://\\1:9874') |
list }}"
- scm: "{{ _scm_hosts_ui | map('regex_replace','^(.*)$','http://\\1:9876')
| list }}"
- recon: "{{ (_recon_hosts_ui | length > 0) | ternary(['http://' +
_recon_hosts_ui[0] + ':9888'], []) }}"
- s3g_http: "{{ _s3g_hosts_ui |
map('regex_replace','^(.*)$','http://\\1:9878') | list }}"
- s3g_admin: "{{ _s3g_hosts_ui |
map('regex_replace','^(.*)$','http://\\1:19878') | list }}"
- datanode: "{{ (_datanodes_ui | length > 0) | ternary(['http://' +
_datanodes_ui[0] + ':9882'], []) }}"
+ om: "{{ _om_hosts_ui | map('regex_replace', '^(.*)$', 'http://\\1:' ~
port_om_http) | list }}"
+ scm: "{{ _scm_hosts_ui | map('regex_replace', '^(.*)$', 'http://\\1:' ~
port_scm_http) | list }}"
+ recon: "{{ (_recon_hosts_ui | length > 0) | ternary(['http://' +
_recon_hosts_ui[0] + ':' + (port_recon_http | string)], []) }}"
+ s3g_http: "{{ _s3g_hosts_ui | map('regex_replace', '^(.*)$',
'http://\\1:' ~ port_s3g_http) | list }}"
+ s3g_admin: "{{ _s3g_hosts_ui | map('regex_replace', '^(.*)$',
'http://\\1:' ~ port_s3g_admin) | list }}"
+ datanode: "{{ (_datanodes_ui | length > 0) | ternary(['http://' +
_datanodes_ui[0] + ':' + (port_datanode_http | string)], []) }}"
- name: "Export UI endpoints to controller logs directory"
copy:
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]