This section describes how to add a RADOS Gateway (rgw
) node to an existing
Ceph cluster.
To add a RADOS Gateway node:
In your project repository, add the following lines to the
cluster/ceph/init.yml
and modify them according to your environment:
_param:
ceph_rgw_node04_hostname: rgw04
ceph_rgw_node04_address: 172.16.47.162
ceph_rgw_node04_ceph_public_address: 10.13.0.162
ceph_rgw_node04_deploy_address: 192.168.0.162
linux:
network:
host:
rgw04:
address: ${_param:ceph_rgw_node04_address}
names:
- ${_param:ceph_rgw_node04_hostname}
- ${_param:ceph_rgw_node04_hostname}.${_param:cluster_domain}
Note
Skip the ceph_rgw_node04_deploy_address
parameter if you have
DHCP enabled on a PXE network.
Add the following lines to the cluster/ceph/rgw.yml
file:
parameters:
_param:
cluster_node04_hostname: ${_param:ceph_rgw_node04_hostname}
cluster_node04_address: ${_param:ceph_rgw_node04_address}
ceph:
common:
keyring:
rgw.rgw04:
caps:
mon: "allow rw"
osd: "allow rwx"
haproxy:
proxy:
listen:
radosgw:
servers:
- name: ${_param:cluster_node04_hostname}
host: ${_param:cluster_node04_address}
port: ${_param:haproxy_radosgw_source_port}
params: check
Note
Starting from the MCP 2019.2.10 maintenance update, the capabilities for RADOS Gateway have been restricted. To update the existing capabilities, perform the steps described in Restrict the RADOS Gateway capabilities.
Add the following lines to the cluster/infra/config/init.yml
file:
parameters:
reclass:
storage:
node:
ceph_rgw_node04:
name: ${_param:ceph_rgw_node04_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.ceph.rgw
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: ${_param:ceph_rgw_system_codename}
single_address: ${_param:ceph_rgw_node04_address}
deploy_address: ${_param:ceph_rgw_node04_deploy_address}
ceph_public_address: ${_param:ceph_rgw_node04_ceph_public_address}
keepalived_vip_priority: 104
Note
Skip the deploy_address
parameter if you have DHCP enabled on
a PXE network.
Add the following lines to the cluster/infra/kvm.yml
file and modify
infra_kvm_node03_hostname
depending on which KVM node the rgw
must
be running on:
parameters:
salt:
control:
size:
ceph.rgw:
cpu: 8
ram: 16384
disk_profile: small
net_profile: default
cluster:
internal:
node:
rgw04:
name: ${_param:ceph_rgw_node04_hostname}
provider: ${_param:infra_kvm_node03_hostname}.${_param:cluster_domain}
image: ${_param:salt_control_xenial_image}
size: ceph.rgw
Log in to the Jenkins web UI.
Open the Ceph - add node pipeline.
Specify the following parameters:
Parameter | Description and values |
---|---|
SALT_MASTER_CREDENTIALS | The Salt Master credentials to use for connection, defaults to
salt . |
SALT_MASTER_URL | The Salt Master node host URL with the salt-api port, defaults to
the jenkins_salt_api_url parameter. For example,
http://172.18.170.27:6969 . |
HOST | Add the Salt target name of the new RADOS Gateway node. For example,
rgw04* . |
HOST_TYPE Removed since 2019.2.13 update | Add rgw as the type of Ceph node that is going to be added. |
Click Deploy.
The Ceph - add node pipeline workflow:
reclass
state.linux
, openssh
, salt
, ntp
, rsyslog
,
keepalived
, haproxy
, ceph.radosgw
states.