03-6416-1579

平日 10:00-18:00

Red Hat Enterprise Linux に VM サーバをインストールする


VM サーバのインストール前提条件

  • HTTP Proxy の設定が必要な場合、HTTP Proxy の設定(環境変数)が予め行われていること。
  • HTTP Proxy の設定は以下のものを使用して説明しています。
    • HTTP_PROXY=http://proxy.example.com:3128/
    • HTTPS_PROXY=http://proxy.example.com:3128/
  • VM サーバから外部ネットワークに疎通ができること。

Proxy に関する環境変数の設定を確認する

Proxy 設定の必要が無い環境では、環境変数が無くとも問題ありません。また、NO_PROXY(no_proxy) も設定されていれば利用されます。

# env | grep -i proxy
HTTP_PROXY=http://proxy.example.com:3128/
https_proxy=http://proxy.example.com:3128/
http_proxy=http://proxy.example.com:3128/
HTTPS_PROXY=http://proxy.example.com:3128/

Docker をインストールする

上記以外の環境につきましては、Docker の公式サイト https://www.docker.com/ をご参照ください。

データベースのセットアップ

※ 以降は、データベース関連は以下のように設定されたことを前提に記載します。

  • データベース名称: dbname
  • データベースホスト名: 172.17.0.1
  • データベースサービスポート: 5432
  • データベースユーザ名: dbuser
  • データベースユーザパスワード: dbpass

docker0インタフェースのファイアウォール設定を変更

  1. root ユーザに昇格します。

    $ su -
  2. 以下のコマンドを実行し、docker の再起動を行います。

    # systemctl stop docker
    # firewall-cmd --zone=trusted --remove-interface=docker0
    # firewall-cmd --zone=trusted --remove-interface=docker0 --permanent
    # systemctl start docker

Docker コンテナのネットワークを変更する ※ 必要な場合のみ実施

172.18.0.0/16 のネットワークに変更を行う手順を示します。 172.18.0.0/16 以外に設定する場合は読み替えて実行してください。
  1. root ユーザに昇格します。

    $ su -
  2. docker を停止します。

    # systemctl stop docker
  3. docker のブリッジ (docker0) を削除します。

    # ip link set dev docker0 down
    # ip link del docker0
  4. ネットワークアドレスの設定を行います。

    # vi /etc/docker/daemon.json
    {
       "bip": "172.18.0.1/16", <-追加します
       "dns": [ "xxx.xxx.xxx.xxx"]
    }
  5. docker を起動します。

    # systemctl start docker

VM サーバの Docker イメージの読み込み

  1. インストール用のディレクトリを用意します。

    ここでは /var/lib/sidfm に作成します。もし他のディレクトリにインストールした場合は、以降の説明はインストールしたディレクトリで読み替えて下さい。

    # mkdir /var/lib/sidfm
    # cd /var/lib/sidfm
  2. ダウンロードページをブラウザで開きます。
  3. 「SIDfm VM サブスクリプション契約約款」および「ソフトウェア使用許諾契約」に同意し、チェックを入れたあと「ダウンロードページ」をクリックします。

  4. VM サーバのアーカイブファイルと sha256sum ファイルをダウンロードし、インストール用のディレクトリ(/var/lib/sidfm)に保存します。最新バージョンをダウンロードすることを推奨します。

  5. VM サーバのdockerイメージのアーカイブファイルと sha256sum ファイルをダウンロードし、インストール用のディレクトリ(/var/lib/sidfm)に保存します。4.でダウンロードしたバージョンと同じバージョンをダウンロードしてください。

  6. 以下のコマンドを実行し、4., 5.でダウンロードしたファイルの正当性チェックを行います。ファイル名のバージョン部分(説明では2.8.2)は実際にダウンロードしたもので読み替えて下さい。

    # sha256sum -c sha256sum-2.8.2
    sidfmvm-2.8.2.tar.gz: OK
    # sha256sum -c sha256sum-image-2.8.2
    sidfmvm-image-2.8.2.tar.gz: OK
  7. 4.でダウンロードしたファイルを展開します。ファイル名のバージョン部分(説明では2.8.2)は実際にダウンロードしたもので読み替えて下さい。

    # tar xzf sidfmvm-2.8.2.tar.gz
  8. 5.でダウンロードしたdockerイメージを読み込みます。バージョン部分(説明では2.8.2)は実際にダウンロードしたもので読み替えて下さい。

    # gzip -dc sidfmvm-image-2.8.2.tar.gz | docker load
    # docker tag sidfmd:2.8.2 sidfmd:latest

VM サーバを起動する

  1. VM サーバのコンテナを起動します。

    # cd /var/lib/sidfm/sidfmvm
    # sh ./sidfmd-start.sh
  2. VM サーバの Proxy 設定を行います。

    ※ ここでは Proxy サーバのホスト名とポート番号を proxy.example.com:3128 としています。実際に設定する際には適切な値を設定してください。

    # docker exec sidfmd /proxy_manage set_http_proxy proxy.example.com 3128
    # docker exec sidfmd /proxy_manage same_http_https enable
    # docker exec sidfmd /proxy_manage proxy enable

    Proxy サーバを必要としない環境の場合、以下のコマンドを実行してください。

    # docker exec sidfmd /proxy_manage proxy disable
  3. VM サーバが利用するデータベースの設定及び初期化を行います。

    ※ ここではデータベース関連は以下のように設定されたことを前提に記載します。

    • データベース名称: dbname
    • データベースホスト名: 172.17.0.1
    • データベースサービスポート: 5432
    • データベースユーザ名: dbuser
    • データベースユーザパスワード: dbpass

    なお、VMサーバの再インストールやサーバの移行等で、既に存在しているVMサーバ用のデータベースを利用する場合、2番目の/db_manage initは実行しないようご注意下さい。データベースの初期化が行われ、既に登録されているデータが上書きされます。

    # docker exec sidfmd /db_manage config dbname 172.17.0.1 5432 dbuser dbpass
    success
    # docker exec sidfmd /db_manage init
    (省略)
    # docker exec sidfmd /db_manage test
    success
  4. メールサーバの設定を行います。

    [ログイン認証の無い通常の SMTP サーバを設定する場合]

    ログイン認証の無い SMTP サーバを設定する場合、VM サーバをインストールしたサーバ上で以下のコマンドを実行します。

    # docker exec sidfmd /mail_manage noauth smtp.example.com 25 example.com
    success
    # docker exec sidfmd /vm_manage server disable
    # sleep 5
    # docker exec sidfmd /vm_manage server enable
    引数の説明
     noauth: ログイン認証の無いSMTPサーバを設定することを示すキーワード
     smtp.example.com: SMTPサーバのホスト名
     25: SMTP サーバのポート番号(25, 463, 587等が利用されます)
     example.com: メールを送信する際のドメイン名
    [ログイン認証のある SMTP サーバを設定する場合]

    ログイン認証のある SMTP サーバを設定する場合、VM サーバをインストールしたサーバ上で以下のコマンドを実行します。斜体の部分は適宜変更してください。

    # docker exec sidfmd /mail_manage auth smtp.example.com 587 example.com account password (Amazon SES 以外の場合、基本的にはこちらを入力してください)
    # docker exec sidfmd /mail_manage auth smtp.example.com 587 example.com account password starttls (Amazon SES や上記の設定でうまくメールが送信できなかった場合はこちらを入力してください)
    success
    # docker exec sidfmd /vm_manage server disable
    # sleep 5
    # docker exec sidfmd /vm_manage server enable
    引数の説明
     auth: ログイン認証のある SMTP サーバを設定することを示すキーワード
     smtp.example.com: SMTP サーバのホスト名
     587: SMTP サーバのポート番号(25, 463, 587等が利用されます)
     example.com: メールを送信する際のドメイン名
     account: ログイン認証のアカウント名
     password: ログイン認証のパスワード
     starttls: Amazon SES等で必要なオプションを追加する設定
    [上記以外の SMTP サーバを設定する場合]

    前述の設定に適合しない SMTP サーバを設定する場合は、直接設定ファイルの編集をお願いします。
    編集の際には、「メール通知のための configuration.yml の設定」や、設定ファイルと同じディレクトリに存在する設定サンプル configuration.yml.example ファイルをご参照下さい。

    設定ファイルは以下の手順で編集してください。

    1. VM サーバのコンテナにログインします
      # docker exec -it sidfmd /bin/bash
    2. 設定ファイルのあるディレクトリに移動します
      # cd /var/lib/redmine/config
    3. 設定サンプルをコピーします
      # cp configuration.yml.example configuration.yml
    4. 設定ファイルを編集します
      # vi configuration.yml
    5. 設定を反映します
      # cd ..
      # passenger-config restart-app /var/lib/redmine
    6. VM サーバのコンテナからログアウトします
      # exit
  5. 管理アカウントsidfmadmのパスワードを変更します。

    # docker exec sidfmd /user_manage password sidfmadm (設定するパスワード)

    正常にパスワード変更された場合は「sidfmadm's password is updated.」と出力されます。
    これ以外のメッセージが出力された場合は、パスワードポリシーに適合していない(ログイン名と同一のパスワード等)可能性がありますので、別のパスワードを指定下さい。

  6. VM サーバを起動します。

    # docker exec sidfmd /vm_manage server enable
    # docker exec sidfmd /vm_manage issue_update enable
  7. VM サーバへ加えた変更を反映します。

    # docker commit sidfmd sidfmd

VM サーバのインストール後に行う作業

VM サーバのインストール作業が終わりましたら、VM にログインし、ライセンスキーの登録を行います。