私は次のことができるようにしたいです。
- 手動介入なしで最短時間内に必要に応じて構成されたUnixサーバーを起動します。
- 定期的にスクリプトを実行して、構成の変更が完了したことを確認し、誤った設定を変更することをお勧めします(たとえば、更新中に構成ファイルが置き換えられることがあるため)。
これを達成するには、どのスキルを選択する必要がありますか? (特定のソフトウェア推奨事項について議論する前に、これを行うさまざまな基本的な方法を理解してください。)
これは私が手動で行うことです(VirtualBoxからローカルに、またはVPSからリモートで)。角かっこは例の一部にすぎません。
- 設定ポイント(
visudo, adduser
) - パッケージのインストール(
sshd, php, nginx, mysql, ufw
) - インストールスクリプトの実行(
mysql_secure_installation
) - 構成コマンドの実行(
ufw allow
) - 構成ファイルの編集(
php.ini, sshd_config
) - データベースの入力(
cat db.sql | mysql
) - nginxネットワークファイルを埋める(
rsync local remote:
) - nginxを起動
今日の設定ファイルを確認する場合は、手動で確認する以外に良い戦略がないので、本当に難しいです。
Puppetなどについて聞いたことがありますが、正直なところ、その構文は少し恐れています。スキルを決めて学ぶのに時間を費やす前に、私はオプションを完全に見るのが好きです。
ベストアンサー1
あなたが探しているのはServer Farmer(http://serverfarmer.org/) - Ansibleに似たアーキテクチャを持っていますが、もっとシンプルでほとんどBashで書かれています。
すべての主要クラウドプラットフォーム(AWS、Azure、Google Cloud、Hetzner、Alibaba Cloud、e24cloud、Rackspace、およびOpenStackベースのハイブリッドクラウド)から新しいインスタンスを作成することから、ネイティブホスト構成を介してアプリケーションプログラムをデプロイするまでのLinuxインスタンスのライフサイクル全体を処理します。 。
唯一の例外は、ファイアウォールの場合は.NETの代わりにiptablesを直接使用することですufw
。
次の2つのリポジトリをフォークして設定を調整することで起動できます。
- https://github.com/serverfarmer/serverfarmer- scripts/functions.customファイルを見る
- https://github.com/serverfarmer/sf-keys- すべてのファイルを見る