Bitbucket Server を AWS で手動で起動する
このページでは、Bitbucket の Amazon Machine Image (AMI) を手動で起動する方法について説明します。AMI で有効化されるコンポーネント、AWS 固有の構成、ネットワークおよびセキュリティ設定を完全に制御できます。Bitbucket を自動的に起動するための自動化された方法をお探しの場合、「AWS クイックスタート ガイド」を使用して複数ノードの Bitbucket Data Center インスタンスをデプロイすることをおすすめします。
Atlassian Bitbucket Server AMI を AWS コンソールで直接起動することも、EC2 起動ウィザードを実行して起動することもできます。詳細な手順については「EC2 インスタンスの起動」をご参照ください。
このページの内容
Atlassian Bitbucket Server AMI を見つける
Atlassian Bitbucket Server AMI は、[Community AMIs] をクリックして「Atlassian Bitbucket」を検索することで見つけることができます。
ご利用のリージョンに適切な AMI ID を使用するようにします。
Amazon CLI で最新の AMI を見つけるには、次のコマンドを使用できます。
aws ec2 describe-images --owners 098706035825 --filters "Name=name,Values=Atlassian Bitbucket*" --query 'sort_by(Images, &CreationDate)[-1].{ID:ImageId, "AMI Name":Name}' --output table
The Bitbucket AMI is not currently available in some regions, such as
govcloud-us
(AWS GovCloud (US)) and cn-north-1
(China (Beijing)).
インスタンス タイプの選択
EC2 インスタンス タイプを選択する際、インスタンス サイズの詳細について「Bitbucket を AWS で実行する場合の推奨事項」をご参照ください。
ハードウェアの最小要件
既定の t2.micro (無料利用枠)、small、および medium インスタンス タイプは Bitbucket Server の最小ハードウェア要件に適合しておらず、本番環境での使用はサポートされません。Bitbucket Server でサポートされる EC2 インスタンス タイプについては「Bitbucket を AWS で実行する場合の推奨事項」をご参照ください。
インスタンスの詳細情報の構成
EC2 インスタンスの構成時には、いくつかの重要な詳細設定を考慮する必要があります。
Identity and Access Management (IAM) ロール
明示的な資格情報を必要とせずにネイティブな AWS DIY Backup を実行できる IAM ロールでインスタンスを起動することをおすすめします。詳細については「Amazon EC2 の IAM ロール」をご参照ください。
From Step 3: Configure Instance Details of the EC2 Launch wizard, you can create a new IAM Role by clicking Create new IAM role. The role should contain at least the following policy:
{
"Statement": [
{
"Resource": [
"*"
],
"Action": [
"ec2:AttachVolume",
"ec2:CreateSnapshot",
"ec2:CreateTags",
"ec2:CreateVolume",
"ec2:DescribeSnapshots",
"ec2:DescribeVolumes",
"ec2:DetachVolume"
],
"Effect": "Allow"
}
],
"Version": "2012-10-17"
}
IAM ロールは起動時に構成されている必要があります
An IAM Role can only be configured for your EC2 instance during initial launch. You can't associate an IAM role with a running EC2 instance after launch. See IAM Roles for more information.
高度な設定
Atlassian Bitbucket Server AMI は起動時にさまざまなな方法で構成できます。
- 組み込みの PostgreSQL および Nginx コンポーネント (既定で有効) を無効化できます
- 自己署名の SSL 証明書の生成 (既定で無効) を有効化できます
これらのオプションは、EC2 起動ウィザードの [Step 3: Configure Instance Details] の [Advanced Details] でインスタンスにユーザー データを提供することで制御できます。Atlassian Bitbucket Server AMI で構成可能なすべての挙動を、シェル変数の定義を含むファイル /etc/atl
を作成することで制御できます。初回起動時に、Atlassian Bitbucket Server AMI はファイル /etc/atl
を確認します (存在する場合)、これにより、組み込みの既定の変数定義をオーバーライドできます。
たとえば、自己署名の SSL 証明書の生成を有効化し、Bitbucket Server へのすべての web アクセスで HTTPS を使用するように強制したい場合、ユーザー データ (テキスト形式) を次のように追加できます。
#!/bin/bash
echo "ATL_SSL_SELF_CERT_ENABLED=true" >>/etc/atl
起動時にユーザー データでオーバーライド可能な変数の完全な一覧については、「Bitbucket Server インスタンスの起動」をご参照ください。
ユーザー データは柔軟であり、ユーザーは /etc/atl
での変数のオーバーライドに加えて、起動時にインスタンスで任意の BASH コマンドを実行できます。詳細については「Linux インスタンスで起動時にコマンドを実行する」をご参照ください。
セキュリティに関する考慮事項
Atlassian Bitbucket Server AMI での HTTPS および自己署名証明書の有効化の詳細については「AWS での Bitbucket の保護」をご参照ください。
ストレージの追加
EBS ボリュームを追加する際、インスタンスで次のストレージ デバイス設定を使用できます。
タイプ | デバイス | 目的 | サイズ (GiB) | ボリューム タイプ | IOPS | 終了時の削除有無 |
---|---|---|---|---|---|---|
ルート | /dev/xvda | Linux のルート ボリューム | 50 | 汎用 (SSD) | N/A | はい |
EBS | /dev/xvdf | Bitbucket Server データ: リポジトリ、添付ファイル、アバターなど | 100+ | 汎用 (SSD) / プロビジョンド IOPS * | 300+ * | はい |
インスタンス ストア | /dev/xvdb | Bitbucket Server の一時ファイルおよびキャッシュ | N/A | N/A | N/A | N/A |
* 最小 500 ~ 1000 の IOPS を実現するプロビジョンド IOPS は、500 以上のアクティブ ユーザーを持つインスタンスで推奨されます。詳細については「Bitbucket を AWS で実行する場合の考慮事項」をご参照ください。
Atlassian Bitbucket Server AMI は、インスタンスに添付されている他のブロック デバイスは使用しません。/dev/xvdf
用の EBS ボリュームは、スナップショット id が提供されている場合を除き、起動時に初期化およびフォーマットされます (上述のスクリーンショットをご参照ください)。スナップショット id が提供されている場合、未フォーマットのときにのみフォーマットが実行されます。Amazon EC2 のストレージ オプションの詳細については「EBS ボリュームの管理」をご参照ください。
既存の EBS スナップショットの添付
You can also attach an existing EBS volume based on a snapshot during launch. To attach an existing EBS volume, within the Device field, change the EBS volume device to /dev/sdf
and enter the Snapshot ID of the snapshot.
詳細については「Bitbucket Data Center を AWS で管理する - Bitbucket Server データ ボリュームをインスタンス間で移動する」をご参照ください。
セキュリティ グループの構成
セキュリティ グループを構成するときに、次のすべてのポートへの受信トラフィックを許可する必要があります。詳細については「セキュリティ グループの使用」をご参照ください。
タイプ | プロトコル | ポート | 説明 |
---|---|---|---|
ssh | TCP | 22 | SSH ポート、管理機能へのアクセスを許可 |
http | TCP | 80 | |
HTTPS | TCP | 443 | |
Custom TCP Rule | TCP | 7999 | Git ホスティング操作のための Bitbucket Server の SSH ポート |
次のステップ
これで、Bitbucket Server で AWS バージョンの構成を行う準備ができました。
新しいインスタンスの確認
新しい EC2 インスタンスが起動したら、それを EC2 コンソールで見つけて提供された URL に移動し、Bitbucket Server の以降の構成を行います。
新しい EC2 インスタンスの URL を見つける方法
- EC2 コンソールの新しいインスタンスの [Description] タブで、Public DNS をコピーします。
- URL をブラウザ ウィンドウにコピーして Bitbucket Server の使用を開始します。
Set up your AWS instance of Bitbucket Server
EC2 インスタンスの URL にアクセスすると、Bitbucket Server Setup Wizard が表示されます。セットアップを完了したら、他の Bitbucket Server インスタンスと同じようにインスタンスの使用を開始できます。「Bitbucket Server の使用を開始する」の残りのドキュメントをぜひご確認ください。