2024年4月13日土曜日

EC2とEFSの検証

やりたいこと:

AWS EC2とEFSサービスの組み合わせで、Apacheのコンテンツを参照できるようにしたい。


利用環境:

①OS: Debian Linux

②EC2(t2.micro)

③Apache2

④EFS(AWSのストレージサービス)



実施済み:

1)EFSツールのインストール

2)EC2内でEFS(/efs)のマウントを行っていること

  ->マウント方法やツールのインストール方法は割愛

3)EFS内に。簡単なコンテンツを作成する


条件:

apache2については、バーチャルホスト無しで実施をする



🔸手順

実施してみる(apache2.confの編集):


DocumentRootの記載を行う














以下、アクセス許可の記載を行う







結構重要:

バーチャルホストの記載が不要なので、コメント化する



















DocumentRootの設定を確認

コマンド: sudo apache2ctl -S









EFSにマウント実施







EFS配下にテストファイルを作成













簡単に、アクセス確認すると。。






2024年3月31日日曜日

Fargate(コンテナのログイン方法について)

Fargateで稼働しているコンテナは、SSMサービスを利用して

ログインすることができる。

ハマってしまったので、備忘録を記載。




ECSのタスクロール用のポリシーを作成:













新たにロールを作成:

①ユースケースの検索窓に「Elastic Container Service」を入力後、「Elastic Container Service Task」を選択

②許可ポリシーに上記で作ったポリシーを指定する



タスク定義の更新を行う:

以下のタスクロールの追加を忘れずに!!














作成済みのサービスの停止 > サービスの再作成を行う

  ->これを行わないと以下のエラーになるので、注意!!




🔸SSMのインストール:

インストール手順①

curl "https://s3.amazonaws.com/session-manager-downloads/plugin/latest/mac/sessionmanager-bundle.zip" -o "sessionmanager-bundle.zip"


インストール手順②

unzip sessionmanager-bundle.zip


インストール手順③

sudo ./sessionmanager-bundle/install -i /usr/local/sessionmanagerplugin -b /usr/local/bin/session-manager-plugin


重要:

cloudshellの場合、再起動を行うこと!!(コマンドが有効化されないようなので)


以下、実施する;

session-manager-plugin


注意:

タイミングで、以下のエラーが出てしまいハマることがあった(Cloud Shellの場合)

     ->何回か、CloudShellの再起動したり、ECSサービスの再起動など(新しいデプロイの強制などの操作を含め)

   を行いやっと改善したりでハマりやすい!

-bash: /usr/local/bin/session-manager-plugin: cannot execute binary file: Exec format error





ECSExecを有効化:

aws ecs update-service --region ap-northeast-1 --cluster クラスタ名 --service サービス名 --enable-execute-command




以下、サービスの更新を行う(多分。実施した方がよい手順)













以下、新しいデプロイの強制にする(多分。実施した方がよい手順)




コンテナにログインする:

aws ecs execute-command --cluster クラスタ名 --container コンテナ名 --task タスクID --command "/bin/sh" --interactive




以下、コンテナにログインした様子(2)







2023年10月1日日曜日

Metallb

参照先:
https://metallb.universe.tf/installation/



導入方法は、ArgoCD経由でHelmを使った方法にする。(以下、導入イメージ)











 





以前に記載したconfigをデプロイすると、IPの割り当てが出来ていなく
調べていたら、L2Advertisementの記載が別途必要になったようだ。。



Lambda + SSM Run Commandで、数十台のEC2のuserdata結果を一括確認する

コードを1枚貼って、テストイベントを実行するだけで、 全台の確認結果が返ってくる手順です。 [ゴール] Nameタグが web-* / api-* / batch-* のEC2すべてに確認コマンドを流し、 NGの台だけ を結果に表示します。確認対象のuserdata(Ubu...