Chatbots in Call Centers – Amazon Web Services (AWS)

Chatbots in Call Centers – Amazon Web Services (AWS). Contacting customer service can often be a challenging experience, since the conversation engagem… 続きを表示. Contacting customer service can often be a challenging experience, since the conversation engagement does not always meet … 続きを読む

AWS CodeDeploy logs that you should watch.

We have a web service with AWS, located in like below environment. (This time in case of using AmazonLinux) WebServer: – Production: – ALB * 1 – EC2 * 2 – Dev: – EC2 * 1 DB: – Production: Aurora * 1 – Dev: Aurora * 1. Our source code is managed by github organization account. And we’re going to … 続きを読む

AWSによるサーバーレスアーキテクチャ / Peter Sbarski / 翔泳社(ISBN:9784798155166)

AWSによるサーバーレスアーキテクチャ』 の詳細情報です。ISBN:9784798155166。クラウドコンピューティングの技術の中でも、昨今注目を集めているのがサーバーレスアーキテクチャです。 FaaS(Function-As-A-Service)とも呼ばれるサーバーレスアーキテクチャは、ファンクション(関数)と… 続きを読む

カテゴリー 未分類 | タグ

Amazon Linux2とAmazon Linuxの違いについて(メモ)

Amazon Linux2が発表されたので、今までのAmazonLinuxとの違いについてメモしてみます。
基本的にはRHEL7ベースに変わっているので、CentOS7の知識が役に立ちます。
検証にはHyper-V上にインストールしたAmazonLinux2(amzn2-hyperv-2017.12.0.20171212.2-x86_64.xfs.gpt)を使用しました。

  • initからsystemdに変わった。

    • 今まで/etc/rc3.d/xxxとか作っていたり、chkconfigとかは使えない。
  • ホスト名の設定方法が違う

    • Amazon Linux
     /etc/sysconfig/networkを編集
     /etc/hostnameを編集
    
    • Amazon Linux2
      hostnamectl set-hostname amazonlinux2.example.com
    
  • epelリポジトリがない。Amazon公式リポジトリに色々入っていない。

    • CentOSのように、コミュニティリポジトリをガシガシ入れないといけない?

      • ミドルウエアはDockerでコンテナ化する前提なのかなぁ。
      • CentOSみたく、あとで相性問題でyum update出来ないとか起きそうだし、セキュリティパッチの提供とかあるので今まで通りAmazonのリポジトリから入れられると良いんだけどなぁ・・
  • タイムゾーンの変更方法が違う

    • Amazon Linux
     /etc/sysconfig/clockを編集
     cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
    
    • Amazon Linux2
     timedatectl set-timezone Asia/Tokyo
    
  • MySQLが公式リポジトリにない。一見MySQLがインストールされるように見えるが、MariaDBが入る。

    [root@amazon ~]# yum install mysql
    Loaded plugins: langpacks, update-motd
    Resolving Dependencies
    --> Running transaction check
    ---> Package mariadb.x86_64 1:5.5.56-2.amzn2 will be installed
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    ================================================================================
    Package        Arch          Version                   Repository         Size
    ================================================================================
    Installing:
    mariadb        x86_64        1:5.5.56-2.amzn2          amzn2-core        8.9 M
    
    Transaction Summary
    ================================================================================
    Install  1 Package
    
    • MySQLを入れる場合はコミュニティリポジトリを追加して入れるしかないっぽい。
    • 入るMariaDBのバージョンが微妙に古いが、amazon-linux-extrasでmariaDB単品で入れる方法がない?
      • amazon-linux-extras install lamp-mariadb10.2-php7.2 とするとリポジトリが追加される&phpとMariaDBがインストールされるのだが、何故かMariaDBはクライアントしか入らないので注意。(書いてある通りphpとMariaDBしか入らないので、Apacheも入らないのですが、まさかlampと書いてあってDBサーバが入らないとは。RDS利用を想定??)
  • 同じく、PHPが5.4しかない。amazon-linux-extrasで入るのは7.2で、それ以外のバージョンは無いので、他のバージョンを入れたい場合はRemiなどで入れるしかない。ただしその場合パッケージ名が違うので注意

    • php71-devel -> php71-php-develなど。
    • 今のところalternatives –config phpで複数バージョンを切り替えられないようです。
    • 何故かphp-fpmが入るので、Nginx前提っぽい。
  • ファイルシステムがXFSになったので、fallocateで作ったファイルをswaponすることができない。ので、SWAP用のEBSを別でつけて、スワップ領域とするか、DDで固定容量のスワップファイルを作成してマウントする。AmazonLinuxの頃にやっていたクラスメソッドさんの記事は動きませんので、EC2のCentOS7でSWAP領域を作る方法にあるようにすればいいのですが、起動毎に数分かかるのでちょっと・・・

    • ついでに、/etc/rc.localに実行権限は付いていないので注意です。
  • その他

    • Hyper-V版ではpostfixがインストールされていたのですが、EC2版ではMTAがインストールされていなかった。(sendmailコマンド自体がなかった)
    • Apache2.4が標準になったので、パッケージ名が変更されています。Chefなど構成管理を使っていると修正が必要
      • httpd24 -> httpd
      • mod_php70 -> mod_php(extra入れた場合)
      • mod24_ssl -> mod_ssl
    • Chefのohaiで取得できる情報が違いますので、レシピの条件分岐で注意しましょう。

      [root@amazon ~]# ohai | grep platform
      "platform": "amazon",
      "platform_version":"2.0",
      "platform_family": "rhel",
          "platform": "x86_64-linux",
      
      • systemdになったので動くか不安でしたが、Chef側で検知できるので通常のserviceで問題ありませんでした。
    • ntpが動いていない!と思ったらchronydになったようです。

      • ntpqで時刻監視しているところは注意が必要。
    • rsyslogがない!と思ったらsystemd-journald.serviceになったようです。

      • ntpqはないので、アンインストールしてntpを入れるか、chronyc sourcesが同等コマンドらしいので書き換える。
     [root@amazon ~]# systemctl status rsyslog.service
    Unit rsyslog.service could not be found.
    [root@amazon ~]# systemctl status systemd-journald.service
    ● systemd-journald.service - Journal Service
    
    • ifconfigやpstreeは生き残っているみたいw
    • yum check --securityを実行すると、Hyper-V環境だと何故かCPU100%で暴走しましたOrz
  • 追記

    • amazon-linux-extrasでphp7.2を入れたところ、ssh2やzipなどエクステンションが全然足りない。

      • 結局amzn2-coreリポジトリを無効化してepelとremiから入れた。無効化すればパッケージ名を気にしなくてよいが、アップデート時に衝突する、yum update securityが効くのか疑問なので、コアのほうでパッケージが充実してほしい。
    • Apacheのバージョンが2.4.6となんと現行AmazonLinuxよりも古いため、SSLSessionTicketsがエラーになる。地味に嵌った。nginx使えという事なのかなぁ。
    • 標準で入っているPythonは2系ですが、pipが入っていないので個別インストールが必要

続きを読む

Docker導入するべき?するべきではない?

これは何?

Dockerを導入するにあたって、漠然としたイメージしかないという方も多そうなので、

  • どういうシステムに導入したらいいのか?
  • どういうシステムなら導入しないほうがいいのか?
  • 導入までにどんなことしないといけないのか?

をまとめてみました。
つっこみあればお願いします!


対象

下記のような方を対象として記載しています。

  • Docker自体はなんとなく分かったけど、自分の組織でやった方がいいのかよく分からない
  • 導入の検討しろって言われてるけど、具体的な内容まで落とせない

一般的なコンテナ(Docker)の特徴/メリット


  • パフォーマンス

    • 仮想マシンと比較すると、オーバーヘッドが少なく軽量
    • 起動が高速
  • 再現性、ポータビリティ

    • Dockerが動く環境であれば環境に依存しない
    • 1つのコマンドを実行した状態を再現
    • ホストと分離できる
  • コードで管理できるのでバージョン管理が可能

    • ロールバックが容易

メリットを活かすために必要なこと


  • アプリケーションのマイクロサービス化

    • 1サービス1コンテナ
    • 永続データの考慮
      • ステート情報
      • 共有データ
      • ログ
  • イミュータブルな環境の構築

    • CI/CDシステムの導入

      • バージョン管理システムとの連携
      • テストの自動化
      • デプロイ/ロールバック
  • オーケストレーションツールの導入

    • クラスタの管理
    • スケジューリング
    • スケーリング

他のAWSソリューションとの違い


CodeDeploy

  • OSの状態は再現できない
  • コードのみのロールバックなので、OSの変更には対応できない
    • コンテナはイメージごとロールバック

AMI運用

  • イメージの容量が大きい

    • 起動に時間がかかる
  • 変更作業の負担が大きい
    • インスタンス起動 → 変更 → イメージの保存 → インスタンスの削除
    • Dockerはコードの修正 → 再ビルド
      • CI/CDシステムがあればさらに容易

コンテナに対する誤解 (クラウドで使う場合)


  • オーバーヘッドが少ないのでパフォーマンスがいい

    • 仮想サーバとの比較であって、クラウド上で使う場合は コンテナ on 仮想サーバ になるのでオーバーヘッドは増える
  • どこでも同じ環境を再現できる

    • コンテナは環境に依存しないが、クラウドで利用する場合、LB等のクラウドサービスと組み合わせることが多いので、その違いの考慮は必要
  • 同一ホストにコンテナを相乗りさせることによに費用削減が可能

    • 1ホストを割り当てる必要がないレベルのコンテナがばかりであれば正しいが、ある程度のリソースが必要なコンテナであればトータルのリソース利用量はあまり変わらない

導入の問題点/課題


  • 構成が複雑になる

  • リソース管理/分離が難しい
  • 学習コスト
  • 組織の体制、線引
    • Dev と Ops

コンテナに向く/向かないシステム


向くシステム

  • システムの変更が活発に行われる
  • アップデート等の変更に対応していく必要がある
  • バッチ処理のために起動するシステム

向かないシステム

  • システムの変更がほとんどない
  • 長期の安定性が求められる
  • ライセンス管理、保守サポートが必要

導入のモチベーション


解決したい課題は何か?


共通インフラをつくりたい → X

  • すべてのアプリケーションがコンテナに向いているわけではない

そのまま移行したい → X

  • コンテナ化すること自体に意味はない

費用削減 → X

  • 使用するリソースは減らない

パフォーマンス向上 → ☓

  • クラウドサービス上で使う場合、コンテナ on 仮想マシンになる
  • マイクロサービス化した場合、コンテナ(サービス)間はネットワークを介するので、そのオーバーヘッドも発生する

運用負荷軽減 → △

  • 頻繁に変更が発生する場合で、CI/CD Pipelineの仕組みを適切につくれている場合は負荷の軽減は可能
  • CI/CD Pipelineの構築には試行錯誤が必要

変化への対応を容易にしたい → ◯

  • アプリケーションのアジリティを高める

導入に向けてやらないといけないこと


  • アプリケーション(再)設計

    • マイクロサービス化
    • 再実装
    • コードリポジトリの作成/導入
  • Dockerイメージの作成

    • Dockerfileの作成
    • コンテナリポジトリの作成/導入
  • インフラの設計/構築

    • オーケストレーションツールの導入
  • CI Pipelineの作成

  • 監視/運用フローの確立


AWSで利用できるDockerオーケストレーションサービス


Amazon ECS (Amazon EC2 Container Service)

  • AWS独自のオーケストレーションツール
  • 料金
    • ホスト(EC2)利用料金のみ発生
    • スポットフリート等のコスト削減に関するサービスが利用可能

AWS Fargate

  • クラスタ、ホストの管理をAWSが提供するサービス

    • ユーザー側でインフラ運用が不要
  • re:Invent2017でリリース
  • 東京リージョン未対応 (2018年1月現在)
  • AWS独自の概念
  • 料金
    • 同スペックのコンテナをスポットフリートで構成した場合に比べると高額

Amazon EKS (Amazon Elastic Container Service for Kubernetes)

  • AWSが提供するKubernetesのマネージドサービス
  • re:Invent2017で発表
  • プライベートベータが間もなく?(2018年1月現在)
  • 東京リージョンに来るのは・・・?

まとめ

  • メリットを理解し、導入するシステムの選定が必要
  • 導入に際しやらなければいけないことを整理し、自分の組織で対応できるかの見極めが必要
  • クラウドのマネージドサービスを理解し、うまく活用する

続きを読む

PHP Fatal error: Uncaught Error: Call to undefined function ImageCreateFromJPEG()の対処法

AWSで運用中のサービスでPImageCreateFromJPEG()関数使った時に出たエラー。
エラー内容は以下

PHP Fatal error:  Uncaught Error: Call to undefined function ImageCreateFromJPEG()

サーバー内にphp-gdが入っていなかっただけなので、インストールをする。

php-gdをインストール

$ sudo -i

$ yum install php-gd -y

$service httpd restart

yum install時にバージョンを指定しないとphpの最新バージョンがインストールされてしまうので、
yum install phpバージョン-gdとすればphpのバージョンにあったgdがインストールされます。

続きを読む

はてな、500 Startups Japanを通じたスタートアップ支援。サーバー監視サービス「Mackerel」で特別プラン …

投資先企業に向けて「500 Startups」では、世界中のパートナー企業と連携した関係者特典「Perks」を提供しています。「500 Startups Japan」の投資先企業は、スタートアップ支援に取り組むPerksの参加企業による「Amazon Web Service (AWS) 」や「Google Cloud Platform (GCP)」 、「Twilio」、「Wantedly」、「SmartHR」 … 続きを読む

AWS Fargate

AWS ECS Fargate とは Docker コンテナを動かすための仕組み。Docker コンテナを起動して外から URL でアクセス出来るようになるまでやってみた。

  • コンテナは 8001 (WebSocket) と 8002 (HTTP) の2つのポートを受け付ける。
  • 外から両方のポートを使いたい。

AWS ECS には Clusters, Task Definitions, Repository の3つの設定項目がある

  • Clusters:

    • 複数の Service をまとめて動作させる箱。
    • Service:
      • 複数の Task をまとめて動作させる箱。
  • Task Definitions:
    • Task とは、Docker コンテナの動作単位。使う Docker image は AWS の Repositories から取ってきても良いし、他の Docker repository を使っても良い。
  • Repositories:
    • AWS 用の Docker Repository. Docker image を保存する場所。

作業手順は次のようになる。

  1. Repositories に Docker image を登録
  2. Task Definition に Docker repository を指定
  3. Cluster を作成
  4. Application Load Balancer を作成
  5. Cluster 内に Service と Task を作成
  6. Security Group の設定

AWS Fargate First run

  • https://qiita.com/riywo/items/b223bdad2b3ae3bebf55 の通りに First runチュートリアル試した。
  • 次へ次へと押すだけ
  • Unable to assume the service linked role. Please verify that the ECS service linked role exists というエラーが出る。
  • 二回目同じ事をやると何故か問題なく完了した。
  • Cluster : default > sample-app-service
  • AWS Console > Elastic Container Service > Clusters : default > Tasks > Task をクリック
  • IP が割り当てられている事を確認。

AWS Cluster を削除する時の注意点

  • The vpc ‘vpc-xxx’ has dependencies and cannot be deleted. のエラーが出て消せなかった。
  • EC2 security group が参照していたので消したら OK。

AWS ECS Repositories に Docker image を登録

AWS FargateでFlaskを動かしてみる を参考に作業。

  • Console で Region N. Virginia を選択
  • AWS Console > Elastic Container Service (ECS) > Repositories
  • Create repository
  • Repository name: hoge-websocket-server
  • Repository URL: xxx.dkr.ecr.us-east-1.amazonaws.com/hoge-websocket-server

画面に表示されるコマンドを実行してログイン

$ aws ecr get-login --no-include-email --region us-east-1
docker login -u AWS -p eyJwYXlsb2...
$ docker login -u AWS -p eyJwYXlsb2... (表示された長いコマンドをそのまま実行)

先程出来た Docker image にタグを追加

$ docker tag hoge-websocket-server:latest xxx.dkr.ecr.us-east-1.amazonaws.com/hoge-websocket-server:latest

Docker image を Registory に追加

$ docker push xxx.dkr.ecr.us-east-1.amazonaws.com/hoge-websocket-server:latest
file integrity checksum failed for "usr/lib/x86_64-linux-gnu/libjpeg.a"

Docker image が大きいと上のようなエラーが出た。小さい node のイメージを使ってイメージをダイエットすると成功。

Task Definition に Docker repository を指定

ここで Docker image の場所や使いたいリソースを定義する。

  • AWS Console > ECS > Task Definitions > Create a new definition

    • 1: Select launch type compatibility

      • FARGATE
    • 2: Configure task and container definitions
      • Task Definition Name: hoge-websocket-server
      • Task memory (GB): 0.5GB
      • Task CPU (vCPU): 0.25 vCPU
      • Add container
        • Container name: hoge-websocket-server
        • Image: xxx.dkr.ecr.us-east-1.amazonaws.com/hoge-websocket-server:latest
        • Port mappings
          • 8001
          • 8002
      • Create

Cluster を作成

  • AWS Console > ECS > Clusters > Create Cluster

    • 1: Select cluster template

      • Networking only
    • 2: Configure cluster
      • Culster name: hoge-cluster
      • Create VPC: チェック (意味はよくわからない)
        • 作成されるネットワーク情報に目を通しておく。
        • デフォルトで2つのサブネットが定義されるようだが、そのままにしておいた。
    • View Cluster

これで Cluster 本体の他、色々な Cluster Resources が作成される。これらの大事な情報を後から参照する方法が分からなかったので必ずメモっておく。

Load Balancer の作成

このままだと起動停止のたびに IP アドレスが変わってしまうので、Application Load Balanceer (ALB) を使ってドメイン名を割り当てる。

  • AWS Console > EC2 > Load Balancers
  • Application Load Balancer > Create
  • 1: Configure Load Balancer
    • Name: hoge
    • Scheme: internet-facing
    • IP address type: ipv4
    • Listeners
      • HTTP: 8001 (Websocket も HTTP で良い)
      • HTTP: 8002 (HTTP 用の Listener は ECS Service 設定時に出来るのでここで作らなくて良い)
    • Availability Zones
      • VPC (Create Cluster で設定した VPC)
      • 下の Subnet は2つとも選択する
    • Tag
      • project : hoge
  • 2: Configure Security Settings
    • 設定なし
  • 3: Security Groups
    • Create a new security group
    • Security group name: hoge-security-group
    • 使いたいポート番号を設定
    • あとで AWS Console > ECS > Clusters > hoge-cluster > Tasks > Task : a44f… から編集出来る。
  • 4: Configure Routing
    • ヘルスチェックの設定らしい
    • Name: hoge-8002
    • Port: 8002
  • 5: Register Targets
    • 何も設定しない

Cluster 内に Service を作成

  • AWS Console > ECS > Clusters > hoge-cluster > Services > Create

    • 1: Configure service

      • Launch type: FARGATE
      • Task Definition: (作成した Task)
      • Service name: hoge-service
      • Number of taksk: 1
    • 2: Configure network
      • Cluster VPC: (Create Cluster で設定した VPC)
      • Subnets: (Create Cluster で設定した subnet)
      • Security groups > Edit
        • Assigned security groups: Select existing security group
        • Load Balancer で作った hoge-security-group を選択
      • Load balancing
        • Load balancer type: Application Load Balancer
        • Load balancer name: hoge
      • Container to load balance
        • ここで設定すると、コンテナの IP が変わっても自動的に一つのポートだけ Load Balancer に割り当てられる。
        • hoge-websocket-server:8002 > Add to load balancer
          • Listner port: 8002:HTTP
          • Path pattern: /*
          • Evaluation order: 1
          • Health check path: /
        • hoge-websocket-server:8002
    • 3: Set Auto Scaling
      • デフォルトのまま
    • 4: Review
      • 特に VPC Id と Subnets に気をつける。間違うとややこしい事になる。
    • Create Service

コンテナに割り当てられた IP アドレスの確認

  • AWS Console > ECS > Clusters > hoge-cluster > Tasks > Task : a44f… を選択
  • Private IP と Public IP が表示される。

もう一つのポート Port 8001 の設定

ECS Service の作成時に Load Balancer を割り当てると、IP が変化しても Load Balancer が勝手に面倒を見てくれる。ただしポート番号は一つしか設定出来ない!!!!この例のように2つ目のポートを Load Balancer に見せるには、手動で IP を指定した Target Groups を作る必要があった。なので、更新の際にはこの IP をわざわざ再入力する必要がある。

  • AWS Console > EC2 > LOAD BALANCING Target Groups

    • Target group name: hoge-8001
    • Protocol: HTTP
    • Port: 8001
    • Target type: ip
    • VPC: Cluster の VPC
    • Create
  • AWS Console > EC2 > LOAD BALANCING Target Groups > hoge-8001
    • Targets > Edit
    • Task の IP を登録
  • AWS Console > EC2 > LOAD BALANCING Load Balancers > hoge > Listeners
    • HTTP:8001 > View/edit rules
    • THEN に hoge-8001 を登録

Docker image の更新

  • AWS Console > ECS > Clusters > hoge-cluster > hoge-service > Update

    • Force new deployment: Check
    • 次へ次へ。。。
  • しばらく待つと新しいコンテナが起動して古いコンテナが停止する。
  • IP アドレスが変わっているので Load Balancer の Target Group も更新する。

Task 削除

Task は service が管理するので、直接止められないらしい。Service の Update で Number of tasks を 0 にすると止められた。

  • AWS Console > ECS > Clusters > hoge-cluster > hoge-service > Update
  • Number of tasks: 0
  • 次へ次へ

やりたかった事は node 一つの単純なサーバをテストしたいだけだったんだけど、随分大げさな構成になってしまった。

続きを読む

Amazon Linux2上にwordpressをインストールした際につまづいたこと&その対処方法メモ

久々に自分のAWS環境のEC2上にWordpressのインストールしようと思った
かつ
最近出たAmazon Linux2上にインストールした時に
若干ハマったので、その内容と解決方法をメモっておきます。
また作るとき用に残しておきます。

自動起動方法

Amazon Linuxで使えた自動起動の設定のコマンドですが、サービスの設定方法が変わっているらしく、

$ sudo chkconfig httpd on

を実行すると、使えないらしく、以下のようなメッセージを出してくれます。

Note: Forwarding request to ‘systemctl enable httpd.service’.
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service

ということで、

$ sudo systemctl enable httpd.service

を実行しました。

サービスの起動停止等は以下のコマンドでした。

$ sudo systemctl [start | stop | restart] httpd.service

PHP7のインストール

何も考えずにyumでPHPをインストールしたら、5.4だったんですが、
Wordpressのプラグインで、アップロードしたファイルをS3にアップロードするWP Offload S3 Lite(Amazon S3 Cloud Front)というプラグインがあって、今回これを使いたかったのですが、PHP5.5以上じゃないと使えないことが判明。
じゃあ、どうするよと、色々調べたところ、Extras Library(amazon-linux-extras)でPHP7がインストールできるということで、

$ sudo amazon-linux-extras install php7.2

でインストール・・・と思ったら、失敗。

Package php-cli-5.4.16-43.amzn2.0.1.x86_64 already installed and latest version
Error: Package: php-json-7.2.0-3.amzn2.1.x86_64 (amzn2extra-php7.2)
Requires: php-common(x86-64) = 7.2.0-3.amzn2.1
Installed: php-common-5.4.16-43.amzn2.0.1.x86_64 (@amzn2-core)
php-common(x86-64) = 5.4.16-43.amzn2.0.1
Available: php-common-5.4.16-43.amzn2.x86_64 (amzn2-core)
php-common(x86-64) = 5.4.16-43.amzn2
You could try using –skip-broken to work around the problem
You could try running: rpm -Va –nofiles –nodigest
Installation failed. Check that you have permissions to install.

あん?なんでやねんと関西弁でツッコミを入れたところで、
調べてみると、AWSのフォーラムで同じエラーが出てるというスレッドを発見

Amazon Linux 2 – Can’t install PHP 7.2

google翻訳さんの力を借りて読んでみると、
とりあえず、AWSもこの問題は認識していて、アップデートするから待っててね。的なことが書いてあったので、
どーすんだとよ、再度いろいろ調べた結果、代替案としては、yumでバージョン指定してインストールするという以下の方法で対応

sudo yum install
php-common-7.2.0-3.amzn2.0.1.x86_64
php-fpm-7.2.0-3.amzn2.0.1.x86_64
php-cli-7.2.0-3.amzn2.0.1.x86_64
php-mysqlnd-7.2.0-3.amzn2.0.1.x86_64
php-pdo-7.2.0-3.amzn2.0.1.x86_64
-y –disableplugin=priorities

(ただ、このコマンドどこから持ってきたか忘れているので、思い出したら追記)

公開する頃には、Extras Libraryの問題は解決してるかも。と思ったけど、フォーラム見る限りは未解決でした。

週末に続きをやるから、また、何か起きたら、さらに追記します。


参考サイト

Wordpressのインストール

AWSにWordPress3.8をインストールしてみた – その1

サービス自動起動

systemdでの自動起動設定

Extras Library(amazon-linux-extras)

Amazon Linux 2のExtras Library(amazon-linux-extras)を使ってみた
Amazon Linux2 の注意点【Zabbixの視点から】

続きを読む