Merge "Add test result for MySQL in kubernetes"

This commit is contained in:
Jenkins 2016-10-12 18:24:19 +00:00 committed by Gerrit Code Review
commit 87d70545df
9 changed files with 1244 additions and 10 deletions

View File

@ -106,7 +106,7 @@ On all 3 database server hosts:
wsrep_node_address = "10.4.1.114"
wsrep_sst_method = rsync
wsrep_slave_threads = 24
max_connections = 100
max_connections = 250
connect_timeout = 5
wait_timeout = 600
max_allowed_packet = 16M
@ -230,13 +230,13 @@ due to replication will be measured.
Parameters
^^^^^^^^^^
================= ========================
================= =============================
Parameter Value
================= ========================
Database MySQL, MariaDB, Percona
Number of threads 10, 20, 30, 60, 120, 180
================= =============================
Database MySQL, MariaDB, Percona
Number of threads 20, 40, 60, 80, 120, 160, 200
Replication 1, 3
================= ========================
================= =============================
Database configurations
@ -288,13 +288,13 @@ Some of the ultimate goals of the testing tool are to identify:
Parameters
^^^^^^^^^^
================= ========================
================= =============================
Parameter Value
================= ========================
================= =============================
Database MySQL, MariaDB, Percona
Number of threads 10, 20, 30, 60, 120, 180
Number of threads 20, 40, 60, 80, 120, 160, 200
Replication 1, 3
================= ========================
================= =============================
Database configurations will be chosen from among the best of the
sysbench tests.

View File

@ -0,0 +1,13 @@
.. raw:: pdf
PageBreak oneColumn
=============================================
SQL Database on Kubernetes performance report
=============================================
.. toctree::
:maxdepth: 3
mysql/index

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -0,0 +1,59 @@
.. raw:: pdf
PageBreak oneColumn
.. _db_performance_mysql:
=============================================
SQL Database on kubernetes performance report
=============================================
Environment description
^^^^^^^^^^^^^^^^^^^^^^^
This report is generated for :ref:`db_performance` test plan with
`Sysbench`_ tool. The data is collected in
:ref:`intel_mirantis_performance_lab`.
Software
~~~~~~~~
+-----------------+--------------------------------------------+
| Parameter | Value |
+-----------------+--------------------------------------------+
| OS | Ubuntu 16.04.1 |
+-----------------+--------------------------------------------+
| DB | MySQL 5.7 |
+-----------------+--------------------------------------------+
| HA | Kubernetes v1.3.5+coreos.0, 47 nodes |
+-----------------+--------------------------------------------+
| Storage | Ceph 0.94.9, 3 nodes |
+-----------------+--------------------------------------------+
| Test tool | Sysbench 1.0 |
+-----------------+--------------------------------------------+
Reports
^^^^^^^
.. toctree::
:maxdepth: 2
mysql-on-ceph/index
mysql-with-host-volume/index
mysql-without-volume/index
Common graphs
~~~~~~~~~~~~~
.. image:: files/queries.png
:alt: Mysql queries in all cases
.. image:: files/transactions.png
:alt: Mysql transactions in all cases
.. references:
.. _Sysbench: https://github.com/akopytov/sysbench

View File

@ -0,0 +1,859 @@
name = client.admin
cluster = ceph
debug_none = 0/5
debug_lockdep = 0/1
debug_context = 0/1
debug_crush = 1/1
debug_mds = 1/5
debug_mds_balancer = 1/5
debug_mds_locker = 1/5
debug_mds_log = 1/5
debug_mds_log_expire = 1/5
debug_mds_migrator = 1/5
debug_buffer = 0/1
debug_timer = 0/1
debug_filer = 0/1
debug_striper = 0/1
debug_objecter = 0/1
debug_rados = 0/5
debug_rbd = 0/5
debug_rbd_replay = 0/5
debug_journaler = 0/5
debug_objectcacher = 0/5
debug_client = 0/5
debug_osd = 0/5
debug_optracker = 0/5
debug_objclass = 0/5
debug_filestore = 1/3
debug_keyvaluestore = 1/3
debug_journal = 1/3
debug_ms = 0/5
debug_mon = 1/5
debug_monc = 0/10
debug_paxos = 1/5
debug_tp = 0/5
debug_auth = 1/5
debug_crypto = 1/5
debug_finisher = 1/1
debug_heartbeatmap = 1/5
debug_perfcounter = 1/5
debug_rgw = 1/5
debug_civetweb = 1/10
debug_javaclient = 1/5
debug_asok = 1/5
debug_throttle = 1/1
debug_refs = 0/0
debug_xio = 1/5
host = localhost
fsid = 09b06e2e-205d-4bbf-8ad8-37582d00e723
public_addr = :/0
cluster_addr = :/0
public_network = 10.3.56.0/21
cluster_network = 192.168.0.0/24
num_client = 1
monmap =
mon_host = 10.3.58.6,10.3.58.14,10.3.58.18
lockdep = false
lockdep_force_backtrace = false
run_dir = /var/run/ceph
admin_socket =
daemonize = false
pid_file =
chdir = /
max_open_files = 131072
restapi_log_level =
restapi_base_url =
fatal_signal_handlers = true
log_file =
log_max_new = 1000
log_max_recent = 500
log_to_stderr = true
err_to_stderr = true
log_to_syslog = false
err_to_syslog = false
log_flush_on_exit = true
log_stop_at_utilization = 0.97
clog_to_monitors = default=true
clog_to_syslog = false
clog_to_syslog_level = info
clog_to_syslog_facility = default=daemon audit=local0
mon_cluster_log_to_syslog = default=false
mon_cluster_log_to_syslog_level = info
mon_cluster_log_to_syslog_facility = daemon
mon_cluster_log_file = default=/var/log/ceph/ceph.$channel.log cluster=/var/log/ceph/ceph.log
mon_cluster_log_file_level = info
enable_experimental_unrecoverable_data_corrupting_features =
xio_trace_mempool = false
xio_trace_msgcnt = false
xio_trace_xcon = false
xio_queue_depth = 512
xio_mp_min = 128
xio_mp_max_64 = 65536
xio_mp_max_256 = 8192
xio_mp_max_1k = 8192
xio_mp_max_page = 4096
xio_mp_max_hint = 4096
xio_portal_threads = 2
key =
keyfile =
keyring = /etc/ceph/ceph.client.admin.keyring,/etc/ceph/ceph.keyring,/etc/ceph/keyring,/etc/ceph/keyring.bin
heartbeat_interval = 5
heartbeat_file =
heartbeat_inject_failure = 0
perf = true
ms_type = simple
ms_tcp_nodelay = true
ms_tcp_rcvbuf = 0
ms_tcp_prefetch_max_size = 4096
ms_initial_backoff = 0.2
ms_max_backoff = 15
ms_crc_data = true
ms_crc_header = true
ms_die_on_bad_msg = false
ms_die_on_unhandled_msg = false
ms_die_on_old_message = false
ms_die_on_skipped_message = false
ms_dispatch_throttle_bytes = 104857600
ms_bind_ipv6 = false
ms_bind_port_min = 6800
ms_bind_port_max = 7300
ms_bind_retry_count = 3
ms_bind_retry_delay = 5
ms_rwthread_stack_bytes = 1048576
ms_tcp_read_timeout = 900
ms_pq_max_tokens_per_priority = 16777216
ms_pq_min_cost = 65536
ms_inject_socket_failures = 0
ms_inject_delay_type =
ms_inject_delay_msg_type =
ms_inject_delay_max = 1
ms_inject_delay_probability = 0
ms_inject_internal_delays = 0
ms_dump_on_send = false
ms_dump_corrupt_message_level = 1
ms_async_op_threads = 2
ms_async_set_affinity = true
ms_async_affinity_cores =
inject_early_sigterm = false
mon_data = /var/lib/ceph/mon/ceph-admin
mon_initial_members = osscr04r13c26,osscr04r13c27,osscr04r13c28
mon_sync_fs_threshold = 5
mon_compact_on_start = false
mon_compact_on_bootstrap = false
mon_compact_on_trim = true
mon_osd_cache_size = 10
mon_tick_interval = 5
mon_subscribe_interval = 300
mon_delta_reset_interval = 10
mon_osd_laggy_halflife = 3600
mon_osd_laggy_weight = 0.3
mon_osd_adjust_heartbeat_grace = true
mon_osd_adjust_down_out_interval = true
mon_osd_auto_mark_in = false
mon_osd_auto_mark_auto_out_in = true
mon_osd_auto_mark_new_in = true
mon_osd_down_out_interval = 300
mon_osd_down_out_subtree_limit = rack
mon_osd_min_up_ratio = 0.3
mon_osd_min_in_ratio = 0.3
mon_osd_max_op_age = 32
mon_osd_max_split_count = 32
mon_osd_allow_primary_temp = false
mon_osd_allow_primary_affinity = false
mon_stat_smooth_intervals = 2
mon_lease = 5
mon_lease_renew_interval = 3
mon_lease_ack_timeout = 10
mon_clock_drift_allowed = 0.05
mon_clock_drift_warn_backoff = 5
mon_timecheck_interval = 300
mon_accept_timeout = 10
mon_timecheck_skew_interval = 30
mon_pg_create_interval = 30
mon_pg_stuck_threshold = 300
mon_pg_warn_min_per_osd = 30
mon_pg_warn_max_per_osd = 300
mon_pg_warn_max_object_skew = 10
mon_pg_warn_min_objects = 10000
mon_pg_warn_min_pool_objects = 1000
mon_cache_target_full_warn_ratio = 0.66
mon_osd_full_ratio = 0.95
mon_osd_nearfull_ratio = 0.85
mon_allow_pool_delete = true
mon_globalid_prealloc = 10000
mon_osd_report_timeout = 900
mon_force_standby_active = true
mon_warn_on_old_mons = true
mon_warn_on_legacy_crush_tunables = true
mon_warn_on_osd_down_out_interval_zero = true
mon_warn_on_cache_pools_without_hit_sets = true
mon_min_osdmap_epochs = 500
mon_max_pgmap_epochs = 500
mon_max_log_epochs = 500
mon_max_mdsmap_epochs = 500
mon_max_osd = 10000
mon_probe_timeout = 2
mon_slurp_timeout = 10
mon_slurp_bytes = 262144
mon_client_bytes = 104857600
mon_daemon_bytes = 419430400
mon_max_log_entries_per_event = 4096
mon_reweight_min_pgs_per_osd = 10
mon_reweight_min_bytes_per_osd = 104857600
mon_reweight_max_osds = 4
mon_reweight_max_change = 0.05
mon_health_data_update_interval = 60
mon_health_to_clog = true
mon_health_to_clog_interval = 3600
mon_health_to_clog_tick_interval = 60
mon_data_avail_crit = 5
mon_data_avail_warn = 30
mon_data_size_warn = 16106127360
mon_config_key_max_entry_size = 4096
mon_sync_timeout = 60
mon_sync_max_payload_size = 1048576
mon_sync_debug = false
mon_sync_debug_leader = -1
mon_sync_debug_provider = -1
mon_sync_debug_provider_fallback = -1
mon_inject_sync_get_chunk_delay = 0
mon_osd_min_down_reporters = 1
mon_osd_min_down_reports = 3
mon_osd_force_trim_to = 0
mon_mds_force_trim_to = 0
crushtool = crushtool
mon_debug_dump_transactions = false
mon_debug_dump_location = /var/log/ceph/ceph-client.admin.tdump
mon_inject_transaction_delay_max = 10
mon_inject_transaction_delay_probability = 0
mon_sync_provider_kill_at = 0
mon_sync_requester_kill_at = 0
mon_force_quorum_join = false
mon_keyvaluedb = leveldb
mon_debug_unsafe_allow_tier_with_nonempty_snaps = false
paxos_stash_full_interval = 25
paxos_max_join_drift = 10
paxos_propose_interval = 1
paxos_min_wait = 0.05
paxos_min = 500
paxos_trim_min = 250
paxos_trim_max = 500
paxos_service_trim_min = 250
paxos_service_trim_max = 500
paxos_kill_at = 0
clock_offset = 0
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx, none
auth_supported =
cephx_require_signatures = false
cephx_cluster_require_signatures = false
cephx_service_require_signatures = false
cephx_sign_messages = true
auth_mon_ticket_ttl = 43200
auth_service_ticket_ttl = 3600
auth_debug = false
mon_client_hunt_interval = 3
mon_client_ping_interval = 10
mon_client_ping_timeout = 30
mon_client_hunt_interval_backoff = 2
mon_client_hunt_interval_max_multiple = 10
mon_client_max_log_entries_per_message = 1000
mon_max_pool_pg_num = 65536
mon_pool_quota_warn_threshold = 0
mon_pool_quota_crit_threshold = 0
client_cache_size = 16384
client_cache_mid = 0.75
client_use_random_mds = false
client_mount_timeout = 300
client_tick_interval = 1
client_trace =
client_readahead_min = 131072
client_readahead_max_bytes = 0
client_readahead_max_periods = 4
client_snapdir = .snap
client_mountpoint = /
client_notify_timeout = 10
osd_client_watch_timeout = 30
client_caps_release_delay = 5
client_quota = false
client_oc = true
client_oc_size = 209715200
client_oc_max_dirty = 104857600
client_oc_target_dirty = 8388608
client_oc_max_dirty_age = 5
client_oc_max_objects = 1000
client_debug_force_sync_read = false
client_debug_inject_tick_delay = 0
client_max_inline_size = 4096
client_inject_release_failure = false
fuse_use_invalidate_cb = false
fuse_allow_other = true
fuse_default_permissions = true
fuse_big_writes = true
fuse_atomic_o_trunc = true
fuse_debug = false
fuse_multithreaded = true
client_try_dentry_invalidate = true
client_die_on_failed_remount = true
client_check_pool_perm = true
crush_location =
objecter_tick_interval = 5
objecter_timeout = 10
objecter_inflight_op_bytes = 104857600
objecter_inflight_ops = 1024
objecter_completion_locks_per_session = 32
objecter_inject_no_watch_ping = false
journaler_allow_split_entries = true
journaler_write_head_interval = 15
journaler_prefetch_periods = 10
journaler_prezero_periods = 5
journaler_batch_interval = 0.001
journaler_batch_max = 0
mds_data = /var/lib/ceph/mds/ceph-admin
mds_max_file_size = 1099511627776
mds_cache_size = 100000
mds_cache_mid = 0.7
mds_max_file_recover = 32
mds_mem_max = 1048576
mds_dir_max_commit_size = 10
mds_decay_halflife = 5
mds_beacon_interval = 4
mds_beacon_grace = 15
mds_enforce_unique_name = true
mds_blacklist_interval = 1440
mds_session_timeout = 60
mds_revoke_cap_timeout = 60
mds_recall_state_timeout = 60
mds_freeze_tree_timeout = 30
mds_session_autoclose = 300
mds_health_summarize_threshold = 10
mds_reconnect_timeout = 45
mds_tick_interval = 5
mds_dirstat_min_interval = 1
mds_scatter_nudge_interval = 5
mds_client_prealloc_inos = 1000
mds_early_reply = true
mds_default_dir_hash = 2
mds_log = true
mds_log_skip_corrupt_events = false
mds_log_max_events = -1
mds_log_events_per_segment = 1024
mds_log_segment_size = 0
mds_log_max_segments = 30
mds_log_max_expiring = 20
mds_bal_sample_interval = 3
mds_bal_replicate_threshold = 8000
mds_bal_unreplicate_threshold = 0
mds_bal_frag = false
mds_bal_split_size = 10000
mds_bal_split_rd = 25000
mds_bal_split_wr = 10000
mds_bal_split_bits = 3
mds_bal_merge_size = 50
mds_bal_merge_rd = 1000
mds_bal_merge_wr = 1000
mds_bal_interval = 10
mds_bal_fragment_interval = 5
mds_bal_idle_threshold = 0
mds_bal_max = -1
mds_bal_max_until = -1
mds_bal_mode = 0
mds_bal_min_rebalance = 0.1
mds_bal_min_start = 0.2
mds_bal_need_min = 0.8
mds_bal_need_max = 1.2
mds_bal_midchunk = 0.3
mds_bal_minchunk = 0.001
mds_bal_target_removal_min = 5
mds_bal_target_removal_max = 10
mds_replay_interval = 1
mds_shutdown_check = 0
mds_thrash_exports = 0
mds_thrash_fragments = 0
mds_dump_cache_on_map = false
mds_dump_cache_after_rejoin = false
mds_verify_scatter = false
mds_debug_scatterstat = false
mds_debug_frag = false
mds_debug_auth_pins = false
mds_debug_subtrees = false
mds_kill_mdstable_at = 0
mds_kill_export_at = 0
mds_kill_import_at = 0
mds_kill_link_at = 0
mds_kill_rename_at = 0
mds_kill_openc_at = 0
mds_kill_journal_at = 0
mds_kill_journal_expire_at = 0
mds_kill_journal_replay_at = 0
mds_journal_format = 1
mds_kill_create_at = 0
mds_inject_traceless_reply_probability = 0
mds_wipe_sessions = false
mds_wipe_ino_prealloc = false
mds_skip_ino = 0
max_mds = 1
mds_standby_for_name =
mds_standby_for_rank = -1
mds_standby_replay = false
mds_enable_op_tracker = true
mds_op_history_size = 20
mds_op_history_duration = 600
mds_op_complaint_time = 30
mds_op_log_threshold = 5
mds_snap_min_uid = 0
mds_snap_max_uid = 65536
mds_verify_backtrace = 1
mds_action_on_write_error = 1
osd_compact_leveldb_on_mount = false
osd_max_backfills = 10
osd_min_recovery_priority = 0
osd_backfill_full_ratio = 0.85
osd_backfill_retry_interval = 10
osd_agent_max_ops = 4
osd_agent_min_evict_effort = 0.1
osd_agent_quantize_effort = 0.1
osd_agent_delay_time = 5
osd_find_best_info_ignore_history_les = false
osd_agent_hist_halflife = 1000
osd_agent_slop = 0.02
osd_uuid = 00000000-0000-0000-0000-000000000000
osd_data = /var/lib/ceph/osd/ceph-admin
osd_journal = /var/lib/ceph/osd/ceph-admin/journal
osd_journal_size = 5120
osd_max_write_size = 90
osd_max_pgls = 1024
osd_client_message_size_cap = 524288000
osd_client_message_cap = 100
osd_pg_bits = 6
osd_pgp_bits = 6
osd_crush_chooseleaf_type = 1
osd_pool_use_gmt_hitset = true
osd_pool_default_crush_rule = -1
osd_pool_default_crush_replicated_ruleset = 0
osd_pool_erasure_code_stripe_width = 4096
osd_pool_default_size = 3
osd_pool_default_min_size = 0
osd_pool_default_pg_num = 8
osd_pool_default_pgp_num = 8
osd_pool_default_erasure_code_directory = /usr/lib/ceph/erasure-code
osd_pool_default_erasure_code_profile = plugin=jerasure technique=reed_sol_van k=2 m=1
osd_erasure_code_plugins = jerasure lrc isa
osd_allow_recovery_below_min_size = true
osd_pool_default_flags = 0
osd_pool_default_flag_hashpspool = true
osd_pool_default_flag_nodelete = false
osd_pool_default_flag_nopgchange = false
osd_pool_default_flag_nosizechange = false
osd_pool_default_hit_set_bloom_fpp = 0.05
osd_pool_default_cache_target_dirty_ratio = 0.4
osd_pool_default_cache_target_full_ratio = 0.8
osd_pool_default_cache_min_flush_age = 0
osd_pool_default_cache_min_evict_age = 0
osd_hit_set_min_size = 1000
osd_hit_set_max_size = 100000
osd_hit_set_namespace = .ceph-internal
osd_tier_default_cache_mode = writeback
osd_tier_default_cache_hit_set_count = 4
osd_tier_default_cache_hit_set_period = 1200
osd_tier_default_cache_hit_set_type = bloom
osd_tier_default_cache_min_read_recency_for_promote = 1
osd_map_dedup = true
osd_map_max_advance = 200
osd_map_cache_size = 500
osd_map_message_max = 100
osd_map_share_max_epochs = 100
osd_inject_bad_map_crc_probability = 0
osd_inject_failure_on_pg_removal = false
osd_op_threads = 2
osd_peering_wq_batch_size = 20
osd_op_pq_max_tokens_per_priority = 4194304
osd_op_pq_min_cost = 65536
osd_disk_threads = 1
osd_disk_thread_ioprio_class =
osd_disk_thread_ioprio_priority = -1
osd_recovery_threads = 1
osd_recover_clone_overlap = true
osd_op_num_threads_per_shard = 2
osd_op_num_shards = 5
osd_read_eio_on_bad_digest = true
osd_recover_clone_overlap_limit = 10
osd_backfill_scan_min = 64
osd_backfill_scan_max = 512
osd_op_thread_timeout = 15
osd_op_thread_suicide_timeout = 150
osd_recovery_thread_timeout = 30
osd_recovery_thread_suicide_timeout = 300
osd_snap_trim_thread_timeout = 3600
osd_snap_trim_thread_suicide_timeout = 36000
osd_snap_trim_sleep = 0
osd_scrub_thread_timeout = 60
osd_scrub_thread_suicide_timeout = 300
osd_scrub_finalize_thread_timeout = 600
osd_scrub_invalid_stats = true
osd_remove_thread_timeout = 3600
osd_remove_thread_suicide_timeout = 36000
osd_command_thread_timeout = 600
osd_age = 0.8
osd_age_time = 0
osd_command_thread_suicide_timeout = 900
osd_heartbeat_addr = :/0
osd_heartbeat_interval = 6
osd_heartbeat_grace = 20
osd_heartbeat_min_peers = 10
osd_heartbeat_use_min_delay_socket = false
osd_pg_max_concurrent_snap_trims = 2
osd_heartbeat_min_healthy_ratio = 0.33
osd_mon_heartbeat_interval = 30
osd_mon_report_interval_max = 120
osd_mon_report_interval_min = 5
osd_pg_stat_report_interval_max = 500
osd_mon_ack_timeout = 30
osd_default_data_pool_replay_window = 45
osd_preserve_trimmed_log = false
osd_auto_mark_unfound_lost = false
osd_recovery_delay_start = 0
osd_recovery_max_active = 15
osd_recovery_max_single_start = 5
osd_recovery_max_chunk = 8388608
osd_copyfrom_max_chunk = 8388608
osd_push_per_object_cost = 1000
osd_max_push_cost = 8388608
osd_max_push_objects = 10
osd_recovery_forget_lost_objects = false
osd_max_scrubs = 1
osd_scrub_begin_hour = 0
osd_scrub_end_hour = 24
osd_scrub_load_threshold = 0.5
osd_scrub_min_interval = 86400
osd_scrub_max_interval = 604800
osd_scrub_interval_randomize_ratio = 0.5
osd_scrub_chunk_min = 5
osd_scrub_chunk_max = 25
osd_scrub_sleep = 0
osd_deep_scrub_interval = 604800
osd_deep_scrub_stride = 524288
osd_deep_scrub_update_digest_min_age = 7200
osd_scan_list_ping_tp_interval = 100
osd_auto_weight = false
osd_class_dir = /usr/lib/rados-classes
osd_open_classes_on_start = true
osd_check_for_log_corruption = false
osd_use_stale_snap = false
osd_rollback_to_cluster_snap =
osd_default_notify_timeout = 30
osd_kill_backfill_at = 0
osd_pg_epoch_persisted_max_stale = 200
osd_min_pg_log_entries = 3000
osd_max_pg_log_entries = 10000
osd_pg_log_trim_min = 100
osd_op_complaint_time = 30
osd_command_max_records = 256
osd_max_pg_blocked_by = 16
osd_op_log_threshold = 5
osd_verify_sparse_read_holes = false
osd_debug_drop_ping_probability = 0
osd_debug_drop_ping_duration = 0
osd_debug_drop_pg_create_probability = 0
osd_debug_drop_pg_create_duration = 1
osd_debug_drop_op_probability = 0
osd_debug_op_order = false
osd_debug_scrub_chance_rewrite_digest = 0
osd_debug_verify_snaps_on_info = false
osd_debug_verify_stray_on_activate = false
osd_debug_skip_full_check_in_backfill_reservation = false
osd_debug_reject_backfill_probability = 0
osd_debug_inject_copyfrom_error = false
osd_enable_op_tracker = true
osd_num_op_tracker_shard = 32
osd_op_history_size = 20
osd_op_history_duration = 600
osd_target_transaction_size = 30
osd_failsafe_full_ratio = 0.97
osd_failsafe_nearfull_ratio = 0.9
osd_pg_object_context_cache_count = 64
osd_tracing = false
osd_debug_pg_log_writeout = false
threadpool_default_timeout = 60
threadpool_empty_queue_max_wait = 2
leveldb_write_buffer_size = 8388608
leveldb_cache_size = 134217728
leveldb_block_size = 0
leveldb_bloom_size = 0
leveldb_max_open_files = 0
leveldb_compression = true
leveldb_paranoid = false
leveldb_log = /dev/null
leveldb_compact_on_mount = false
kinetic_host =
kinetic_port = 8123
kinetic_user_id = 1
kinetic_hmac_key = asdfasdf
kinetic_use_ssl = false
rocksdb_compact_on_mount = false
rocksdb_write_buffer_size = 0
rocksdb_target_file_size_base = 0
rocksdb_cache_size = 0
rocksdb_block_size = 0
rocksdb_bloom_size = 0
rocksdb_write_buffer_num = 0
rocksdb_background_compactions = 0
rocksdb_background_flushes = 0
rocksdb_max_open_files = 0
rocksdb_compression =
rocksdb_paranoid = false
rocksdb_log = /dev/null
rocksdb_level0_file_num_compaction_trigger = 0
rocksdb_level0_slowdown_writes_trigger = 0
rocksdb_level0_stop_writes_trigger = 0
rocksdb_disableDataSync = true
rocksdb_disableWAL = false
rocksdb_num_levels = 0
rocksdb_wal_dir =
rocksdb_info_log_level = info
osd_client_op_priority = 63
osd_recovery_op_priority = 10
osd_recovery_op_warn_multiple = 16
osd_mon_shutdown_timeout = 5
osd_max_object_size = 107374182400
osd_max_object_name_len = 2048
osd_max_attr_name_len = 100
osd_max_attr_size = 0
osd_objectstore = filestore
osd_objectstore_tracing = false
osd_debug_override_acting_compat = false
osd_bench_small_size_max_iops = 100
osd_bench_large_size_max_throughput = 104857600
osd_bench_max_block_size = 67108864
osd_bench_duration = 30
memstore_device_bytes = 1073741824
filestore_omap_backend = leveldb
filestore_debug_disable_sharded_check = false
filestore_wbthrottle_enable = true
filestore_wbthrottle_btrfs_bytes_start_flusher = 41943040
filestore_wbthrottle_btrfs_bytes_hard_limit = 419430400
filestore_wbthrottle_btrfs_ios_start_flusher = 500
filestore_wbthrottle_btrfs_ios_hard_limit = 5000
filestore_wbthrottle_btrfs_inodes_start_flusher = 500
filestore_wbthrottle_xfs_bytes_start_flusher = 41943040
filestore_wbthrottle_xfs_bytes_hard_limit = 419430400
filestore_wbthrottle_xfs_ios_start_flusher = 500
filestore_wbthrottle_xfs_ios_hard_limit = 5000
filestore_wbthrottle_xfs_inodes_start_flusher = 500
filestore_wbthrottle_btrfs_inodes_hard_limit = 5000
filestore_wbthrottle_xfs_inodes_hard_limit = 5000
filestore_index_retry_probability = 0
filestore_debug_inject_read_err = false
filestore_debug_omap_check = false
filestore_omap_header_cache_size = 1024
filestore_max_inline_xattr_size = 0
filestore_max_inline_xattr_size_xfs = 65536
filestore_max_inline_xattr_size_btrfs = 2048
filestore_max_inline_xattr_size_other = 512
filestore_max_inline_xattrs = 0
filestore_max_inline_xattrs_xfs = 10
filestore_max_inline_xattrs_btrfs = 10
filestore_max_inline_xattrs_other = 2
filestore_sloppy_crc = false
filestore_sloppy_crc_block_size = 65536
filestore_max_alloc_hint_size = 1048576
filestore_max_sync_interval = 5
filestore_min_sync_interval = 0.01
filestore_btrfs_snap = true
filestore_btrfs_clone_range = true
filestore_zfs_snap = false
filestore_fsync_flushes_journal_data = false
filestore_fiemap = false
filestore_fadvise = true
filestore_xfs_extsize = false
filestore_journal_parallel = false
filestore_journal_writeahead = false
filestore_journal_trailing = false
filestore_queue_max_ops = 50
filestore_queue_max_bytes = 104857600
filestore_queue_committing_max_ops = 500
filestore_queue_committing_max_bytes = 104857600
filestore_op_threads = 2
filestore_op_thread_timeout = 60
filestore_op_thread_suicide_timeout = 180
filestore_commit_timeout = 600
filestore_fiemap_threshold = 4096
filestore_merge_threshold = 10
filestore_split_multiple = 2
filestore_update_to = 1000
filestore_blackhole = false
filestore_fd_cache_size = 128
filestore_fd_cache_shards = 16
filestore_dump_file =
filestore_kill_at = 0
filestore_inject_stall = 0
filestore_fail_eio = true
filestore_debug_verify_split = false
journal_dio = true
journal_aio = true
journal_force_aio = false
keyvaluestore_queue_max_ops = 50
keyvaluestore_queue_max_bytes = 104857600
keyvaluestore_debug_check_backend = false
keyvaluestore_op_threads = 2
keyvaluestore_op_thread_timeout = 60
keyvaluestore_op_thread_suicide_timeout = 180
keyvaluestore_default_strip_size = 4096
keyvaluestore_max_expected_write_size = 16777216
keyvaluestore_header_cache_size = 4096
keyvaluestore_backend = leveldb
journal_max_corrupt_search = 10485760
journal_block_align = true
journal_write_header_frequency = 0
journal_max_write_bytes = 10485760
journal_max_write_entries = 100
journal_queue_max_ops = 300
journal_queue_max_bytes = 33554432
journal_align_min_size = 65536
journal_replay_from = 0
journal_zero_on_create = false
journal_ignore_corruption = false
journal_discard = false
rados_mon_op_timeout = 0
rados_osd_op_timeout = 0
rados_tracing = false
rbd_op_threads = 1
rbd_op_thread_timeout = 60
rbd_non_blocking_aio = true
rbd_cache = true
rbd_cache_writethrough_until_flush = true
rbd_cache_size = 33554432
rbd_cache_max_dirty = 25165824
rbd_cache_target_dirty = 16777216
rbd_cache_max_dirty_age = 1
rbd_cache_max_dirty_object = 0
rbd_cache_block_writes_upfront = false
rbd_concurrent_management_ops = 10
rbd_balance_snap_reads = false
rbd_localize_snap_reads = false
rbd_balance_parent_reads = false
rbd_localize_parent_reads = true
rbd_readahead_trigger_requests = 10
rbd_readahead_max_bytes = 524288
rbd_readahead_disable_after_bytes = 52428800
rbd_clone_copy_on_read = false
rbd_blacklist_on_break_lock = true
rbd_blacklist_expire_seconds = 0
rbd_request_timed_out_seconds = 30
rbd_tracing = false
rbd_validate_pool = true
rbd_default_format = 1
rbd_default_order = 22
rbd_default_stripe_count = 0
rbd_default_stripe_unit = 0
rbd_default_features = 3
nss_db_path =
rgw_max_chunk_size = 524288
rgw_max_put_size = 5368709120
rgw_override_bucket_index_max_shards = 0
rgw_bucket_index_max_aio = 8
rgw_enable_quota_threads = true
rgw_enable_gc_threads = true
rgw_data = /var/lib/ceph/radosgw/ceph-admin
rgw_enable_apis = s3, swift, swift_auth, admin
rgw_cache_enabled = true
rgw_cache_lru_size = 10000
rgw_socket_path =
rgw_host =
rgw_port =
rgw_dns_name =
rgw_content_length_compat = false
rgw_script_uri =
rgw_request_uri =
rgw_swift_url =
rgw_swift_url_prefix = swift
rgw_swift_auth_url =
rgw_swift_auth_entry = auth
rgw_swift_tenant_name =
rgw_swift_enforce_content_length = false
rgw_keystone_url =
rgw_keystone_admin_token =
rgw_keystone_admin_user =
rgw_keystone_admin_password =
rgw_keystone_admin_tenant =
rgw_keystone_accepted_roles = Member, admin
rgw_keystone_token_cache_size = 10000
rgw_keystone_revocation_interval = 900
rgw_s3_auth_use_rados = true
rgw_s3_auth_use_keystone = false
rgw_admin_entry = admin
rgw_enforce_swift_acls = true
rgw_swift_token_expiration = 86400
rgw_print_continue = true
rgw_remote_addr_param = REMOTE_ADDR
rgw_op_thread_timeout = 600
rgw_op_thread_suicide_timeout = 0
rgw_thread_pool_size = 100
rgw_num_control_oids = 8
rgw_num_rados_handles = 1
rgw_zone =
rgw_zone_root_pool = .rgw.root
rgw_region =
rgw_region_root_pool = .rgw.root
rgw_default_region_info_oid = default.region
rgw_log_nonexistent_bucket = false
rgw_log_object_name = %Y-%m-%d-%H-%i-%n
rgw_log_object_name_utc = false
rgw_usage_max_shards = 32
rgw_usage_max_user_shards = 1
rgw_enable_ops_log = false
rgw_enable_usage_log = false
rgw_ops_log_rados = true
rgw_ops_log_socket_path =
rgw_ops_log_data_backlog = 5242880
rgw_usage_log_flush_threshold = 1024
rgw_usage_log_tick_interval = 30
rgw_intent_log_object_name = %Y-%m-%d-%i-%n
rgw_intent_log_object_name_utc = false
rgw_init_timeout = 300
rgw_mime_types_file = /etc/mime.types
rgw_gc_max_objs = 32
rgw_gc_obj_min_wait = 7200
rgw_gc_processor_max_time = 3600
rgw_gc_processor_period = 3600
rgw_s3_success_create_obj_status = 0
rgw_resolve_cname = false
rgw_obj_stripe_size = 4194304
rgw_extended_http_attrs =
rgw_exit_timeout_secs = 120
rgw_get_obj_window_size = 16777216
rgw_get_obj_max_req_size = 4194304
rgw_relaxed_s3_bucket_names = false
rgw_defer_to_bucket_acls =
rgw_list_buckets_max_chunk = 1000
rgw_md_log_max_shards = 64
rgw_num_zone_opstate_shards = 128
rgw_opstate_ratelimit_sec = 30
rgw_curl_wait_timeout_ms = 1000
rgw_copy_obj_progress = true
rgw_copy_obj_progress_every_bytes = 1048576
rgw_data_log_window = 30
rgw_data_log_changes_size = 1000
rgw_data_log_num_shards = 128
rgw_data_log_obj_prefix = data_log
rgw_replica_log_obj_prefix = replica_log
rgw_bucket_quota_ttl = 600
rgw_bucket_quota_soft_threshold = 0.95
rgw_bucket_quota_cache_size = 10000
rgw_bucket_default_quota_max_objects = -1
rgw_bucket_default_quota_max_size = -1
rgw_expose_bucket = false
rgw_frontends = fastcgi, civetweb port=7480
rgw_user_quota_bucket_sync_interval = 180
rgw_user_quota_sync_interval = 86400
rgw_user_quota_sync_idle_users = false
rgw_user_quota_sync_wait_time = 86400
rgw_user_default_quota_max_objects = -1
rgw_user_default_quota_max_size = -1
rgw_multipart_min_part_size = 5242880
rgw_olh_pending_timeout_sec = 3600
rgw_user_max_buckets = 1000
mutex_perf_counter = false
throttler_perf_counter = true
internal_safe_to_start_threads = false

View File

@ -0,0 +1,133 @@
MySQL on Kubernetes with Ceph performance report
------------------------------------------------
This scenario is executed with `Sysbench`_ tool. There is one instance of
tool per tester node, each running in N threads. The tool is configured
to point to MySQL container directly.
YAML for Kubernetes pod
^^^^^^^^^^^^^^^^^^^^^^^
.. code-block:: yaml
apiVersion: v1
kind: Pod
metadata:
name: mysql
labels:
name: mysql
spec:
containers:
- name: mysql
image: mysql/mysql-server:5.7
env:
- name: MYSQL_ROOT_PASSWORD
value: r00tme
volumeMounts:
- name: mysql-data
mountPath: /var/lib/mysql
volumes:
- name: mysql-data
rbd:
monitors:
- 10.3.58.6:6789
- 10.3.58.14:6789
- 10.3.58.18:6789
pool: rbd
image: mysql-data
user: admin
secretRef:
name: ceph-secret
fsType: ext4
readOnly: false
CEPH status
^^^^^^^^^^^
.. code-block:: none
cluster 09b06e2e-205d-4bbf-8ad8-37582d00e723
health HEALTH_OK
monmap e1: 3 mons at {osscr04r13c26=10.3.58.6:6789/0,osscr04r13c27=10.3.58.14:6789/0,osscr04r13c28=10.3.58.18:6789/0}
election epoch 6, quorum 0,1,2 osscr04r13c26,osscr04r13c27,osscr04r13c28
osdmap e14: 3 osds: 3 up, 3 in
pgmap v8663: 64 pgs, 1 pools, 1630 MB data, 448 objects
4993 MB used, 2214 GB / 2219 GB avail
64 active+clean
/etc/ceph/ceph.conf
^^^^^^^^^^^^^^^^^^^
.. code-block:: none
[global]
fsid = 09b06e2e-205d-4bbf-8ad8-37582d00e723
max open files = 131072
mon_initial_members = osscr04r13c26,osscr04r13c27,osscr04r13c28
mon host = 10.3.58.6,10.3.58.14,10.3.58.18
public_network = 10.3.56.0/21
cluster_network = 192.168.0.0/24
[client.libvirt]
admin socket = /var/run/ceph/$cluster-$type.$id.$pid.$cctid.asok
log file = /var/log/ceph/qemu-guest-$pid.log
[osd]
osd mkfs type = xfs
osd mkfs options xfs = -f -i size=2048
osd mount options xfs = noatime,largeio,inode64,swalloc
osd journal size = 5120
Full output for ``ceph --show-config available`` in
:download:`full_ceph_config.txt <files/full_ceph_config.txt>`
Throughput
^^^^^^^^^^
The following chart shows the number of queries, read/write queries and
transactions depending on total thread count.
.. list-table:: Throughput
:header-rows: 1
*
- threads
- queries per sec
- read/write queries per sec
- transactions per sec
*
- 20
- 12413.47
- 11171.73
- 620.64
*
- 40
- 16843.37
- 15158.59
- 842.08
*
- 60
- 19478.55
- 17524.87
- 973.53
*
- 80
- 19761.78
- 17779.89
- 987.67
*
- 120
- 20047.85
- 18037.43
- 1001.96
*
- 160
- 19914.13
- 17920.40
- 995.50
*
- 200
- 20229.39
- 18204.32
- 1011.27
.. _Sysbench: https://github.com/akopytov/sysbench

View File

@ -0,0 +1,85 @@
MySQL on Kubernetes with volume on host
---------------------------------------
This scenario is executed with `Sysbench`_ tool. There is one instance of
tool per tester node, each running in N threads. The tool is configured
to point to MySQL container directly.
YAML for Kubernetes pod
^^^^^^^^^^^^^^^^^^^^^^^
.. code-block:: yaml
apiVersion: v1
kind: Pod
metadata:
name: mysql
labels:
name: mysql
spec:
containers:
- name: mysql
image: mysql/mysql-server:5.7
env:
- name: MYSQL_ROOT_PASSWORD
value: r00tme
volumeMounts:
- name: mysql-data
mountPath: /var/lib/mysql
volumes:
- name: mysql-data
hostPath:
path: /var/lib/mysql
.. _Sysbench: https://github.com/akopytov/sysbench
Throughput
^^^^^^^^^^
The following chart shows the number of queries, read/write queries
and transactions depending on total thread count.
.. list-table:: Throughput
:header-rows: 1
*
- threads
- queries per sec
- read/write queries per sec
- transactions per sec
*
- 20
- 45929.93
- 41336.65
- 2296.42
*
- 40
- 65418.03
- 58875.32
- 3270.64
*
- 60
- 71185.91
- 64063.57
- 3558.65
*
- 80
- 67894.49
- 61103.56
- 3393.92
*
- 120
- 70333.68
- 63299.39
- 3515.37
*
- 160
- 70310.28
- 63276.21
- 3513.48
*
- 200
- 69755.76
- 62775.64
- 3485.03

View File

@ -0,0 +1,85 @@
MySQL on Kubernetes without volume
----------------------------------
This scenario is executed with `Sysbench`_ tool. There is one instance of
tool per tester node, each running in N threads. The tool is configured
to point to MySQL container directly.
YAML for Kubernetes pod
^^^^^^^^^^^^^^^^^^^^^^^
.. code-block:: yaml
apiVersion: v1
kind: Pod
metadata:
name: mysql
labels:
name: mysql
spec:
containers:
- name: mysql
image: mysql/mysql-server:5.7
volumeMounts:
- name: mysql-etc
mountPath: /etc/mysql
env:
- name: MYSQL_ROOT_PASSWORD
value: r00tme
volumes:
- name: mysql-etc
hostPath:
path: /etc/mysql
Throughput
^^^^^^^^^^
The following chart shows the number of queries, read/write queries
and transactions depending on total thread count.
.. list-table:: Throughput
:header-rows: 1
*
- threads
- queries per sec
- read/write queries per sec
- transactions per sec
*
- 20
- 42389.02
- 38149.43
- 2119.32
*
- 40
- 67086.84
- 60377.59
- 3354.02
*
- 60
- 64089.24
- 57679.97
- 3203.95
*
- 80
- 67831.60
- 61046.72
- 3390.72
*
- 120
- 70284.19
- 63254.38
- 3512.84
*
- 160
- 71344.12
- 64209.14
- 3565.27
*
- 200
- 71300.89
- 64169.52
- 3562.46
.. _Sysbench: https://github.com/akopytov/sysbench