基于Ubuntu22.04部署bcache模式ceph

这篇具有很好参考价值的文章主要介绍了基于Ubuntu22.04部署bcache模式ceph。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

作者:吴业亮
博客:wuyeliang.blog.csdn.net

将Bcache集成到Ceph OSD后端可以带来一些优点和潜在的缺点。以下是它们的一些方面:

优点:

  • 提高性能:BCache作为SSD缓存设备,可以提供更快的数据读取和写入速度。通过将热门数据缓存在SSD上,可以减少对慢速磁盘的访问,从而改善存储系统的整体性能。

  • 提高响应性:使用BCache作为缓存层可以显著减少IO延迟,因为SSD具有更快的随机访问时间,响应时间更短。

  • 灵活性:BCache可以根据应用程序的需求进行配置和调整。可以设置不同的缓存规则和策略,根据数据的访问模式来调整数据在SSD上的缓存策略,以最大程度地提高性能。

  • 成本效益:通过将较便宜的磁盘与SSD缓存结合,可以在提供高性能和低成本的存储方案之间取得平衡。

缺点:

  • 部署和管理复杂性:集成BCache到Ceph OSD后端需要额外的配置和管理。这可能增加了部署和管理方面的复杂性,并需要更多的知识和技能。

  • 可靠性考虑:BCache是一个缓存层,它依赖于底层磁盘来存储数据。尽管BCache有内建的数据保护措施,但缓存设备的故障或数据丢失仍然可能导致数据损坏或不一致。

  • 存储容量限制:由于SSD的成本较高,可能无法将所有数据都缓存在SSD上,因此需要权衡SSD缓存容量和数据存储容量之间的平衡。

重要提示:在集成BCache到Ceph OSD后端之前,请考虑系统的需求、可靠性要求、成本预算以及管理复杂性。在部署之前建议进行充分的测试和评估,以确保性能提升和可行性。此外,定期监控和维护BCache缓存设备的容量和性能是至关重要的,以确保系统的可靠性和一致性。

1、配置网络/etc/netplan/01-netcfg.yaml

network:
  ethernets:
    # interface name
    ens18:
      dhcp4: false
      # IP address/subnet mask
      addresses: [172.16.8.202/24]
      # default gateway
      # [metric] : set priority (specify it if multiple NICs are set)
      # lower value is higher priority
      routes:
        - to: default
          via: 172.16.8.1
          metric: 100
      nameservers:
        # name server to bind
        addresses: [8.8.8.8]
        # DNS search base
        #search: [srv.world,server.education]
      dhcp6: false
  version: 2

生效

# netplan apply

修改主机名

hostnamectl set-hostname node3

修改/etc/hosts

# cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 ubuntu
172.16.8.201 node1
172.16.8.202 node2
172.16.8.203 node3

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

安装docker

apt -y install docker.io

更新国内源

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse

更新ceph国内源

wget -q -O- 'https://download.ceph.com/keys/release.asc' | sudo apt-key add -
sudo apt-add-repository 'deb https://mirrors.tuna.tsinghua.edu.cn/ceph/debian-quincy/ buster main'
sudo apt update
源地址:
https://satishdotpatel.github.io/deploy-ceph-storage-using-cephadm/

安装cephadm

apt update
apt install -y cephadm

针对ssd分区

parted -s /dev/sdf mklabel gpt
parted /dev/sdf mkpart primary xfs 00.0GB 10.0GB
parted /dev/sdf mkpart primary xfs 10.0GB 20.0GB
parted /dev/sdf mkpart primary xfs 20.0GB 30.0GB
parted /dev/sdf mkpart primary xfs 30.0GB 40.0GB
parted /dev/sdf mkpart primary xfs 40.0GB 50.0GB
parted /dev/sdf mkpart primary xfs 50.0GB 60.0GB
parted /dev/sdf mkpart primary xfs 60.0GB 70.0GB
parted /dev/sdf mkpart primary xfs 70.0GB 80.0GB
parted /dev/sdf mkpart primary xfs 80.0GB 85.0GB
parted /dev/sdf mkpart primary xfs 85.0GB 90.0GB
parted /dev/sdf mkpart primary xfs 90.0GB 95.0GB
parted /dev/sdf mkpart primary xfs 95.0GB 100.0GB
# lsblk 
NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
loop0     7:0    0  63.3M  1 loop /snap/core20/1822
loop1     7:1    0 111.9M  1 loop /snap/lxd/24322
loop2     7:2    0  49.8M  1 loop /snap/snapd/18357
loop3     7:3    0  49.8M  1 loop /snap/snapd/18596
loop4     7:4    0  63.3M  1 loop /snap/core20/1852
sda       8:0    0    80G  0 disk 
├─sda1    8:1    0     1M  0 part 
└─sda2    8:2    0    80G  0 part /
sdb       8:16   0   100G  0 disk 
sdc       8:32   0   100G  0 disk 
sdd       8:48   0   100G  0 disk 
sde       8:64   0   100G  0 disk 
sdf       8:80   0   100G  0 disk 
├─sdf1    8:81   0   9.3G  0 part 
├─sdf2    8:82   0   9.3G  0 part 
├─sdf3    8:83   0   9.3G  0 part 
├─sdf4    8:84   0   9.3G  0 part 
├─sdf5    8:85   0   9.3G  0 part 
├─sdf6    8:86   0   9.3G  0 part 
├─sdf7    8:87   0   9.3G  0 part 
├─sdf8    8:88   0   9.3G  0 part 
├─sdf9    8:89   0   4.7G  0 part 
├─sdf10   8:90   0   4.7G  0 part 
├─sdf11   8:91   0   4.7G  0 part 
└─sdf12   8:92   0   4.7G  0 part

配置bcache盘

apt install bcache-tools -y
modprobe  bcache


make-bcache -C /dev/sdf1 -B /dev/sdb --wipe-bcache
make-bcache -C /dev/sdf2 -B /dev/sdc --wipe-bcache
make-bcache -C /dev/sdf3 -B /dev/sdd --wipe-bcache
make-bcache -C /dev/sdf4 -B /dev/sde --wipe-bcache

echo writeback > /sys/block/bcache0/bcache/cache_mode
echo writeback > /sys/block/bcache1/bcache/cache_mode
echo writeback > /sys/block/bcache2/bcache/cache_mode
echo writeback > /sys/block/bcache3/bcache/cache_mode

lvm分区

vgcreate  data0 /dev/bcache0
lvcreate -l +100%FREE data0

vgcreate  data1 /dev/bcache1
lvcreate -l +100%FREE data1

vgcreate  data2 /dev/bcache2
lvcreate -l +100%FREE data2

安超软件包

cephadm install ceph

初始化集群

mkdir -p /etc/ceph
cephadm bootstrap --mon-ip 172.16.8.201 --allow-fqdn-hostname

部署单机

cephadm bootstrap --mon-ip 172.16.8.201 --allow-fqdn-hostname --single-host-defaults

会有如下输出

Ceph Dashboard is now available at:

             URL: https://node1:8443/
            User: admin
        Password: 8uw3xxz9m9

Enabling client.admin keyring and conf on hosts with "admin" label
Saving cluster configuration to /var/lib/ceph/2304caa0-dd8c-11ed-b671-e93708859cab/config directory
Enabling autotune for osd_memory_target
You can access the Ceph CLI as following in case of multi-cluster or non-default config:

        sudo /usr/sbin/cephadm shell --fsid 2304caa0-dd8c-11ed-b671-e93708859cab -c /etc/ceph/ceph.conf -k /etc/ceph/ceph.client.admin.keyring

Or, if you are only running a single cluster on this host:

        sudo /usr/sbin/cephadm shell 

Please consider enabling telemetry to help improve Ceph:

        ceph telemetry on

For more information see:

        https://docs.ceph.com/docs/master/mgr/telemetry/

Bootstrap complete.

设置ceph cli

# alias ceph='cephadm shell -- ceph'
# echo "alias ceph='cephadm shell -- ceph'" >> ~/.bash_profile

ceph -s

免密设置

# ssh-copy-id -f -i /etc/ceph/ceph.pub root@node2
# ssh-copy-id -f -i /etc/ceph/ceph.pub root@node3

添加主机

# ceph orch host add node2

# ceph orch host add node3

查看主机

# ceph orch host ls

设置MGR数量

# ceph orch apply mgr 3
# ceph orch host label add node2 mgr
# ceph orch host label add node3 mgr
# ceph orch apply mgr --placement "node1 node2 node3"

删除mgr

ceph orch apply mgr “2 node1 node2 ”

打开 balancer 模块

# ceph balancer on

默认模式为 crush-compat。可使用以下方法更改模式

# ceph balancer mode upmap

或者

# ceph balancer mode crush-compat

使用 crush-compat 模式,它与旧的客户端向后兼容,并且会随着时间的推移对数据分发进行小更改,以确保 OSD 平等地使用

查看状态

ceph balancer status

balancer 是 Ceph Manager(ceph-mgr)的一个模块,用于优化 OSD 之间放置组(PG)放置,从而实现平衡的分发(可自动或监管方式
启用 balancer 模块

ceph mgr module enable balancer

启用报警模块

ceph mgr module enable alerts

查看

ceph mgr module ls | more

配置smtp

[ceph: root@host01 /]# ceph config set mgr mgr/alerts/smtp_host smtp.example.com
[ceph: root@host01 /]# ceph config set mgr mgr/alerts/smtp_destination example@example.com
[ceph: root@host01 /]# ceph config set mgr mgr/alerts/smtp_sender example2@example.com

[ceph: root@host01 /]# ceph config set mgr mgr/alerts/smtp_port 587

验证用户名及密码

[ceph: root@host01 /]# ceph config set mgr mgr/alerts/smtp_user admin1234
[ceph: root@host01 /]# ceph config set mgr mgr/alerts/smtp_password admin1234

设置检查周期

[ceph: root@host01 /]# ceph config set mgr mgr/alerts/interval "5m"

立即发送告警
[ceph: root@host01 /]# ceph alerts send

  • 设置crash分析

通过使用 Ceph 管理器 crash 模块,您可以收集有关守护进程 crashdumps 的信息,并将其存储在 Ceph Storage 集群中,以便进一步分析。默认情况下,守护进程崩溃转储在 /var/lib/ceph/crash 中转储。您可以使用选项 crash dir 进行配置。崩溃目录按时间、日期和随机生成的 UUID 命名,包含元数据文件 meta 和最新的日志文件,其 crash_id 是相同的。

您可以使用 ceph-crash.service 自动提交这些崩溃,并在 Ceph 监控器中保留。ceph-crash.service 监视 crashdump 目录,并使用 ceph crash post 上传它们。

RECENT_CRASH heath 消息是 Ceph 集群中最常见的运行状况消息之一。此健康消息表示,一个或多个 Ceph 守护进程最近崩溃,且崩溃尚未存档或被管理员确认。这可能表示软件错误、硬件问题(如磁盘失败)或其它问题。选项 mgr/crash/warn_recent_interval 控制最近一次表示的时间周期,默认为两周。您可以运行以下命令来禁用警告

确定启用了crash

ceph mgr module ls | more

元数据文件是存储在 crash dir 中作为 meta 的 JSON blob。您可以调用 ceph 命令 -i - 选项,该选项会从 stdin 读取

ceph crash post -i meta

出所有新的以及归档的崩溃信息的时间戳或 UUID 崩溃 ID

ceph crash ls

列出所有新崩溃信息的时间戳或 UUID 崩溃 ID

ceph crash ls-new

列出按年龄分组的保存崩溃信息的概述

ceph crash stat

查看保存崩溃的详情

ceph crash info 2022-05-24T19:58:42.549073Z_b2382865-ea89-4be2-b46f-9a59af7b7a2d

删除比 KEEP days 旧的已保存的崩溃:其中 KEEP 必须是一个整数。

ceph crash prune 60

对崩溃报告进行归档,使其不再被视为 RECENT_CRASH 健康检查,且不会出现在 crash ls-new 输出中。它会出现在 crash ls 中

ceph crash archive 2022-05-24T19:58:42.549073Z_b2382865-ea89-4be2-b46f-9a59af7b7a2d

记录所有崩溃报告

ceph crash archive-all

删除崩溃转储

ceph crash rm 2022-05-24T19:58:42.549073Z_b2382865-ea89-4be2-b46f-9a59af7b7a2d
  • 部署mon
# ceph orch host label add node2 mon
# ceph orch host label add node3 mon


ceph orch apply mon --placement="3 node1 node2 node3"
  • 部署mds
ceph orch host label add node1 mds
ceph orch host label add node2 mds
ceph orch host label add node3 mds
  • 部署OSD
磁盘要求
该设备不能有分区。
不得挂载该设备。
该设备不得包含文件系统。
该设备不得包含 Ceph BlueStore OSD。
该设备必须大于 5 GB。

注意:

在 Red Hat Ceph Storage 6.0 中,由于已知的错误,OSD、DB 或 WAL 部署不支持预先创建的 LVM 磁盘。

从 Red Hat Ceph Storage 6.0 开始,支持预先创建的 LVM 磁盘,包括 DB 和 WAL 设备。

设置osd自动管理内存

ceph config set osd osd_memory_target_autotune true

创建osd

ceph orch daemon add osd node1:/dev/data0/lvol0
ceph orch daemon add osd node1:/dev/data1/lvol0
ceph orch daemon add osd node1:/dev/data2/lvol0



ceph orch daemon add osd node2:/dev/data0/lvol0
ceph orch daemon add osd node2:/dev/data1/lvol0
ceph orch daemon add osd node2:/dev/data2/lvol0


ceph orch daemon add osd node3:/dev/data0/lvol0
ceph orch daemon add osd node3:/dev/data1/lvol0
ceph orch daemon add osd node3:/dev/data2/lvol0

高级

ceph orch apply -i /path/to/osd_spec.yml --dry-run
service_type: osd
service_id: osd_using_paths
placement:
  hosts:
    - Node01
    - Node02
spec:
  data_devices:
    paths:
    - /dev/sdb
  db_devices:
    paths:
    - /dev/sdc
  wal_devices:
    paths:
    - /dev/sdd

部署rgw

$ radosgw-admin realm create --rgw-realm=default --default
$ radosgw-admin zonegroup create --rgw-zonegroup=default --master --default
$ radosgw-admin zone create --rgw-zonegroup=default --rgw-zone=us-east-1 --master --default
$ ceph orch apply rgw default us-east-1 --placement="1 mon0"

查看状态

systemctl status ceph-* --no-pager
docker ps
ceph -s

安装awscli工具

apt install awscli -y

创建用户

# radosgw-admin user create --uid=wuyeliang --display-name=wuyeliang --access-key=wuyeliang --secret-key=wuyeliang

创建bucket

$ aws s3 mb s3://wuyeliang-test --endpoint-url http://node1
make_bucket: wuyeliang-test

上传文件

$ aws s3 cp /etc/hosts s3://wuyeliang-test --endpoint-url http://node0
upload: ../etc/hosts to s3://wuyeliang-test/hosts

卸载集群

cephadm rm-cluster --fsid f64f341c-655d-11eb-8778-fa163e914bcc

删除repo

cephadm rm-repo

修改参数
允许删除pool

ceph config set mon mon_allow_pool_delete true

设置单副本

ceph config set  global osd_pool_default_size  1

删除pool

ceph osd pool delete ceph-rbd ceph-rbd --yes-i-really-really-mean-it文章来源地址https://www.toymoban.com/news/detail-621361.html

到了这里,关于基于Ubuntu22.04部署bcache模式ceph的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Ubuntu22.04部署Kubernetes集群(亲测可用)

    本文将使用kubeadm在Ubuntu22.04上部署k8s集群,kubeadm 是官方社区推出的一个用于快速部署kubernetes 集群的工具,用于快速部署Kubernetes 集群。 下载ubuntu22.04镜像,使用vmware部署三台ubuntu22.04虚拟机并配置静态ip和主机名,节点配置如下: 修改为阿里云镜像源 参考文章ubuntu修改apt为

    2024年02月09日
    浏览(62)
  • Ubuntu22.04安装phpMyAdmin(基于MariaDB)

    访问命令行并使用 apt 包管理器更新 Ubuntu 包存储库和已安装的包: sudo apt update sudo apt upgrade -y 1.运行以下命令以安装 phpMyAdmin 及其依赖项: sudo apt install phpmyadmin -y 等待安装完成 2.安装程序会提示您选择要自动配置的 Web 服务器。如果系统使用 Apache,则 apache2 选项已突出显示

    2024年02月03日
    浏览(35)
  • Ubuntu22.04部署K8S1.27.2版本集群

    一、设置主机名并在 hosts 文件中添加条目 1、登录节点使用 hostnamectl 命令设置 hostname #在master中:      172.18.10.11 $ sudo hostnamectl set-hostname \\\"k8s-master\\\" #在work1节点中:  172.18.10.12 $ sudo hostnamectl set-hostname \\\"k8s-worker1\\\" #在work2节点中:  172.18.10.13 $ sudo hostnamectl set-hostname \\\"k8s-worke

    2024年02月09日
    浏览(54)
  • 【mysql部署】在ubuntu22.04上安装和配置mysql教程

    1. 更新软件包列表: 2.安装 MySQL 服务器: 3.设置 MySQL 安全性: 按照提示输入相关问题的回答,例如删除匿名用户、禁止 root 远程登录等。 这里建议直接输入 y 。 这里根据自己要设置的密码强度自行选择,这里我选择输入 0 。 后面还有几个选项,默认输入 y 就行。 4.启动 M

    2024年03月27日
    浏览(45)
  • 基于 RK3588 构建 Ubuntu 22.04 根文件系统

    以下内容在 Rockchip 的 Linux SDK 目录下完成,请先解压 Linux SDK。 1.1 下载 Ubuntu Base Ubuntu-Base 是Ubuntu官方构建的ubuntu最小文件系统,基础包大小通常只有几十兆,可以很方便的个性化定制嵌入式环境。使用北京外国语大学镜像站加速下载,注意选择根据开发板架构选择arm64或其他

    2024年02月13日
    浏览(119)
  • 【Matter】基于Ubuntu 22.04 编译chip-tool工具

    编译过程有点曲折,做下记录,过程中,有参考别人写的博客,也看github 官方介绍,终于跑通了~ 环境说明: 首先需要稳定的梯子,可以访问“外网” ubuntu 环境,最终成功实验在Ubuntu 22.04,应该主要体现在python 库的版本要求 基础: 关于梯子,我使用的是虚拟机NAT方式上网

    2024年02月15日
    浏览(47)
  • 基于Ubuntu22.04的Samba服务器搭建教程(新手保姆级教程)

    Samba 是在 Linux 和 UNIX 系统上实现SMB 协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型

    2024年04月08日
    浏览(60)
  • Ubuntu 22.04LTS安装VNC Server 并配置基于ssh的加密连接

    1.安装tiger vnc server 使用下面的 apt 命令安装 TigerVNC 服务器软件包。 输入  Y  进行确认,然后按 回车 键继续安装。现在安装将开始。  2.初始化 VNC 服务器 切换到需要使用的用户 cd username  使用以下命令初始化 VNC 服务器配置。命令行 vncserver 可用于管理 VNC 服务器配置,包括

    2024年02月16日
    浏览(45)
  • 搭建 PXE 服务器(基于 Ubuntu 22.04,支持 IPv4/6 及 Legacy/UEFI)

    基于 Ubuntu 22.04 搭建 PXE 服务器,支持 IPv4, IPv6 网络,支持 Legacy, UEFI 启动模式。 PXE 启动大致流程如下: PXE Client(客户端)通过 DHCP 请求获取 IP,DHCP 服务器在响应请求时同时提供网络启动引导程序(Boot File)的地址(使用 TFTP 协议)。 PXE Client 获得 IP 后,访问 Boot File 地址

    2024年02月14日
    浏览(53)
  • Ubuntu介绍、与centos的区别、基于VMware安装Ubuntu Server 22.04、配置远程连接、安装jdk+Tomcat

    目录 ​编辑 一、Ubuntu22.04介绍 二、Ubuntu与Centos的区别 三、基于VMware安装Ubuntu Server 22.04 下载 VMware安装 1.创建新的虚拟机 2.选择类型配置 3.虚拟机硬件兼容性 4.安装客户机操作系统 5.选择客户机操作系统 6.命名虚拟机 7.处理器配置 8.虚拟机内存 9.网络类型 10. 选择I/O控制器类

    2024年03月13日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包