我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Ubuntu 16.04中怎么安装Ceph存储集群

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Ubuntu 16.04中怎么安装Ceph存储集群

这篇文章主要介绍了Ubuntu 16.04中怎么安装Ceph存储集群的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Ubuntu 16.04中怎么安装Ceph存储集群文章都会有所收获,下面我们一起来看看吧。

Ceph是一个可靠、自动重均衡、自动恢复的分布式存储系统,其主要特点就是分布式存储,在存储每一个数据时,都会通过计算得出该数据存储的位置,本篇文章我分享一下在 Ubuntu 16.04 服务器上安装建立一个 Ceph 集群。Ceph 集群包括这些组件:

  • Ceph OSD (ceph-osd) – 控制数据存储,数据复制和恢复。Ceph 集群需要至少两个 Ceph OSD 服务器。这次安装中我们将使用三个 Ubuntu 16.04 服务器。

  • Ceph Monitor (ceph-mon) – 监控集群状态并运行 OSD 映射 和 CRUSH 映射。这里我们使用一个服务器。

  • Ceph Meta Data Server (ceph-mds) – 如果你想把 Ceph 作为文件系统使用,就需要这个。

前提条件

  • 6 个安装了 Ubuntu 16.04 的服务器节点

  • 所有节点上的 root 权限

我将使用下面这些 hostname /IP 安装:

主机名              IP 地址ceph-admin        10.0.15.10mon1                 10.0.15.11osd1                  10.0.15.21osd2                  10.0.15.22osd3                  10.0.15.23client                 10.0.15.15

第 1 步 – 配置所有节点

这次安装,我将配置所有的 6 个节点来准备安装 Ceph 集群软件。所以你必须在所有节点运行下面的命令。然后确保所有节点都安装了 ssh-server。

创建 Ceph 用户

在所有节点创建一个名为 cephuser 的新用户

useradd -m -s /bin/bash cephuserpasswd cephuser

创建完新用户后,我们需要给 cephuser 配置无密码的 sudo 权限。这意味着 cephuser 可以不先输入密码而获取到 sudo 权限运行。

运行下面的命令来完成配置。

echo "cephuser ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/cephuserchmod 0440 /etc/sudoers.d/cephusersed -i s'/Defaults requiretty/#Defaults requiretty'/g /etc/sudoers
安装和配置 NTP

安装 NTP 来同步所有节点的日期和时间。先运行 ntpdate 命令通过 NTP 设置日期。我们将使用 US 池的 NTP 服务器。然后开启并使 NTP 服务在开机时启动。

sudo apt-get install -y ntp ntpdate ntp-docntpdate 0.us.pool.ntp.orghwclock --systohcsystemctl enable ntpsystemctl start ntp
安装 Open-vm-tools

如果你正在 VMware 里运行所有节点,你需要安装这个虚拟化工具。

sudo apt-get install -y open-vm-tools
安装 Python 和 parted

在这个教程,我们需要 python 包来建立 ceph 集群。安装 python 和 python-pip。

sudo apt-get install -y python python-pip parted
配置 Hosts 文件

用 vim 编辑器编辑所有节点的 hosts 文件。

vim /etc/hosts

粘帖如下配置:

10.0.15.10        ceph-admin10.0.15.11        mon110.0.15.21        ceph-osd110.0.15.22        ceph-osd210.0.15.23        ceph-osd310.0.15.15        ceph-client

保存 hosts 文件,然后退出 vim 编辑器。

现在你可以试着在两个服务器间 ping 主机名来测试网络连通性。

ping -c 5 mon1

Ubuntu 16.04中怎么安装Ceph存储集群

Ceph cluster Installation on Ubuntu 16.04

第 2 步 – 配置 SSH 服务器

这一步,我们将配置 ceph-admin 节点。管理节点是用来配置监控节点和 osd 节点的。登录到 ceph-admin 节点然后使用 cephuser 用户。

ssh root@ceph-adminsu - cephuser

管理节点用来安装配置所有集群节点,所以 ceph-admin 上的用户必须有不使用密码连接到所有节点的权限。我们需要为 ‘ceph-admin’ 节点的 cephuser 用户配置无密码 SSH 登录权限。

生成 cephuser 的 ssh 密钥。

ssh-keygen

让密码为空。

下面,为 ssh 创建一个配置文件

vim ~/.ssh/config

粘帖如下配置:

Host ceph-admin        Hostname ceph-admin        User cephuserHost mon1        Hostname mon1        User cephuserHost ceph-osd1        Hostname ceph-osd1        User cephuserHost ceph-osd2        Hostname ceph-osd2        User cephuserHost ceph-osd3        Hostname ceph-osd3        User cephuserHost ceph-client        Hostname ceph-client        User cephuser

保存文件并退出 vim。

Ubuntu 16.04中怎么安装Ceph存储集群

Ceph-admin configuration

改变配置文件权限为 644。

chmod 644 ~/.ssh/config

现在使用 ssh-copy-id 命令增加密钥到所有节点。

ssh-keyscan ceph-osd1 ceph-osd2 ceph-osd3 ceph-client mon1 >> ~/.ssh/known_hostsssh-copy-id ceph-osd1ssh-copy-id ceph-osd2ssh-copy-id ceph-osd3ssh-copy-id mon1

当请求输入密码时输入你的 cephuser 密码。

Ubuntu 16.04中怎么安装Ceph存储集群

Ceph-admin deploy ssh key to all cluster nodes

现在尝试从 ceph-admin 节点登录 osd1 服务器,测试无密登录是否正常。

ssh ceph-osd1

Ubuntu 16.04中怎么安装Ceph存储集群

SSH Less password from ceph-admin to all nodes cluster

第 3 步 – 配置 Ubuntu 防火墙

出于安全原因,我们需要在服务器打开防火墙。我们更愿使用 Ufw(不复杂防火墙)来保护系统,这是 Ubuntu 默认的防火墙。在这一步,我们在所有节点开启 ufw,然后打开 ceph-admin、ceph-mon 和 ceph-osd 需要使用的端口。

登录到 ceph-admin 节点,然后安装 ufw 包。

ssh root@ceph-adminsudo apt-get install -y ufw

打开 80,2003 和 4505-4506 端口,然后重启防火墙。

sudo ufw allow 22/tcpsudo ufw allow 80/tcpsudo ufw allow 2003/tcpsudo ufw allow 4505:4506/tcp

开启 ufw 并设置开机启动。

sudo ufw enable

Ubuntu 16.04中怎么安装Ceph存储集群

UFW Firewall with Ceph service

从 ceph-admin 节点,登录到监控节点 mon1 然后安装 ufw。

ssh mon1sudo apt-get install -y ufw

打开 ceph 监控节点的端口然后开启 ufw。

sudo ufw allow 22/tcpsudo ufw allow 6789/tcpsudo ufw enable

最后,在每个 osd 节点 ceph-osd1、ceph-osd2 和 ceph-osd3 上打开这些端口 6800-7300。

从 ceph-admin 登录到每个 ceph-osd 节点安装 ufw。

ssh ceph-osd1sudo apt-get install -y ufw

在 osd 节点打开端口并重启防火墙。

sudo ufw allow 22/tcpsudo ufw allow 6800:7300/tcpsudo ufw enable

ufw 防火墙配置完成。

第 4 步 – 配置 Ceph OSD 节点

这个教程里,我们有 3 个 OSD 节点,每个节点有两块硬盘分区。

  1. /dev/sda 用于根分区

  2. /dev/sdb 空闲分区 – 20GB

我们要使用 /dev/sdb 作为 ceph 磁盘。从 ceph-admin 节点,登录到所有 OSD 节点,然后格式化 /dev/sdb 分区为 XFS 文件系统。

ssh ceph-osd1ssh ceph-osd2ssh ceph-osd3

使用 fdisk 命令检查分区表。

sudo fdisk -l /dev/sdb

格式化 /dev/sdb 分区为 XFS 文件系统,使用 parted 命令创建一个 GPT 分区表。

sudo parted -s /dev/sdb mklabel gpt mkpart primary xfs 0% 100%

下面,使用 mkfs 命令格式化分区为 XFS 格式。

sudo mkfs.xfs -f /dev/sdb

现在检查分区,然后你会看见一个 XFS 文件系统的 /dev/sdb 分区。

sudo fdisk -s /dev/sdbsudo blkid -o value -s TYPE /dev/sdb

Ubuntu 16.04中怎么安装Ceph存储集群

Format partition ceph OSD nodes

第 5 步 – 创建 Ceph 集群

在这步,我们将从 ceph-admin 安装 Ceph 到所有节点。马上开始,先登录到 ceph-admin 节点。

ssh root@ceph-adminsu - cephuser
在 ceph-admin 节点上安装 ceph-deploy

首先我们已经在系统上安装了 python 和 python-pip。现在我们需要从 pypi python 仓库安装 Ceph 部署工具 ‘ceph-deploy’。

用 pip 命令在 ceph-admin 节点安装 ceph-deploy 。

sudo pip install ceph-deploy

注意: 确保所有节点都已经更新。

ceph-deploy 工具已经安装完毕后,为 Ceph 集群配置创建一个新目录。

创建一个新集群

创建一个新集群目录。

mkdir clustercd cluster/

下一步,用 ceph-deploy 命令通过定义监控节点 mon1 创建一个新集群。

ceph-deploy new mon1

命令将在集群目录生成 Ceph 集群配置文件 ceph.conf。

Ubuntu 16.04中怎么安装Ceph存储集群

Generate new ceph cluster configuration

用 vim 编辑 ceph.conf。

vim ceph.conf

在 [global] 块下,粘贴下面的配置。

# Your network addresspublic network = 10.0.15.0/24osd pool default size = 2

保存文件并退出编辑器。

安装 Ceph 到所有节点

现在用一个命令从 ceph-admin 节点安装 Ceph 到所有节点。

ceph-deploy install ceph-admin ceph-osd1 ceph-osd2 ceph-osd3 mon1

命令将自动安装 Ceph 到所有节点:mon1、osd1-3 和 ceph-admin – 安装将花一些时间。

现在到 mon1 节点部署监控节点。

ceph-deploy mon create-initial

命令将创建一个监控密钥,用 ceph 命令检查密钥。

ceph-deploy gatherkeys mon1

Ubuntu 16.04中怎么安装Ceph存储集群

Deploy key ceph

增加 OSD 到集群

在所有节点上安装了 Ceph 之后,现在我们可以增加 OSD 守护进程到该集群。OSD 守护进程将在磁盘 /dev/sdb 分区上创建数据和日志 。

检查所有 osd 节点的 /dev/sdb 磁盘可用性。

ceph-deploy disk list ceph-osd1 ceph-osd2 ceph-osd3

Ubuntu 16.04中怎么安装Ceph存储集群

disk list of osd nodes

你将看见我们之前创建 XFS 格式的 /dev/sdb。

下面,在所有 OSD 节点上用 zap 选项删除该分区表。

ceph-deploy disk zap ceph-osd1:/dev/sdb ceph-osd2:/dev/sdb ceph-osd3:/dev/sdb

这个命令将删除所有 Ceph OSD 节点的 /dev/sdb 上的数据。

现在准备所有 OSD 节点,请确保结果没有报错。

ceph-deploy osd prepare ceph-osd1:/dev/sdb ceph-osd2:/dev/sdb ceph-osd3:/dev/sdb

当你看到 ceph-osd1-3 结果已经准备好供 OSD 使用,就表明命令已经成功。

Ubuntu 16.04中怎么安装Ceph存储集群

Prepare the ceph-osd nodes

用下面的命令激活 OSD:

ceph-deploy osd activate ceph-osd1:/dev/sdb ceph-osd2:/dev/sdb ceph-osd3:/dev/sdb

现在你可以再一次检查 OSDS 节点的 sdb 磁盘。

ceph-deploy disk list ceph-osd1 ceph-osd2 ceph-osd3

Ubuntu 16.04中怎么安装Ceph存储集群

Ceph osds activated

结果是 /dev/sdb 现在已经分为两个区:

  1. /dev/sdb1 – Ceph Data

  2. /dev/sdb2 – Ceph Journal

或者你直接在 OSD 节点山检查。

ssh ceph-osd1sudo fdisk -l /dev/sdb

Ubuntu 16.04中怎么安装Ceph存储集群

Ceph OSD nodes were created

接下来,部署管理密钥到所有关联节点。

ceph-deploy admin ceph-admin mon1 ceph-osd1 ceph-osd2 ceph-osd3

在所有节点运行下面的命令,改变密钥文件权限。

sudo chmod 644 /etc/ceph/ceph.client.admin.keyring

Ceph 集群在 Ubuntu 16.04 已经创建完成。

第 6 步 – 测试 Ceph

在第 4 步,我们已经安装并创建了一个新 Ceph 集群,然后添加了 OSD 节点到集群。现在我们应该测试集群确保它如期工作。

从 ceph-admin 节点,登录到 Ceph 监控服务器 mon1。

ssh mon1

运行下面命令来检查集群是否健康。

sudo ceph health

现在检查集群状态。

sudo ceph -s

你可以看到下面返回结果:

Ubuntu 16.04中怎么安装Ceph存储集群

Ceph Cluster Status

确保 Ceph 健康状态是 OK 的,有一个监控节点 mon1 IP 地址为 ‘10.0.15.11’。有 3 个 OSD 服务器都是 up 状态并且正在运行,可用磁盘空间为 45GB – 3x15GB 的 Ceph 数据 OSD 分区。

我们在 Ubuntu 16.04 建立一个新 Ceph 集群成功。

关于“Ubuntu 16.04中怎么安装Ceph存储集群”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Ubuntu 16.04中怎么安装Ceph存储集群”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Ubuntu 16.04中怎么安装Ceph存储集群

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Ubuntu 16.04中怎么安装Ceph存储集群

这篇文章主要介绍了Ubuntu 16.04中怎么安装Ceph存储集群的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Ubuntu 16.04中怎么安装Ceph存储集群文章都会有所收获,下面我们一起来看看吧。Cep
2023-06-28

怎么在Ubuntu 16.04中安装Ceph存储集群

这篇文章给大家分享的是有关怎么在Ubuntu 16.04中安装Ceph存储集群的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Ceph 是一个高性能、可靠、可扩展的开源存储平台。它是一个自由的分布式存储系统,提供
2023-06-16

ceph集群安装报错怎么办

这篇文章给大家分享的是有关ceph集群安装报错怎么办的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.创建密钥时报错[root@node1 ~]# ceph-deploy gatherkeys node1[no
2023-06-04

怎么理解Ceph分布式存储集群

怎么理解Ceph分布式存储集群,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。在规划Ceph分布式存储集群环境的时候,对硬件的选择很重要,这关乎整个Ceph集群的
2023-06-06

Ubuntu-16.04中怎么配置Apache Kafka集群

这期内容当中小编将会给大家带来有关Ubuntu-16.04中怎么配置Apache Kafka集群,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Apache Kafka是一个免费的开源流处理软件平台,由Ap
2023-06-02

Ubuntu 16.04中怎么安装Concrete5

这篇文章给大家介绍Ubuntu 16.04中怎么安装Concrete5,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。步骤1:安装Apache、MySQL和PHP以及其他依赖项Comcrete5在一键安装包上运行。您需要
2023-06-04

在Ubuntu 18.04.1中怎么安装Hadoop集群

这篇文章给大家介绍在Ubuntu 18.04.1中怎么安装Hadoop集群,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。准备运行Hadoop服务器首先,我们需要安装Oracle Java 8,因为从Ubuntu 18.
2023-06-02

CentOS7中怎么安装 Kubernetes集群

CentOS7中怎么安装 Kubernetes集群,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。CentOS7(mini) 安装 Kubernetes 集群(kubeadm
2023-06-19

Redis中怎么安装一个六节点集群

这篇文章主要介绍了Redis中怎么安装一个六节点集群的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Redis中怎么安装一个六节点集群文章都会有所收获,下面我们一起来看看吧。简介redis cluster是亲生的
2023-06-27

Centos7怎么安装memcached集中式缓存系统

这篇“Centos7怎么安装memcached集中式缓存系统”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Centos7怎么
2023-06-27

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录