石川事務所 ITエンジニアブログ ~高い付加価値提供のため~ -2ページ目

石川事務所 ITエンジニアブログ ~高い付加価値提供のため~

IT技術ブログです。日々の仕事から得た技術や知識について記述していきます。

基本的には現在のお客様との契約はインフラの運用保守フェーズの仕事を頂く契約となっておりました。
今回上長からチームのみんなにWordPressを動作させるためのインフラ設計構築の案件があるとの話がありました。

エンドユーザは予算があまり潤沢ではないらしく運用フェーズに入ってからは約40時間/月の工数しか使えないとのことでした。それを意識して作業する必要があるようです。

設計・構築・運用と一気通貫の工程を一度は経験する必要があると思い、自分から応募しました。幸いこのお仕事をいただくことができました。

 

1.KUSANAGIを使って高速でWordPressを動作させる

2.1アカウントで開発と本番のインスタンスで環境を変える

3.本番インスタンスはt3.largeで開発インスタンスはt3.smallとする

 

本当に大雑把な要件を聞いて、早速インフラ構成図の設計から入りました。

生産性が高いのやはりでcFnでのコード管理をします。

自宅でも気軽にインフラを構築できるので本当に良い時代になったと思います。
 

別スタックでエクスポートした製品をパラメータを使ってインポートする部分のコーディングでかなりはまりましたね。
 

cFnはやはりとても便利で早いです。
検証程度なら料金も安いですしね。

 

 

お客様からの依頼で、あるアカウントのインフラと自分がメインで使用しているインフラを統合したいというものがありました。お客様がそこでインフラの作業を細分化してくれてAWSのプロダクトを作る範囲をしっかりと切り分けてくれました。

その中に、現行で使用しているS3バケットの内容をコピーしてほしいというものがありました。
サイズはSTGが約500GB、PRDが約1TBありました。

S3の利用価格で同じリージョン内のオブジェクト転送は無料 とマニュアルにありました。費用面は問題ないです。
ただ、懸念するべきはコピーするときの方法ですね。一旦ローカルにダウンロードして、それをアップロードするにはサイズが大きすぎて時間がかかります。

そこで、aws cliコマンドの「aws s3 sync」を使いました。
これは、送信元と、送信先のバケットの内容を同期するというものです。「送信元になくて、送信先にあるオブジェクトの削除」および「オブジェクト名は同じでもタイムスタンプが新しければコピーする」という便利なオプションがついています。

 

ただ、お客様の環境はaws-vaultを使っているためそのキーチェインの有効期限を伸ばさないとコマンドの実行中にトークンが期限切れをして突然停止することが懸念されます。(※syncなので再び実行すれば問題はないのですが。)

それもこの文献で解決できました。

 

一度コマンドを実行したら時々確認して、ほぼ放置となりますが、他の仕事に着手できます。
いやー良かった。

 

 

一気に寒くなりましたね。

お客様からの依頼でhttpdの脆弱性対応と、phpをバージョンアップがありました。

現行のお客様環境は、EC2インスタンスは全てAmazon Linux(以下AL)でした。
サポート期限は延長はされているもののメンテナンスサポート期間となり、重要、重大なセキュリティアップデートだけが縮小パッケージセットとして提供されます。

あるシステムではEC2からECSへの移行を考えているとのことでしたが、開始が未定とのことでした。そこで「一旦ALからAmazon Linux2(以下AL2)へアップデートしたらどうか」と提案してみました。OKを頂けました。

もちろん、開発環境(DEV)、検証環境(STG)、製品(本番)環境(PRD)と段階的に進めていこうと思います。

Amazon Linux 2 プレアップグレードアシスタントというものがあるので現行開発インスタンスに試してみたらPHPだけ設定が必要との回答が返ってきました。

要件としては以下になります。
① Amazon Linux2 AMIから起動
② AWS Systems Managerを使用可能とする
③ httpdを脆弱性対応最新版(2.4.51)をインストールする
④ php8.0xをインストールする

②はSSM Agentをインストールしてインスタンス Profileを設定すればできます。
③と④はMetadataを設定すればできます。

何とかcFnで記述ができ、プライベートに構築できました。実際のお客様環境ではphpの設定を変更が必要になりますね。