Skip to content
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

rgw: set tuning parameters #1458

Merged
merged 1 commit into from Apr 25, 2017
Merged

rgw: set tuning parameters #1458

merged 1 commit into from Apr 25, 2017

Conversation

alimaredia
Copy link
Contributor

Add more rgw ceph config variables and create
pools for rgw.

Suggestions for parameters in comments

Signed-off-by: Ali Maredia amaredia@redhat.com

@alimaredia
Copy link
Contributor Author

@alfredodeza this is my first foray into ceph-ansible. After reading the docs I think I got the syntax (mostly) right. ATM we still need to finalize comments and parameters.

@@ -326,6 +326,8 @@ dummy:
#radosgw_dns_s3website_name: your.subdomain.tld # subdomain used by radosgw for website bucket hosting.
# Rados Gateway options
#email_address: foo@bar.com
#TODO: PROVIDE SUGGESTIONS FOR DIFFERENT CONFIGURATIONS
Copy link
Member

@leseb leseb Apr 19, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do not edit this file directly, if it's a rgw option then this should go into roles/ceph-rgw/defaults/main.yml, if it's global this goes into: roles/ceph-common/defaults/main.yml. Then run generate_group_vars_sample.sh.

@@ -0,0 +1,9 @@
# Uncomment below lines to create pools for the rgw
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are variables in a dict so they should go into: roles/ceph-mon/defaults/main.yml

@@ -56,6 +56,8 @@

- include: set_osd_pool_default_pg_num.yml

- include: set_rgw_pool_pg_num.yml
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See my last comment, you can remove this file.

@@ -0,0 +1,7 @@
---
- name: create rgw pools if rgw_pool is defined
shell: |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the command module should be enough here.

# Uncomment below lines to create pools for the rgw
# TODO: recommend tuning pg_nums for different configurations
#rgw_pool:
# rgw_pool_name1:
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@cbodley are there any default values we can add to this, so the entire file isn't commented out?

ceph --connect-timeout 5 --cluster {{ cluster }} osd pool {{ item.key }} {{ item.value.pg_num }}
changed_when: false
failed_when: false
with_dict: "{{ rgw_pool }}"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this task looks useful outside of rgw, maybe we should call it something more generic like create_pool_pgs.yml, and use create_pools for the dict name?

# rgw_pool_name2:
# pg_num: y2
# rgw_pool_name3:
# pg_num: y3
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

does this stuff not belong under group_vars for users to customize?

# buckets which causes performance and stability issues.
#ceph_conf_overrides:
# rgw:
# radosgw_civetweb_num_threads: 50
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mattbenjamin is the suggested number for this supposed to be lower? This is what it defaults to now?

# The below values were determined to be safe defaults to
# prevent users from putting too many objects into their
# buckets which causes performance and stability issues.
#ceph_conf_overrides:
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@leseb is this the appropriate location and method to set rgw ceph.conf values? Also would it make sense to move these values (https://github.com/ceph/ceph-ansible/blob/master/group_vars/all.yml.sample#L290-#L328) into this file?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No keep it here :). However, this won't work as expected I'm afraid since we have one rgw section per rgw. The issue reported into this PR: #1018 should be fixed before we can merge this.

@@ -21,6 +21,28 @@ cephx: true
rgw_pull_port: "{{ radosgw_civetweb_port }}"
rgw_pull_proto: "http"

########
#TUNING#
########
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@cbodley here's my first crack at the english ;)

# buckets which causes performance and stability issues.
#ceph_conf_overrides:
# rgw:
# radosgw_civetweb_num_threads: 100
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TODO: double check to make sure this conf variable is necessary to override.

@alimaredia alimaredia requested a review from dang April 24, 2017 15:19
@ChristinaMeno
Copy link
Contributor

jenkins test kraken-ansible2.2-centos7_cluster

@alimaredia alimaredia force-pushed the wip-rgw-tuning branch 2 times, most recently from 2e458e8 to e0c75c5 Compare April 25, 2017 19:39
@alimaredia alimaredia changed the title [DNM] rgw: set more tuning parameters rgw: set tuning parameters Apr 25, 2017
Change civetweb_num_thread default to 100

Add capability to override number of pgs for
rgw pools.

Add ceph.conf vars to enable default bucket
object quota at users choosing into the ceph.conf.j2
template

Resolves: rhbz#1437173
Resolves: rhbz#1391500

Signed-off-by: Ali Maredia <amaredia@redhat.com>
@andrewschoen andrewschoen merged commit acfa18d into master Apr 25, 2017
@leseb leseb deleted the wip-rgw-tuning branch April 26, 2017 08:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants