MySQL Cluster篇17 — 文件系统的加密与取消

概述

本章,您将学习如何在数据节点对文件系统进行加密。

集群的相关信息如下表所示:

操作系统 操作系统环境 IP 地址 硬件信息 NDB Cluster 版本 节点类型
RL 8.10 纯命令行 192.168.100.10/24 1 core;4GB 内存;50GB 存储 8.4.8 LTS 管理节点
RL 8.10 纯命令行 192.168.100.12/24 1 core;4GB 内存;50GB 存储 8.4.8 LTS 数据节点 A
RL 8.10 纯命令行 192.168.100.14/24 1 core;4GB 内存;50GB 存储 8.4.8 LTS 数据节点 B
RL 8.10 纯命令行 192.168.100.16/24 1 core;4GB 内存;50GB 存储 8.4.8 LTS SQL 节点
RL 8.10 纯命令行 192.168.100.18/24 1 core;4GB 内存;50GB 存储 8.4.8 LTS 数据节点 C
RL 8.10 纯命令行 192.168.100.20/24 1 core;4GB 内存;50GB 存储 8.4.8 LTS 数据节点 D

每个管理服务器(管理节点)中 config.ini 文件的内容如下:

Shell > cat /etc/mysql-cluster/config.ini
[ndbd default]
NoOfReplicas=2
DataMemory=98M
CompressedBackup=1
BackupDataDir=/mysql-cluster-backup

[ndb_mgmd]
HostName=192.168.100.10
DataDir=/var/log/mysql-cluster
NodeId=1

[ndbd]
HostName=192.168.100.12
NodeId=2
DataDir=/usr/local/mysql/data

[ndbd]
HostName=192.168.100.14
NodeId=3
DataDir=/usr/local/mysql/data

[ndbd]
HostName=192.168.100.18
NodeId=4
DataDir=/usr/local/mysql/data

[ndbd]
HostName=192.168.100.20
NodeId=5
DataDir=/usr/local/mysql/data

[mysqld]
HostName=192.168.100.16
NodeId=6

[mysqld]

[mysqld]

每个数据服务器(数据节点)中 /etc/my.cnf 文件的内容如下:

Shell > cat /etc/my.cnf
[mysqld]
ndbcluster

[mysql_cluster]
ndb-connectstring=192.168.100.10

每个 SQL 服务器(SQL 节点)中 /etc/my.cnf 文件的内容如下:

Shell > cat /etc/my.cnf
[mysqld]
ndbcluster
default-storage-engine=NDBCLUSTER

[mysql_cluster]
ndb-connectstring=192.168.100.10

启用文件系统加密

要在一个已经运行的 MySQL NDB Cluster 中启用文件系统加密,需按照以下步骤执行。

步骤 1:在管理节点 config.ini 中配置相关参数。若有多个管理服务器(管理节点),则需要修改所有的 config.ini 文件。

Shell (192.168.100.10)> vim /etc/mysql-cluster/config.ini
[ndbd default]
NoOfReplicas=2
DataMemory=98M
CompressedBackup=1
BackupDataDir=/mysql-cluster-backup
EncryptedFileSystem=1  ← 添加这一行

...

步骤 2:滚动重启所有的管理服务器(管理节点),单个管理服务器(管理节点)的操作如下所示。

Shell (192.168.100.10)> ndb_mgm

ndb_mgm> 1 stop
ndb_mgm> exit

Shell (192.168.100.10)> ndb_mgmd --configdir=/etc/mysql-cluster/ -f /etc/mysql-cluster/config.ini --initial

注意!实际生产环境下,若您有多个管理节点,则不应该一次性将所有管理节点关闭,而应该是滚动重启一个管理节点后,再配置下一个管理节点。

步骤 3:配置每个数据服务器(数据节点)的 /etc/my.cnf 文件,单个数据服务器(数据节点)的操作如下所示。

# 以节点 ID 为 2 的数据节点为例
Shell (192.168.100.12)> killall ndbd

Shell (192.168.100.12)> vim /etc/my.cnf
[mysqld]
ndbcluster

[mysql_cluster]
ndb-connectstring=192.168.100.10

[ndbd]
filesystem-password=FsPas.2468

Shell (192.168.100.12)> ndbd --initial

注意!实际生产环境下,您不应该将所有的数据节点一次性全关闭,而应该操作单个数据节点之后,再操作下一个管理节点。

步骤 4:滚动重启每个 SQL 节点。单个 SQL 节点的操作如下所示。

Shell (192.168.100.16)> /usr/local/mysql/support-files/mysql.server stop

Shell (192.168.100.16)> /usr/local/mysql/support-files/mysql.server start

注意!实际生产环境下,若您有多个 SQL 节点,则不应该一次性将所有 SQL 节点关闭,而应该是滚动重启一个 SQL 节点后,再配置下一个管理节点。

步骤 5:查询是否正确启用了文件系统加密。可使用以下的 SQL 语句进行查询。

# SQL 99 标准中,内连接里的等值连接
MySQL > select a.node_id as nodeid, a.config_value as value, b.param_name as name from 
ndbinfo.config_values a
inner join
ndbinfo.config_params b
on a.config_param=b.param_number
where b.param_name='EncryptedFileSystem' ;

+--------+-------+---------------------+
| nodeid | value | name                |
+--------+-------+---------------------+
|      2 | 1     | EncryptedFileSystem |
|      3 | 1     | EncryptedFileSystem |
|      4 | 1     | EncryptedFileSystem |
|      5 | 1     | EncryptedFileSystem |
+--------+-------+---------------------+
4 rows in set (0.18 sec)

若 value 这一列的值为 1 ,表示对应节点 ID 启用了文件系统加密。

取消文件系统加密

取消的步骤与上述步骤一样,只不过将新添加的内容删除即可。

Avatar photo

关于 陸風睿

GNU/Linux 从业者、开源爱好者、技术钻研者,撰写文档既是兴趣也是工作内容之一。Q - "281957576";WeChat - "jiulongxiaotianci",Github - https://github.com/jimcat8
用一杯咖啡支持我们,我们的每一篇[文档]都经过实际操作和精心打磨,而不是简单地从网上复制粘贴。期间投入了大量心血,只为能够真正帮助到您。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇