Amazon EKSでのWord Press-スタート(2)


""""""""


大きく4つの段階に分けることができます.
1.EKS Workshopの起動
1)クラウド9環境の作成(EKSワークショップ)
2)Kubernetes Toolsのインストール
3)IAMロールの作成
4)IAMロールの適用
5)IAM設定の更新
2.Eaksctlを使用してクラスタを起動する
1)eksctlのインストール
2)EKSクラスタの作成
3)EKSクラスタのテスト
3.Helm CLIのインストール
1)Helm CLIをインストールする前に
2)Helm CLIの取り付け
4.Word Pressのインストール
1)Word Pressのインストール
2)ワードプレス接続
私たちが何度も強調したように、AWSガイドは最も詳細で、最も正確なので、文章の下部に参考サイトを見てください.

第二章。Eaksctlを使用したクラスタの起動


1.eksctlのインストール


1)eksctlバイナリファイルのインストール

curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp

sudo mv -v /tmp/eksctl /usr/local/bin

2)eksctlのインストールを確認する

eksctlコマンドが動作しているかどうかを確認します.
eksctl version

3)eksctlのbash shell自動補完を有効にする

eksctl completion bash >> ~/.bash_completion
. /etc/profile.d/bash_completion.sh
. ~/.bash_completion

2.EKSクラスタの作成


注意事項


  • 1章最終段階IAM Role有効性検査を完了した後、この段階を行う.
  • どうしたの?IAM Roleを使用するEKSクラスタが構築されていない場合、今後モジュールは必要なKubectlコマンド
  • を発行できなくなる.
    配備
  • EKS 1.17は、EKSCTLバージョン0.24.0以上である必要があります.
  • 最新バージョンインストール:リンククリック
  • 1)eksctl配備ファイルの作成

  • 配置ファイル名:eksworkshop.yaml
  • 配置ファイル(YAMLファイル)構文については、個別に配置します.
    cat << EOF > eksworkshop.yaml
    ---
    apiVersion: eksctl.io/v1alpha5
    kind: ClusterConfig
    
    metadata:
      name: eksworkshop-eksctl
      region: ${AWS_REGION}
      version: "1.17"
    
    managedNodeGroups:
    - name: nodegroup
      desiredCapacity: 3
      ssh:
        allow: true
        publicKeyName: eksworkshop
    
    # To enable all of the control plane logs, uncomment below:
    # cloudWatch:
    #  clusterLogging:
    #    enableTypes: ["*"]
    
    secretsEncryption:
      keyARN: ${MASTER_ARN}
    EOF

    2)作成したファイルを使用してeksctlクラスタを作成する

    eksworkshop.yamlが生成されたときにeksctl clusterと入力します.
    eksctl create cluster -f eksworkshop.yaml
    EKSおよびすべての依存項目を起動するのに約15分かかります.

    3.EKSクラスタのテスト


    1)作成したノードを確認する

    kubectl get nodes # if we see our 3 nodes, we know we have authenticated correctly
    異常がなければ以下のように出力します.

    2)作業場全体で使用するWorker Role Nameのエクスポート

    STACK_NAME=$(eksctl get nodegroup --cluster eksworkshop-eksctl -o json | jq -r '.[].StackName')
    ROLE_NAME=$(aws cloudformation describe-stack-resources --stack-name $STACK_NAME | jq -r '.StackResources[] | select(.ResourceType=="AWS::IAM::Role") | .PhysicalResourceId')
    echo "export ROLE_NAME=${ROLE_NAME}" | tee -a ~/.bash_profile

    第三章。Helm CLIのインストール


    1.Helm CLIをインストールする前に


    Helm CLIとは?

  • Kubernetesのパッケージングツール
  • これは
  • Kubernetsソフトウェアを探し、共有し、使用するツールです.
  • node.jsのnpmと同様の形式で,Kubernetsのパケット配置を可能にするツールと考えられる.
  • chartと呼ばれるパケットフォーマットを使用して、chartはkubernetesリソースを記述するファイルの集合です.
  • Helm CLIについてわかりやすい文章がありますが、下にリンクを残します.

    1)インストール前に、対話するコマンドラインツールをインストールする

    curl -sSL https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash

    2)バージョンの検証

    helm version --short

    2.Helm CLIのインストール


    1)Chart Repositoryの構成


    第一に、Chart repositoryを構成する.
    Chart RepositoryはLinuxのAPTまたはyum Repository、またはMacOSのHomebrew用Tapsに似ています.
    stable repositoryをダウンロードします.
    helm repo add stable https://kubernetes-charts.storage.googleapis.com/

    2)実装可能グラフ出力


    インストール後にインストール可能なグラフをリストできます.
    helm search repo stable

    3)helmのbash shell自動補完を有効にする

    helm completion bash >> ~/.bash_completion
    . /etc/profile.d/bash_completion.sh
    . ~/.bash_completion
    source <(helm completion bash)
     

    第四章。Word Pressのインストール


    1.Word Pressのインストール


    1)EKSクラスタにWord Pressをインストールする


    Bitnamiグラフレコードライブラリを使用して、Word PressをEKSクラスタにインストールします.
    Cloud 9ワークスペース端末で、Word Pressとそのデータベースを配置するには、次のコマンドを実行します.
    # Create a namespace wordpress
    kubectl create namespace wordpress-cwi
    
    # Add the bitnami Helm Charts Repository
    helm repo add bitnami https://charts.bitnami.com/bitnami
    
    # Deploy WordPress in its own namespace
    helm -n wordpress-cwi install understood-zebu bitnami/wordpress

    上図で生成された

  • 2個の永続ボリューム
  • 複数の秘密
  • MariaDB用StatefulSet
  • Word Press導入
  • 2)配置ステータスの確認

    kubectl -n wordpress-cwi rollout status deployment understood-zebu-wordpress
    配置が適切であれば、

    2.Word Press接続


    1)共通URLのテスト

  • LoadBankを使用するには数分かかります.
  • Word PressのWebサイトのURLを印刷します.
    export SERVICE_URL=$(kubectl get svc -n wordpress-cwi understood-zebu-wordpress --template "{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}")
    
    echo "Public URL: http://$SERVICE_URL/"

    2)ウェルカムページの確認


    上から出力されたURLに入ると、テンプレートが適用されているWord Pressのサイトが見えます.

    3)adminインタフェースのテスト


    以上の状態では管理者ページにアクセスできません.
    管理者のURLとパスワードを設定します.
    export ADMIN_URL="http://$SERVICE_URL/admin"
    export ADMIN_PASSWORD=$(kubectl get secret --namespace wordpress-cwi understood-zebu-wordpress -o jsonpath="{.data.wordpress-password}" | base64 --decode)
    
    echo "Admin URL: http://$SERVICE_URL/admin
    Username: user
    Password: $ADMIN_PASSWORD
    "

    4)Admin URLのテスト


    上から出力されたAdmin URLを入力すると、次の画面が表示されます.

    5)Adminページ登録

    Username or Email Address : user
    
    Password : 위에 출력된 비밀번호
    ログインして次の画面に移動すると、EKSクラスタでMariaDBでサポートされているWordpressインストールが正常に実行されます.

    拍手しましょう.終わりました.🤣 フィードバックを歓迎します!🚀

    リファレンス

  • AWS
  • Helm CLI