カテゴリー別アーカイブ: インフラ

GPTテーブルと Raid1 mdデバイスの復旧

はじめに

 インフラ担当者として障害発生は恐ろしいものですが切り離せないものでもあります。
 今回、2台のHDDでソフトウェアRAID md0(/boot用)とmd1(/用)として構成したmdデバイス上にインストールしたCentOS6で、2台目のHDD sdbが故障したため、sdbを新しいものに交換してCentOS6を起動した、というところからの復旧について紹介します。

続きを読む

AmazonLinux2でLet’s Encryptサーバー証明書をインストールする

はじめに

 サーバー証明書を無料で発行してくれるということでStartSSL(StartCom運営)を利用していましたが、不正な証明書を発行した、ということで信用を失ってしまったようです。主要ブラウザーで警告が表示されるようになってしまう、ということで、他の無料サービスであるLet’s Encryptでサーバー証明書を取得してみました。
SSH秘密鍵を生成してCSRを作成して…といった従来の手順とは異なり、サーバー実在証明のためにWebサーバーを起動しておく必要があるなど手順が少し複雑なのでまとめておきます。

(参照) Help with certbot on the new “Amazon Linux 2”

続きを読む

スワップ領域をOS起動後に増設にする

はじめに

 AmazonLinuxをはじめ、モダンなVPCはストレージIO負荷を下げるためスワップ領域を予めアタッチしない構成が増えてきています。しかし、一時的なメインメモリの使用のために、サービス用のメモリを圧迫してしまうのも本末転倒(そういったスパイクな負荷を起こす処理は他のインスタンスなりに分離しろ、という意見はここでは横に置かせて頂きます)。
 EC2上のAmazonLinuxでもローカルPC上のVirtualBox上のLinuxでも同様の手順でスワップ領域をオンラインにしたりオフラインにしたりできますので紹介します。

続きを読む

CentOS7にRedmineをインストールする

はじめに

 今回、WebサーバーにNginxを、アプリケーションサーバーにunicorn(+ Ruby on Rails + Redmine)を、データベースサーバーにMariaDBをそれぞれ採用して、CentOS7のインストールイメージminimalを使って構築したいと思います。
 なお、アプリケーションサーバーの部分についてはWebサーバーやデータベースサーバーと同様に、systemctlコマンドで起動や停止ができるようにします。

続きを読む

partedコマンドでパーティション管理

はじめに

 AWS EC2インスタンス(Amazon Linux)に、新しいEBS(ストレージデバイス)を追加して、これをフォーマットする手順を紹介します。
 これまでパーティションを操作するコマンドとしてfdiskコマンドが主流でしたが、ストレージ容量の巨大化、EFIBIOSへの対応などの流れからpartedコマンドが主流になっています。

続きを読む

mailコマンドやPerl、Pythonに頼らずにBashだけで添付ファイル付きメールを送信する

はじめに

 AmazonLinuxで新しいホストを構築していると、メール送信テストなどでメールを送信しようとしたときにmailコマンドがデフォルトで使えませんでした。この際依存をsendmailコマンドだけにしてみましたので紹介します。

続きを読む

PostfixAdminでログイン後画面に遷移しない場合

はじめに

 PostfixAdminの管理画面にログインするとき、IDとパスワードは間違いなく合っているのにログイン後画面が表示されず、再びログイン前画面が表示されてしまうような現象に遭遇しました。

続きを読む

AWS EC2 の Ubuntu OS での初歩的なハマりどころ

はじめに

 私はこれまで、AWS EC2 では Amazon Linux しか使ったことがありませんでした。Ubuntu を使い始めて初歩的なところでつまづいた点をメモしておきます。

続きを読む

Nginx に uWSGI + Django アプリ を組み込む

はじめに

 Django アプリを uWSGI でサービスとして起動して、Nginx でアクセスできるようにする手順をまとめました。
 Nginx のインストールはこちらの投稿を、Python の venv 環境を構築できるようにする手順はこちらの投稿を参照してください。
 なお、Linux ユーザーはホストの設定を操作する、wheel グループに属するユーザー user1 と、Webアプリケーションを管理する、nginx グループに属するユーザー webmaster の 2 つのアカウントを切り替えながら作業を進めます。これらのユーザーは下記コマンドで登録済みであるものとします。
 ホスト管理者 (user1) の領分と、アプリケーション管理者 (webmaster) の領分について、私なりの切り替え方が参考になれば幸いです。

[root]# useradd user1 -G wheel
[root]# useradd webmaster -g nginx
続きを読む

DTI VPS 初期設定

はじめに

 DTI VPS の初期設定では、root アカウントにパスワードでリモートログインできるため、下記 3 点をセキュリティ対策として実施したいと思います。

  • リモートログインができる作業用の一般ユーザーを作成して、パスワードではなく SSH Key を使ったログインにする
  • root でのリモートログインを禁止する
  • SSHサーバーのポート番号を変更する
続きを読む