このセクションは、アカウントサービス、コンテナーサービス、オブジェクトサービスを実行するストレージノードをインストールして設定する方法を紹介します。この設定は簡単のため、それぞれ 2 つの空のローカルブロックストレージデバイス( /dev/vdb、/dev/vdc )を持つ、2 つのストレージノードを利用します。
ストレージデバイスの準備
ストレージノードに Object Storage サービスをインストールして設定する前に、ストレージデバイスを準備する必要があります。
オブジェクトノード1( object1 )に、Openstack Rocky のリポジトリを追加します。
[root@object1 ~]# yum -y install centos-release-openstack-rocky 読み込んだプラグイン:fastestmirror Loading mirror speeds from cached hostfile * base: ftp.yz.yamagata-u.ac.jp * extras: ftp.yz.yamagata-u.ac.jp * updates: ftp.yz.yamagata-u.ac.jp 依存性の解決をしています --> トランザクションの確認を実行しています。 ---> パッケージ centos-release-openstack-rocky.noarch 0:1-1.el7.centos を インストール --> 依存性の処理をしています: centos-release-qemu-ev のパッケージ: centos-release-openstack-rocky-1-1.el7.centos.noarch --> 依存性の処理をしています: centos-release-ceph-luminous のパッケージ: centos-release-openstack-rocky-1-1.el7.centos.noarch --> トランザクションの確認を実行しています。 ---> パッケージ centos-release-ceph-luminous.noarch 0:1.1-2.el7.centos を インストール --> 依存性の処理をしています: centos-release-storage-common のパッケージ: centos-release-ceph-luminous-1.1-2.el7.centos.noarch ---> パッケージ centos-release-qemu-ev.noarch 0:1.0-3.el7.centos を インストール --> 依存性の処理をしています: centos-release-virt-common のパッケージ: centos-release-qemu-ev-1.0-3.el7.centos.noarch --> トランザクションの確認を実行しています。 ---> パッケージ centos-release-storage-common.noarch 0:2-2.el7.centos を インストール ---> パッケージ centos-release-virt-common.noarch 0:1-1.el7.centos を インストール --> 依存性解決を終了しました。 依存性を解決しました ================================================================================ Package アーキテクチャー バージョン リポジトリー 容量 ================================================================================ インストール中: centos-release-openstack-rocky noarch 1-1.el7.centos extras 5.2 k 依存性関連でのインストールをします: centos-release-ceph-luminous noarch 1.1-2.el7.centos extras 4.4 k centos-release-qemu-ev noarch 1.0-3.el7.centos extras 11 k centos-release-storage-common noarch 2-2.el7.centos extras 5.1 k centos-release-virt-common noarch 1-1.el7.centos extras 4.5 k トランザクションの要約 ================================================================================ インストール 1 パッケージ (+4 個の依存関係のパッケージ) 総ダウンロード容量: 30 k インストール容量: 24 k Downloading packages: (1/5): centos-release-ceph-luminous-1.1-2.el7.centos.noarc | 4.4 kB 00:00 (2/5): centos-release-virt-common-1-1.el7.centos.noarch.rp | 4.5 kB 00:00 (3/5): centos-release-storage-common-2-2.el7.centos.noarch | 5.1 kB 00:00 (4/5): centos-release-openstack-rocky-1-1.el7.centos.noarc | 5.2 kB 00:00 (5/5): centos-release-qemu-ev-1.0-3.el7.centos.noarch.rpm | 11 kB 00:00 -------------------------------------------------------------------------------- 合計 36 kB/s | 30 kB 00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction インストール中 : centos-release-storage-common-2-2.el7.centos. 1/5 インストール中 : centos-release-ceph-luminous-1.1-2.el7.centos 2/5 インストール中 : centos-release-virt-common-1-1.el7.centos.noa 3/5 インストール中 : centos-release-qemu-ev-1.0-3.el7.centos.noarc 4/5 インストール中 : centos-release-openstack-rocky-1-1.el7.centos 5/5 検証中 : centos-release-ceph-luminous-1.1-2.el7.centos 1/5 検証中 : centos-release-openstack-rocky-1-1.el7.centos 2/5 検証中 : centos-release-qemu-ev-1.0-3.el7.centos.noarc 3/5 検証中 : centos-release-virt-common-1-1.el7.centos.noa 4/5 検証中 : centos-release-storage-common-2-2.el7.centos. 5/5 インストール: centos-release-openstack-rocky.noarch 0:1-1.el7.centos 依存性関連をインストールしました: centos-release-ceph-luminous.noarch 0:1.1-2.el7.centos centos-release-qemu-ev.noarch 0:1.0-3.el7.centos centos-release-storage-common.noarch 0:2-2.el7.centos centos-release-virt-common.noarch 0:1-1.el7.centos 完了しました! [root@object1 ~]#
openstack-rocky の yum リポジトリ(CentOS-Openstack-rocky.repo)を無効化しておく。使用したい時には、yum で指定して使用します。
[root@object1 ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-OpenStack-rocky.repo [root@object1 ~]#
openstack-rocky の yum リポジトリ(CentOS-Openstack-rocky.repo)を使って、補助ユーティリティーパッケージをインストールします。
[root@object1 ~]# yum --enablerepo=centos-openstack-rocky -y install xfsprogs rsync 読み込んだプラグイン:fastestmirror Loading mirror speeds from cached hostfile * base: ftp.yz.yamagata-u.ac.jp * extras: ftp.yz.yamagata-u.ac.jp * updates: ftp.yz.yamagata-u.ac.jp centos-openstack-rocky | 2.9 kB 00:00 centos-openstack-rocky/7/x86_64/primary_db | 769 kB 00:03 依存性の解決をしています --> トランザクションの確認を実行しています。 ---> パッケージ rsync.x86_64 0:3.1.2-4.el7 を インストール ---> パッケージ xfsprogs.x86_64 0:4.5.0-15.el7 を インストール --> 依存性解決を終了しました。 依存性を解決しました ================================================================================ Package アーキテクチャー バージョン リポジトリー 容量 ================================================================================ インストール中: rsync x86_64 3.1.2-4.el7 base 403 k xfsprogs x86_64 4.5.0-15.el7 base 896 k トランザクションの要約 ================================================================================ インストール 2 パッケージ 総ダウンロード容量: 1.3 M インストール容量: 4.7 M Downloading packages: (1/2): rsync-3.1.2-4.el7.x86_64.rpm | 403 kB 00:00 (2/2): xfsprogs-4.5.0-15.el7.x86_64.rpm | 896 kB 00:30 -------------------------------------------------------------------------------- 合計 42 kB/s | 1.3 MB 00:30 Running transaction check Running transaction test Transaction test succeeded Running transaction インストール中 : rsync-3.1.2-4.el7.x86_64 1/2 インストール中 : xfsprogs-4.5.0-15.el7.x86_64 2/2 検証中 : xfsprogs-4.5.0-15.el7.x86_64 1/2 検証中 : rsync-3.1.2-4.el7.x86_64 2/2 インストール: rsync.x86_64 0:3.1.2-4.el7 xfsprogs.x86_64 0:4.5.0-15.el7 完了しました! [root@object1 ~]#
オブジェクトストレージノード1の現在の論理ボリューム(パーティション)を確認します。ここでは、2 つの空のローカルブロックストレージデバイス( /dev/vdb、/dev/vdc )が認識されていることを確認します。
[root@object1 ~]# fdisk -l Disk /dev/vda: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk label type: dos ディスク識別子: 0x000a4ca9 デバイス ブート 始点 終点 ブロック Id システム /dev/vda1 * 2048 2099199 1048576 83 Linux /dev/vda2 2099200 41943039 19921920 8e Linux LVM Disk /dev/vdb: 10.7 GB, 10737418240 bytes, 20971520 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk /dev/vdc: 10.7 GB, 10737418240 bytes, 20971520 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk /dev/mapper/centos-root: 18.2 GB, 18249416704 bytes, 35643392 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk /dev/mapper/centos-swap: 2147 MB, 2147483648 bytes, 4194304 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト [root@object1 ~]#
パーティション /dev/vdb を XFS としてフォーマットします。
[root@object1 ~]# mkfs.xfs -f /dev/vdb meta-data=/dev/vdb isize=512 agcount=4, agsize=655360 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0, sparse=0 data = bsize=4096 blocks=2621440, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal log bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 [root@object1 ~]#
パーティション /dev/vdc を XFS としてフォーマットします。
[root@object1 ~]# mkfs.xfs -f /dev/vdc meta-data=/dev/vdc isize=512 agcount=4, agsize=655360 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0, sparse=0 data = bsize=4096 blocks=2621440, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal log bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 [root@object1 ~]#
マウントポイントとなるディレクトリーを作成します。
[root@object1 ~]# mkdir -p /srv/node/vdb [root@object1 ~]# mkdir -p /srv/node/vdc [root@object1 ~]# ls /srv/node/ vdb vdc [root@object1 ~]#
/etc/fstab ファイルを編集し、以下の内容を追加します。
[root@object1 ~]# vi /etc/fstab 以下の設定を追加 /dev/vdb /srv/node/vdb xfs noatime,nodiratime,nobarrier,logbufs=8 0 2 /dev/vdc /srv/node/vdc xfs noatime,nodiratime,nobarrier,logbufs=8 0 2
デバイスをマウントします。
[root@object1 ~]# mount /srv/node/vdb [root@object1 ~]# mount /srv/node/vdc
正常にマウントされていることを確認します。以下の行が表示できていれば、正常にマウントされています。
/dev/vdb on /srv/node/vdb type xfs
/dev/vdc on /srv/node/vdc type xfs
[root@object1 ~]# mount -v sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel) proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=495688k,nr_inodes=123922,mode=755) securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime) tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel) devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000) tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755) tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755) cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd) pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime) cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,hugetlb) cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,freezer) cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,pids) cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,memory) cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,net_prio,net_cls) cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,cpuacct,cpu) cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,perf_event) cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,devices) cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,blkio) cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,cpuset) configfs on /sys/kernel/config type configfs (rw,relatime) /dev/mapper/centos-root on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota) selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime) systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=22,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=11908) debugfs on /sys/kernel/debug type debugfs (rw,relatime) mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel) hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel) /dev/vda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota) tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=101552k,mode=700) /dev/vdc on /srv/node/vdc type xfs (rw,noatime,nodiratime,seclabel,attr2,nobarrier,inode64,logbufs=8,noquota) /dev/vdb on /srv/node/vdb type xfs (rw,noatime,nodiratime,seclabel,attr2,nobarrier,inode64,logbufs=8,noquota) [root@object1 ~]#
/etc/rsyncd.conf ファイルを編集し、以下の内容を追加します。address には、オブジェクトストレージ1 の管理インターフェースのIPアドレスを指定します。
[root@object1 ~]# vi /etc/rsyncd.conf 以下を追加する uid = swift gid = swift log file = /var/log/rsyncd.log pid file = /var/run/rsyncd.pid address = 192.168.24.120 [account] max connections = 2 path = /srv/node/ read only = False lock file = /var/lock/account.lock [container] max connections = 2 path = /srv/node/ read only = False lock file = /var/lock/container.lock [object] max connections = 2 path = /srv/node/ read only = False lock file = /var/lock/object.lock
rsyncd サービスの自動起動を有効化します。
■ 自動起動の有効化 [root@object1 ~]# systemctl enable rsyncd.service Created symlink from /etc/systemd/system/multi-user.target.wants/rsyncd.service to /usr/lib/systemd/system/rsyncd.service. [root@object1 ~]# ■ 自動起動の状態確認 [root@object1 ~]# systemctl is-enabled rsyncd.service enabled [root@object1 ~]#
rsyncd サービスを起動します。
■ 起動 [root@object1 ~]# systemctl start rsyncd.service [root@object1 ~]# ■ 起動状態の確認 [root@object1 ~]# systemctl status rsyncd.service ● rsyncd.service - fast remote file copy program daemon Loaded: loaded (/usr/lib/systemd/system/rsyncd.service; enabled; vendor preset: disabled) Active: active (running) since 月 2018-10-29 22:16:29 JST; 4s ago Main PID: 4063 (rsync) CGroup: /system.slice/rsyncd.service └─4063 /usr/bin/rsync --daemon --no-detach 10月 29 22:16:29 object1 systemd[1]: Started fast remote file copy program...n. 10月 29 22:16:29 object1 systemd[1]: Starting fast remote file copy progra..... Hint: Some lines were ellipsized, use -l to show in full. [root@object1 ~]#
オブジェクトストレージノード2 でも上記同様の手順を実施し、オブジェクストレージノード2 のストレージデバイスを準備する。