rgw前端替換civetweb為beast


前言

ceph的rgw現在提供了兩種前端, civetweb和beast

配置

修改配置文件

rgw_frontends = civetweb port=7481

rgw frontends = beast  port=7481

然后重啟rgw進程,查看日志

2020-09-11 10:23:52.117738 7f90b45f8000  0 ceph version 12.2.13 (584a20eb0237c657dc0567da126be145106aa47e) luminous (stable), process radosgw, pid 235781
2020-09-11 10:23:52.204891 7f90b45f8000 -1 *** experimental feature 'rgw-beast-frontend' is not enabled ***
This feature is marked as experimental, which means it
 - is untested
 - is unsupported
 - may corrupt your data
 - may break your cluster is an unrecoverable fashion
To enable this feature, add this to your ceph.conf:
  enable experimental unrecoverable data corrupting features = rgw-beast-frontend

這個在 ceph version 12.2.13還是這個提示,后面的版本里面就沒這個了

增加配置文件

enable experimental unrecoverable data corrupting features = rgw-beast-frontend
到global里面

在這個https://github.com/ceph/ceph/pull/21272/commits/f1e826ad7f074195b87b7bbd37fcb74d4ca626cb提交之后去掉實驗性質的

master (#21272)  v16.0.0  v15.2.4 v15.2.3 v15.2.2 v15.2.1 v15.2.0 v15.1.1 v15.1.0 v15.0.0 v14.2.11 v14.2.10 v14.2.9 v14.2.8 v14.2.7 v14.2.6 v14.2.5 v14.2.4 v14.2.3 v14.2.2 v14.2.1 v14.2.0 v14.1.1 v14.1.0 v14.0.1 v14.0.0 v13.2.10 v13.2.9 v13.2.8 v13.2.7 v13.2.6 v13.2.5 v13.2.4 v13.2.3 v13.2.2 v13.2.1 v13.2.0 v13.1.1 v13.1.0

在這些版本里面去掉了這個標記的

重啟rgw進程

再次查看日志

2020-09-11 10:35:18.189630 7fe5891bf000  0 starting handler: beast
2020-09-11 10:35:18.192804 7fe5891bf000  0 set uid:gid to 167:167 (ceph:ceph)
2020-09-11 10:35:18.205123 7fe5891bf000  1 mgrc service_daemon_register rgw.radosgw1 metadata {arch=x86_64,ceph_version=ceph version 12.2.13 (584a20eb0237c657dc0567da126be145106aa47e) luminous (stable),cpu=Intel(R) Core(TM) i7-10710U CPU @ 1.10GHz,distro=centos,distro_description=CentOS Linux 7 (Core),distro_version=7,frontend_config#0=beast  port=7481,frontend_type#0=beast,hostname=lab201,kernel_description=#1 SMP Thu Nov 8 23:39:32 UTC 2018,kernel_version=3.10.0-957.el7.x86_64,mem_swap_kb=0,mem_total_kb=3861512,num_handles=1,os=Linux,pid=236518,zone_id=80576aa5-448e-470d-aee4-ac8662d35e62,zone_name=default,zonegroup_id=5eced993-d226-4e15-9a4f-5362a3da3c19,zonegroup_name=default}

沒有問題了,然后直接訪問即可

待確認問題

  • 性能的變化
  • 穩定性的變化
  • 資源占用的變化

使用前需要看下是不是有這個問題(周期性的崩潰)

https://tracker.ceph.com/issues/39660

已經解決了的問題

https://github.com/ceph/ceph/pull/30746
https://github.com/ceph/ceph/pull/30746/files

這個問題應該是14.2.4這個版本還存在,14.2.5以及之后的版本就解決這個崩潰的問題

beast增加參數來控制並發請求的

rgw max concurrent requests

默認1024,最開始出來的適合8192后面調整了,這個可以控制一下高負債下的內存占用,相當於qos的作用
civetweb是通過前端的線程來控制的

max_connection_backlog

這個參數也是后面增加來控制連接數的,12的版本還沒有這個功能

luminous版本

從測試來看,ab壓3000的連接的時候,開始通過rgw上面的ss查詢連接數目穩定在500作用,過一會就增加了,然后到1000左右就崩掉了,這個應該跟beast使用的boost庫有關系,上面提到了后面的版本增加了參數的配置,默認的就是boost自己自帶的參數的

變更記錄

Why Who When
創建 武漢-運維-磨渣 2020-09-11


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM