【Drupal】ConoHa VPSにKusanagi9でサクッとDrupalを構築する

Kusanagi9
sinceretechnology

 

 

 

はじめに

 

ここでは、ConoHa VPSに用意されているKusanagi9(CENTOS9)を利用してDrupalを構築します。

「KUSANAGI」とは、プライム・ストラテジー社が提供するパッケージサービスで、Webシステムを高速に処理できるように最適化されたサーバー環境です。

KUSANAGIは、仮想サーバーイメージまたはDockerコンテナイメージとして提供されています。

利用可能なプラットフォームは、アマゾンAWSやMicrosoft Azureはじめ世界37カ国203リージョン、国内外の主要な28プラットフォームで利用することができます。

ここでは、Kusanagiを使うメリットと、Kusanagiを利用してDrupalを素早く構築する方法をご紹介します。

メモ程度ですがよろしければ参考にしてください。

 

 

 

Kusanagiとは

 

超高速CMS実行環境「KUSANAGI」は、プライム・ストラテジーが開発・提供する、WordPressをはじめとするCMSを高速・セキュアに動かすための、リナックスベースの「構成(チューニング)済みサーバOS」(仮想マシンイメージ)です。

KUSANAGI導入により、パフォーマンス・セキュリティが向上しユーザーエクスペリエンスが改善することで検索順位が上がりやすくなります。KUSANAGI導入でウェブサイトの常時SSLを簡単に設定することが可能です。また、Kusanagiは国内外を問わず主要なプラットフォームで使用されており、実績があります。

 

 

 

 

Kusanagiが使われる理由

 

Kusanagiが使われる理由は、高速性、高度なセキュリティ、利便性の三点に集約されます。

 

引用元:KUSANAGIとは

 

 

 

高速化の実現

 

  • ミドルウェアが高速・セキュアに動作するように、パラメータをチューニング済
  • HTP/3 および HTTP/2 にデフォルトで対応
  • Nginxを利用したページキャッシュ機能 (fcache)
  • WordPress向け高速化機能(KUSANAGI専用プラグイン)
    • WordPress向けページキャッシュ機能 (bcache)
    • 翻訳アクセラレーター
    • テーマアクセラレーター

 

KUSANAGI Stackによるさらなる高速化

KUSANAGI StackはKUSANAGI を中心とするWeb高速化ソリューションです。超高速CMS実行環境「KUSANAGI」、高速化エンジン「WEXAL® Page Speed Technology®」、戦略AI「ONIMARU® David」をあわせてご利用いただくことでブラウザからのHTTPリクエスト、サーバでの動的処理、HTTPレスポンス、レンダリングといったWeb表示のすべてのステップで高速化が実現します。

 

WEXAL® Page Speed Technology®

「WEXAL® Page Speed Technology®」と戦略AI「ONIMARU® David」はKUSANAGIのPremium Editionに搭載されています。

 

 

 

高度なセキュリティ対策

 

企業や大学などエンタープライズWebシステムにおいて利用されることを想定し、ビジネスに必須とされるセキュリティ機能が標準で実装されています。開発元が最新版ミドルウェアのアップデートを配信していますので、テスト済みのアップデートをすぐに適用することができます。

  • 最新版ミドルウェアをKUSANAGIのリポジトリより提供
  • WAF
  • SELinux対応
  • TLS 1.3対応
  • TLS 1.1以下の無効化
  • DoS攻撃対策
  • WordPress向けセキュリティ機能(KUSANAGI専用プラグイン)
    • WordPress自動アップデート機能
    • セキュリティ状況の表示

 

 

 

利便性の追求

 

すべてのプラットフォーム同じ環境を実現

 

KUSANAGIはすべての提供プラットフォームで同じ構成で利用いただけます。
対応するクラウドプラットフォーム、OS、バージョンで統一した運用を行えるコマンドを提供しています。

マルチクラウドなどさまざまな拡張した運用が可能です。

 

KUSANAGIを利用できるプラットフォーム

世界37カ国203リージョン、国内外の主要な28プラットフォームでご利用可能です(2024年9月現在)。 累計稼働台数は90,000台を超えています(2024年7月現在)。

KUSANAGI 9を利用できるプラットフォーム

※ 利用可能なプラットフォームの一覧はこの記事の最後に記載しています。

 

 

豊富なKUSANAGIコマンドによる環境設定の簡略化を実現

 

OSやミドルウェアなどを自由に組み合わせて、ご自身のサイトの仕様に合わせた環境を作ることができます。WordPress以外のサイトを運用している場合もKUSANAGIに統一して運用することができます。

  • CentOS Stream 9, AlmaLinux OS 8 / 9
  • Nginx / Apache
  • MariaDB / PostgreSQL
  • PHP Version
  • アプリケーション
    • WordPress
    • LAMP / LEMP
    • Movable Type 7 / 8
    • Drupal 9 / 10

KUSANAGIの標準機能
KUSANAGIの仮想マシン構成

 

 

 

事前準備

 

Conoha VPSの管理画面にログインして、Kusanagi(CENTOS)のアプリケーションイメージからインスタンスを作成します。

ConoHaVPSご利用ガイド KUSANAGIを使う

 

また、公開するドメインはあらかじめDNSサーバーに登録しておく必要があります(Aレコードの作成)

 

 

 

KUSANAGIの初期設定

 

OSの環境設定やウェブサーバー、PHPやデータベースの設定またはインストールを行います。

※ Kusanagiではプロビジョニングを実施することで複数の環境とドキュメントルートを構築できます。しかし、環境ごとにデータベースやPHPのバージョンを変更することはできません。

#初期化 
kusanagi init --tz Asia/Tokyo --lang ja --keyboard en --passwd ${kusanagipass} --nophrase --dbrootpass ${dbrootpass} --mariadb10.5 --httpd24 --php81

 

 

KUSANAGIプロビジョニングの実施

 

KUSANAGIはサーバー内に複数の環境を構築することができます。指定されたドキュメントルートに環境を構築して、NGINXまたはAPACHEの設定ファイルにFQDN(ドメイン)情報を追加します

kusanagi provision --lamp --dbname=${dbname} --dbuser=${dbuser} --dbpass=${dbpass} --email=${email} --fqdn ${FQDN}  ${provname}

正しくプロビジョニングが完了すれば、プロファイル名でフォルダが作成されていますので、対象フォルダに移動します

#プロビジョニングフォルダに移動 cd ./${provname}

 

 

ComposerでDrupalプロジェクトの作成

 

composerでdrupalプロジェクトを作成します。この時点ではまだDrupalはインストールされていませんがフォルダが作成され必要なインストールファイルがフォルダに準備されています。

mkdir ${proj} && cd ${proj} && composer create-project drupal/recommended-project:${drupalver} tmp && cp -r tmp/. . && rm -rf tmp 

 

 

ComposerでDrushのインストール

 

DrushとはコマンドラインからDrupalを操作することができる便利なツールです。

Drupalのインストールは画面から対話形式ですることも可能ですが、Drupalを自動でインストールするためにまずはDrushをインストールします

DrushのインストールはComposerで行います

composer require drush/drush

 

 

Drushランチャーのインストール

 

drushモジュールはvendorフォルダに格納されていますが、drushをコマンドで実行できるようにするためにはランチャーのインストールが必要です。

 

 

スクリプトをインストール

 

wget -O drush.phar https://github.com/drush-ops/drush-launcher/releases/latest/download/drush.phar

 

 

権限の設定及びスクリプトをフォルダ移動

 

sudo chmod +x drush.phar sudo mv drush.phar /usr/local/bin/drush -f

 

 

DrushでDrupalのインストールと設定

 

Drushコマンドが実行できることを確認して、いよいよDrupalをインストールします。以下のDrushコマンドでワンラインで完了します

drush site:install -y --db-url=mysql://${dbuser}:${dbpass}@localhost:3306/${dbname} --account-name=${adminuser} --account-pass=${adminpass}

 

 

Apache設定ファイルの変更

 

Drupal用にドキュメントルートを変更する必要があります。対象のファイルを別ファイル名にコピーして、ドキュメントルートのパスを一括変更します。

sudo cp /etc/opt/kusanagi/httpd/conf.d/${provname}.conf /etc/opt/kusanagi/httpd/conf.d/${provname}.conf.bak.for-ssl-update sudo sed -i -e "s/\/DocumentRoot/\/${proj}\/web/g" /etc/opt/kusanagi/httpd/conf.d/${provname}.conf  

 

 

サーバー反映と確認

 

変更した内容がサーバーに反映されるようにリセットします。Kusanagiの場合は下記のコマンドで可能です。

kusanagi restart

最後に、ブラウザから対象のサーバーにアクセスしてDrupalの初期画面が表示されていることを確認します。

 

 

 

さいごに

 

KusanagiといえばWordPress用にチューンアップされているイメージが強いですが、パフォーマンスやセキュリティ面だけでなくCLIで簡単に各種設定ができるため効率よく仕事をすることができます。

仕事でKusanagiを利用する場合は有償になってしまうのですが、開発者向けにはKusanagiのすべての機能が使えるKusanagiディベロッパーライセンスがあるようです。Kusanagiを試してみたい方はまずは個人向けの無償版で試してみると良いと思います。

 

エディションとアップグレード

 

 

スクリプトをこちらにアップしています。よろしければ参考にしてください。

https://github.com/matubara/VPS-KUSANAGI9-DRUPAL/tree/main/20241005

 

 

 

参考

 

 

ご利用可能なプラットフォーム

 

KUSANAGIは世界37カ国203リージョン、国内外の主要な28プラットフォームでご利用可能です。

 

CentOS Stream / AlmaLinux OS ベースの「KUSANAGI 9」とCentOS 7ベースの「KUSANAGI 8」を提供しています。
各バージョンごとに利用できるプラットフォームについては以下をご覧ください。

 

KUSANAGI 9 / KUSANAGI 8を利用可能なクラウド / ソフトウェア

 

ソフトウェア

KUSANAGI Runs on Docker
KUSANAGI for VMware
KUSANAGI for Vagrant

 

ホスティングサービス

KAGOYA JAPAN WordPress専用サーバー
WordPress最適化サーバー HAYABUSA

 

レンタルサーバー

エックスサーバー
wpXシン・レンタルサーバー
wpX Speed

 

引用元URL

https://kusanagi.tokyo/cloud/

 

タグ

この記事に関するご質問やご意見などございましたらお問い合わせフォームからお気軽にご連絡ください。