CentOS 7にApacheをインストールする方法
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
GlusterFSは、ネットワークに接続されたファイルシステムで、ネットワーク上の複数のデバイス間で2つのドライブを効果的に共有できます。このファイルシステムは、Vultrのブロックストレージ製品に最適です。ネットワークを介してドライブを共有できるため、そのままでは不可能です。
機能、拡張性、信頼性の観点から、GlusterFSは、最も洗練された安定したファイルシステムの1つであることが証明されています。
1つのサーバーのドライブに変更が加えられると、リアルタイムで他のサーバーに自動的に複製されます。これを達成し、このガイドに従うには、次のものが必要です。
これら2つのブロックストレージドライブを注文したら、それらをVM 1とVM 2に接続する必要があります。同じファイルシステムに両方のブロックストレージドライブを使用するため、両方のドライブの合計サイズを2で割ると、使用可能な量が得られますGBの。たとえば、2つの100 GBドライブがある場合、100 GBが使用可能になります(100 * 2/2)。
さらに、両方のVMを同じプライベートネットワークに配置するには、両方のVMを同じ場所に置く必要があります。内部IPアドレスを使用してサーバーに接続します。ブロックストレージドライブのデータをワイプすることに注意してください。それらが真新しく、フォーマットされていないことを確認してください。
このガイドでは、プライベートIPアドレス10.0.99.10および10.0.99.11をそれぞれ使用してstorage1
およびを使用しstorage2
ます。サーバー名とIPアドレスは異なる可能性が高いため、GlusterFSのセットアッププロセスでそれらを必ず変更してください。
このガイドは、CentOS / RHEL 7を念頭に置いて作成されました。ただし、GlusterFSは複数のLinuxディストリビューション間で比較的相互互換性があります。
/etc/hosts
ファイルを変更するそれぞれのインスタンスにすばやく接続できるようにするには、hosts
ファイルに覚えやすい名前を追加する必要があります。/etc/hosts
ファイルを開き、次の行をその下部に追加します。
10.0.99.10 storage1
10.0.99.11 storage2
storage1
SSHでstorage1
次のコマンドを実行します。デフォルトでは、接続されたブロックストレージドライブはとしてマウントされ/dev/vdb
ます。これが何らかの理由でケースで異なる場合は、以下のコマンドで変更する必要があります。
ディスクをフォーマットします。
fdisk /dev/vdb
次の3つの質問(パーティションサイズなどに関しては、ブロックストレージドライブの使用可能なすべてのスペースを使用したい)で「Enter」を押し、「w」を書き込んでこれらの変更をディスクに書き込みます。これが正常に完了したら、次のように書き込みます。
/sbin/mkfs.ext4 /dev/vdb1
Vultrはデフォルトではブロックストレージ上にファイルシステムを作成しないため、先に進んでファイルシステムを作成しました。
次に、ファイルを保存するフォルダーを作成します。この名前は変更できますが、あまり表示されないので、複雑さを解消するために、そのままにすることをお勧めします。
mkdir /glusterfs1
起動時にドライブを自動的にマウントするに/etc/fstab
は、ファイルの下部に次の行を開いて追加します。
/dev/vdb1 /glusterfs1 ext4 defaults 1 2
最後に、ドライブをマウントします。
mount -a
マウントは再起動後も維持されるため、サーバーを再起動すると、ドライブは自動的に再びマウントされます。
storage2
これでディスクが追加されてマウントされたstorage1
ので、storage2
同様にディスクを作成する必要があります。コマンドはほとんど異なりません。の場合はfdisk
、上記と同じ手順に従います。
fdisk /dev/sdb
/sbin/mkfs.ext4 /dev/sdb1
mkdir /glusterfs2
/etc/fstab
次の行を編集して追加します。
/dev/vdb1 /glusterfs2 ext4 defaults 1 2
と同様にstorage1
、ドライブは再起動後に自動的にマウントされます。
ドライブをマウントします。
mount -a
最後に、パーティションが表示されるかどうかを確認します。
df -h
ドライブがここに表示されるはずです。表示されない場合は、上記の手順に従ってください。
storage1
とstorage2
次にGlusterFSをインストールする必要があります。リポジトリを追加してGlusterFSをインストールします。
rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
wget -P /etc/yum.repos.d http://download.gluster.org/pub/gluster/glusterfs/3.7/3.7.5/CentOS/glusterfs-epel.repo
yum -y install glusterfs glusterfs-fuse glusterfs-server
yum
リポジトリの署名が正しくないためにエラーが発生する可能性があります。その場合は、GPG署名をチェックしないように強制しても安全です。
yum -y install glusterfs glusterfs-fuse glusterfs-server --nogpgcheck
両方のサーバーで、次のコマンドを実行してGlusterFSを今すぐ起動し、再起動後に自動的に起動します。
systemctl enable glusterd.service
systemctl start glusterd.service
古いバージョンのCentOSを使用している場合は、service
およびchkconfig
コマンドを使用できます。
chkconfig glusterd on
service glusterd start
storage1
およびでファイアウォールを無効にするstorage2
それ自体は最善の解決策ではありませんが、ブロックされたポートとの競合の可能性を排除するために、ファイアウォールをオフにすることをお勧めします。これを行うことに抵抗がある場合は、自由にルールを変更してかまいませんが、GlusterFSの性質上、ファイアウォールを無効にすることを強くお勧めします。プライベートネットワークがVultrで実際にプライベートである(そして他の顧客をファイアウォールで保護する必要がない)と考えると、インターネットからのすべての着信トラフィックをブロックし、プライベートネットワークへの許可された接続を制限できます。ただし、ファイアウォールをオフにし、他のシステム構成を変更しないことでも十分です。
systemctl stop firewalld.service
systemctl disable firewalld.service
をサポートしていない古いCentOSバージョンを使用する場合systemctl
は、service
およびchkconfig
コマンドを使用します。
service firewalld stop
chkconfig firewalld off
を使用しない場合はfirewalld
、無効にしてみてくださいiptables
。
service iptables stop
chkconfig iptables off
ファイアウォールをオフにすると、両方のサーバーをストレージプールに追加できます。これは、使用可能なすべてのストレージで構成されるプールです。で次のコマンドを実行しますstorage1
。
gluster peer probe storage2
このコマンドの機能は、storage2
独自のストレージプールに追加することです。で次のコマンドを実行するとstorage2
、両方のドライブが同期します。
gluster peer probe storage1
両方のサーバーでこれを実行した後、両方のサーバーのステータスを確認する必要があります。
gluster peer status
両方のサーバーが「ピア:1」の状態を表示する必要があります。よくある間違いはPeers: 2
、を期待している人々ですが、同じstorage1
ようにピアリングするのstorage2
と同じように、自分自身をピアリングしません。したがって、Peers: 1
私たちが必要とするものです。
storage1
両方のサーバーがGlusterFSを介して相互に接続できるようになったので、共有ドライブを作成します。
でstorage1
、次を実行:
gluster volume create mailrep-volume replica 2 storage1:/glusterfs1/files storage2:/glusterfs2/files force
これでボリュームが作成されました。GlusterFSでは、ボリュームを「起動」して、複数のデバイス間でアクティブに共有する必要があります。それを始めましょう:
gluster volume start mailrep-volume
次に、ボリューム上にあり、両方のサーバー間で複製されるフォルダーを選択します。このチュートリアルでは、フォルダーを使用します/var/files
���も��ろん、これはあなたが好きなものにすることができます。それstorage1
だけで作成してください:
mkdir /var/files
次に、マウントします。
mount.glusterfs storage1:/mailrep-volume /var/files/
/etc/fstab
ドライブが起動時に自動的にマウントされるように更新します。以下を追加します。
storage1:/mailrep-volume /var/files glusterfs defaults,_netdev 0 0
ドライブを再マウントします。
mount -a
storage2
で共有ドライブを作成したので、共有ドライブもstorage1
作成する必要がありますstorage2
。同じ場所/パスと名前でフォルダを作成します。
mkdir /var/files
mount.glusterfs storage2:/mailrep-volume /var/files/
と同様にstorage1
、次の行をに追加します/etc/fstab
。
storage2:/mailrep-volume /var/files glusterfs defaults,_netdev 0 0
ドライブを再マウントします。
mount -a
/var/files
上のフォルダに移動storage1
して、ファイルを作成します。
cd /var/files
touch created_on_storage1
次に、storage2
サーバーに向かいます。実行するls -la
と、ファイルcreated_on_storage1
が表示されます。
でstorage2
、/var/files
フォルダに移動してファイルを作成します。
cd /var/files
touch created_on_storage2
に戻ってstorage1
実行しls -la /var/files
ます。created_on_storage2
ここにファイルが表示されるはずです。
再起動後も設定が維持されるかどうかを再確認するには、ベストプラクティスとして、すべてのサーバーを再起動する必要があります。前述のように、共有ドライブが自動的にマウントされるまで、一方のサーバーが起動するのを待ってから、もう一方を再起動する必要があります。
storage1
最初に再起動し、起動するのを待ってから再起動しstorage2
ます。次に、両方のサーバーにログインして実行します。
cd /var/files
ls -la
両方のファイルが表示されるはずです。ボリュームにファイルがない状態で開始するようにしてください。作成したテストファイルを削除してください。これはstorage1
、storage2
または両方で実行できます。変更は即座に複製されます:
cd /var/files
rm created_on_storage1
rm created_on_storage2
両方のボリュームでのアクションに関係なく、両方のサーバーで同一の共有ボリュームが必要です。
これで、100 GB(またはそれ以上)の使用可能なスペースを備えた本格的なGlusterFSセットアップがセットアップされました。将来さらに必要になる場合に備えて、セットアップは簡単に拡張可能であり、ワークロードでこれが必要になった場合に、より多くの容量やサーバーを追加できます。
読んでくれてありがとう!
GlusterFSでは、2つのドライブでデータを最新の状態に保つことができます。ただし、両方のサーバーが同時に再起動する場合は、両方のサーバーにドライブを強制マウントする必要があることに注意してください。次のコマンドを実行して、手動でマウントを強制する必要があります。
gluster volume start mailrep-volume force
これは、一方のサーバーがサーバーとして機能し、もう一方がクライアントとして機能するためです。違いは実際にはそれほど簡単にはわかりませんが、両方のサーバーを再起動する必要がある場合は、一方を再起動し、起動するまで待ってから、もう一方を起動する必要があります。
データが2つのドライブに複製される場合でも、データを少なくとも3回複製する必要があります。データはデータの破損などから保護されていますが、変更は瞬時に行われるため、人的エラーから保護されることは決してありません。1つのドライブ上のすべてのファイルを削除すると、これらの変更はすぐに他のドライブに複製されます。つまり、データは両方のインスタンスで消去されます。
幸いにも、これを回避するための複数のアプローチがあります。まず、クラウドインスタンス自体でバックアップを有効にすることをお勧めします。これらのバックアップにはブロックストレージ上のデータは含まれていませんが、インスタンス自体のデータは保護されます。
ブロックストレージ自体のデータをバックアップする場合は、たとえば、別のインスタンス(SATAプランなど)をスピンアップして、たとえば、接続されている2つのサーバーのいずれかから毎晩バックアップを実行できるようにすることをお勧めします。このようにして、データは別の別のデバイスで安全になります。
Vultrコントロールパネルからブロックストレージサイズを増やすことができます。その後、オペレーティングシステム内のディスクのサイズを変更する必要がありますが、それはこの記事の範囲外です。
このガイドは2台のサーバー(したがって、両方のサーバーに接続された2台のブロックストレージドライブ)向けに作成されていますが、このガイドを使用して、2台以上のサーバーにも使用できます。2台を超えるサーバー/ドライブを使用したセットアップは、6台のサーバーでは次のようになります。次に例を示します。
VM: storage1
VM: storage2
VM: storage3
VM: storage4
Block Storage: attached to storage1
Block Storage: attached to storage2
Block Storage: attached to storage3
Block Storage: attached to storage4
すべてのブロックストレージドライブの容量がたとえば200 GBだとすると、200 * 4/4になります。つまり、使用可能なスペースは常に単一のブロックストレージドライブの容量です。これは、ブロックストレージが接続された1つのサーバーがGlusterFSによって「マスター」として扱われ、他のサーバー間で複製されるためです。ただし、このセットアップは、マスターサーバーがなくても存続できるように構築されているため、冗長で信頼性が高く、安定したソリューションになります。
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。
CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。
サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。
CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。
Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。
CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。
WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。
FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。
Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。
ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。