ワードプレスサイトを展開する



概要
テラランドでの
  • 提供資源
  • 可用性
  • でEC 2インスタンスを構成します
  • ウェブサイトをインスタンス
  • に展開するCodeDeployをインストールします
  • bashスクリプト以降の変更を行うには

  • 必要条件:
  • SSHキー
  • を作成します

    アーキテクチャ図

    リソースをterraformで提供する
    コードは150行以上長いので、モジュールlinkです
    このモジュールで作成したリソース


  • CodeDeployのサービスロール
    CodeDeployサイトを配備する他のリソースへの変更を許可する権限が必要です.S 3からオブジェクトを取得するAWSマネージポリシーとインラインポリシーはロールにアタッチされました.


  • EC 2インスタンスのセキュリティグループ
    HTTPトラフィックをインスタンスに許可するので、ウェブサイトはブラウザからアクセスできます.


  • EC 2のインスタンスプロファイル
    EC 2インスタンスのアクセス許可を他のリソースに変更します.インスタンスプロファイルは、上記のコード展開用に作成したロールと同じ役割を使用します.


  • EC 2インスタンス
    T 2.マイクロ(自由層)は、上記のプロビジョニングされたタグとセキュリティグループを追加します.SSHキーを使用してインスタンスにアクセスします.


  • S 3バケット
    CodeDeployがデータをプルするS 3バケツ.


  • *アプリケーションを配備し、グループを配備する
    CodeDeployを使用してサイトを展開するコード展開グループ.CodeDeployはタグに基づいてEC 2インスタンスの選択を行います.


  • グループの構成
    CodeDeploy展開グループの設定.
  • 完了すると、terraformは出力可能な(s 3 id、codedeployアプリ、およびcodedeployグループ名)を生成します.これは、可用性のある脚本とbashスクリプトで使用されます.出力file

    実行可能なEC 2インスタンスを設定します.
    Githubの上のAnsible folder.ここでコードを貼ることは多くのスペースを取るでしょう.
    何が可能なフォルダにありますか?


  • インベントリファイル
    AWSプラグインを使用して動的インベントリを作成します.


  • 設定ファイル
    EC 2インスタンスとインベントリファイルのSSHキーの設定場所.


  • スクリプト
    EC 2インスタンスでWPサイトを作成する依存性.


  • 脚本
    サイトパッケージをダウンロードして、テンポラリディレクトリを作成して、内容をアーカイブして、すべての依存関係をコピーしてください
  • EC 2インスタンスは準備ができました!

    タグを使用してEC 2にCodedeployエージェントを配備する
     #!/bin/bash
    aws ssm create-association --name AWS-ConfigureAWSPackage \
    --targets Key=tag:Name,Values=codeDeploy --parameters action=Install,name=AWSCodeDeployAgent
    

    EC 2インスタンスのアプリケーション展開.
    S 3のバケツの名前とグループ名をterraform
    
    #!/bin/bash      
    
    aws deploy create-deployment --application-name WordPress_App --s3-location bucket=codedeploy-gsingh,bundleType=zip,key=WordPress.zip \
    --deployment-group-name WordPress_app_codedeploy_group --deployment-config-name CodeDeployDefault.OneAtATime
    
    EC 2の公開IPv 4 DNSを使用してサイトにアクセスします.サイトにアクセスできない場合は、インスタンスのHttpdサービスを再起動します.
    以下の手順を実行して、ウェブサイトのセットアップを完了します
    Choose Let's go!.
    
    Database Name: test
    
    User Name: root
    
    Password: Leave blank.
    
    Database Host: localhost
    
    Table Prefix: wp_
    
    Choose to Submit to set up the database.
    
    Install WordPress.
    
    すべて完了!
    サイト構成に修正を加え、Codedeployで展開し、CodeDeployがこれらの変更を展開するかどうかを確認します.
    あなたがどんな問題を経験するならば、Githubリポジトリまたはコメントに関する問題を開くのを自由に感じてください.お読みいただきありがとうございます:)
    以下のような記事を見るには