技術とか戦略とか

IT技術者が技術や戦略について書くブログです。

CDツールを使わない場合のデプロイ手順のイメージ

現在の開発現場・運用現場では、CD(Continuous Delivery)ツールを使用したデプロイ(サーバーへの資材配置)が一般的になっています。
CDツールの設定を行うのは一部の技術者のみであることもあり、CDツールを使用しない場合の原始的な手順でのデプロイ手順は、経験の浅い技術者にはイメージしにくいものであると感じています。
 
そこで、この記事では、CDツールを使用しない場合のデプロイ手順のイメージを書いていきます。
デプロイ手順を知ることで、CDツールを使う理由やそのありがたさを理解しやすくなると思います。
 
----
 
開発した機能を本番サービスに反映させるためには、開発環境で開発を行った資材(プログラムの実行モジュールやスクリプト、設定ファイル等)を商用環境に配置する必要があります。
配置を行うためには、最低限下記の作業が必要になります。
(コマンドのイメージも併記します)
 
1.商用環境のサーバーへのログイン
ターミナルでxxxサーバーにログイン(IPアドレス、ユーザー名、パスワードを入力)

2.ファイル共有サーバーからの資材取得
#> ftp xxx.xxx.xxx.xxx
#> username
#> password
#> get xxx.tar
#> bye

3.資材(圧縮ファイル)の解凍
#> tar xvf xxx.tar

4.解凍後の資材の配置
#> cp -rp xxx yyy
 
上記の作業を行うだけでも、コマンドの誤り・漏れによる作業ミスの可能性がありますし、入るサーバーを間違えてしまうことすらあります。
作業を引き継ぐことにも困難さを伴い、作業手順書のようなものが必要になります。
 
加えて、下記のような作業を伴うことも多く、実際の手順はより複雑になります。
・デプロイ時のサービス停止や機能制限、それに伴う設定変更
 (サーバー毎に設定が異なることも多い)
・デプロイ前のバックアップ取得
・デプロイ後の定型的な確認作業
 
----
 
作業ミスを防いだり引継ぎを容易にしたりする上で、CDツールの利用が有効になります。
CDツールでは、コマンドや設定を登録し、複数のサーバーに対して画面からGUIベースで作業することができるようになります。
 
イメージとしては以下のようなものになります。
(以下は、CircleCIのチュートリアルの一部です)
 
Hello World - CircleCI
https://circleci.com/docs/ja/hello-world/