Enviar pesquisa
Carregar
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
•
Transferir como PPTX, PDF
•
3 gostaram
•
1,457 visualizações
靖
靖 小田島
Seguir
AWSとANSIBLEを使用してのLAMP+Laravelのアプリ表示までの実践資料
Leia menos
Leia mais
Tecnologia
Vista de apresentação de diapositivos
Denunciar
Compartilhar
Vista de apresentação de diapositivos
Denunciar
Compartilhar
1 de 26
Baixar agora
Recomendados
Chef windows linux環境構築
Chef windows linux環境構築
靖 小田島
Chef社内勉強会(第1回)
Chef社内勉強会(第1回)
Yoshinori Nakanishi
Chefで始めるWindows Server構築
Chefで始めるWindows Server構築
Takashi Kanai
Windows7でもchefしたい!
Windows7でもchefしたい!
Tamie YAMAMOTO
明日から始める Chef 入門 #bpstudy
明日から始める Chef 入門 #bpstudy
Takeshi Komiya
Chefで作る開発環境
Chefで作る開発環境
regret raym
Ansible quickstart
Ansible quickstart
Hideki Saito
Chef概論とレシピ実践入門
Chef概論とレシピ実践入門
Kazuto Ohara
Recomendados
Chef windows linux環境構築
Chef windows linux環境構築
靖 小田島
Chef社内勉強会(第1回)
Chef社内勉強会(第1回)
Yoshinori Nakanishi
Chefで始めるWindows Server構築
Chefで始めるWindows Server構築
Takashi Kanai
Windows7でもchefしたい!
Windows7でもchefしたい!
Tamie YAMAMOTO
明日から始める Chef 入門 #bpstudy
明日から始める Chef 入門 #bpstudy
Takeshi Komiya
Chefで作る開発環境
Chefで作る開発環境
regret raym
Ansible quickstart
Ansible quickstart
Hideki Saito
Chef概論とレシピ実践入門
Chef概論とレシピ実践入門
Kazuto Ohara
Pythonユーザのための構成管理入門 #pyconapac
Pythonユーザのための構成管理入門 #pyconapac
Takeshi Komiya
Puppetのススメ
Puppetのススメ
Gosuke Miyashita
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
dcubeio
Ansible 2.0 のサマライズとこれから
Ansible 2.0 のサマライズとこれから
Takeshi Kuramochi
Itamae-Serverspec入門
Itamae-Serverspec入門
辰徳 斎藤
Niigata.pm #1
Niigata.pm #1
hayajo Imai
Ansibleで味わうHelion OpenStack
Ansibleで味わうHelion OpenStack
Masataka Tsukamoto
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
Yukihiko SAWANOBORI
Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門
Sho A
Ansible handson ood2016
Ansible handson ood2016
Hideki Saito
ChefとPuppetの比較
ChefとPuppetの比較
Sugawara Genki
第1回 一撃サーバー構築シェルスクリプト勉強会
第1回 一撃サーバー構築シェルスクリプト勉強会
Yasutaka Hamada
Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)
Taro Hirose
入門 Chef Server #biglobetechtalk
入門 Chef Server #biglobetechtalk
BIGLOBE Tech Talk
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Hidetoshi Hirokawa
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
BIGLOBE Tech Talk
Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!
Daisuke Hiraoka
Serverspecの活用tips紹介
Serverspecの活用tips紹介
Daisuke Ikeda
NDS#31
NDS#31
hayajo Imai
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
Daisuke Ikeda
[B34] MySQL最新ロードマップ – MySQL 5.7とその先へ by Ryusuke Kajiyama
[B34] MySQL最新ロードマップ – MySQL 5.7とその先へ by Ryusuke Kajiyama
Insight Technology, Inc.
Ansible with AWS
Ansible with AWS
Allan Denot
Mais conteúdo relacionado
Mais procurados
Pythonユーザのための構成管理入門 #pyconapac
Pythonユーザのための構成管理入門 #pyconapac
Takeshi Komiya
Puppetのススメ
Puppetのススメ
Gosuke Miyashita
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
dcubeio
Ansible 2.0 のサマライズとこれから
Ansible 2.0 のサマライズとこれから
Takeshi Kuramochi
Itamae-Serverspec入門
Itamae-Serverspec入門
辰徳 斎藤
Niigata.pm #1
Niigata.pm #1
hayajo Imai
Ansibleで味わうHelion OpenStack
Ansibleで味わうHelion OpenStack
Masataka Tsukamoto
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
Yukihiko SAWANOBORI
Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門
Sho A
Ansible handson ood2016
Ansible handson ood2016
Hideki Saito
ChefとPuppetの比較
ChefとPuppetの比較
Sugawara Genki
第1回 一撃サーバー構築シェルスクリプト勉強会
第1回 一撃サーバー構築シェルスクリプト勉強会
Yasutaka Hamada
Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)
Taro Hirose
入門 Chef Server #biglobetechtalk
入門 Chef Server #biglobetechtalk
BIGLOBE Tech Talk
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Hidetoshi Hirokawa
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
BIGLOBE Tech Talk
Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!
Daisuke Hiraoka
Serverspecの活用tips紹介
Serverspecの活用tips紹介
Daisuke Ikeda
NDS#31
NDS#31
hayajo Imai
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
Daisuke Ikeda
Mais procurados
(20)
Pythonユーザのための構成管理入門 #pyconapac
Pythonユーザのための構成管理入門 #pyconapac
Puppetのススメ
Puppetのススメ
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
Ansible 2.0 のサマライズとこれから
Ansible 2.0 のサマライズとこれから
Itamae-Serverspec入門
Itamae-Serverspec入門
Niigata.pm #1
Niigata.pm #1
Ansibleで味わうHelion OpenStack
Ansibleで味わうHelion OpenStack
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門
Ansible handson ood2016
Ansible handson ood2016
ChefとPuppetの比較
ChefとPuppetの比較
第1回 一撃サーバー構築シェルスクリプト勉強会
第1回 一撃サーバー構築シェルスクリプト勉強会
Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)
入門 Chef Server #biglobetechtalk
入門 Chef Server #biglobetechtalk
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!
Serverspecの活用tips紹介
Serverspecの活用tips紹介
NDS#31
NDS#31
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
Destaque
[B34] MySQL最新ロードマップ – MySQL 5.7とその先へ by Ryusuke Kajiyama
[B34] MySQL最新ロードマップ – MySQL 5.7とその先へ by Ryusuke Kajiyama
Insight Technology, Inc.
Ansible with AWS
Ansible with AWS
Allan Denot
Spider DeNA Technology Seminar #2
Spider DeNA Technology Seminar #2
Kentoku
Zabbix+group replication
Zabbix+group replication
bri nger
Sharding and Scale-out using MySQL Fabric
Sharding and Scale-out using MySQL Fabric
Mats Kindahl
2014 11-20 Machine Learning with Apache Spark 勉強会資料
2014 11-20 Machine Learning with Apache Spark 勉強会資料
Recruit Technologies
リーダブルコードが良書だったのでまとめました
リーダブルコードが良書だったのでまとめました
Takumi Sato
MySQL InnoDB Cluster 미리보기 (remote cluster test)
MySQL InnoDB Cluster 미리보기 (remote cluster test)
Seungmin Yu
MySQL InnoDB Cluster - Group Replication
MySQL InnoDB Cluster - Group Replication
Frederic Descamps
Nuvola: a tale of migration to AWS
Nuvola: a tale of migration to AWS
Matteo Moretti
MySQL Replication Evolution -- Confoo Montreal 2017
MySQL Replication Evolution -- Confoo Montreal 2017
Dave Stokes
Building Scalable High Availability Systems using MySQL Fabric
Building Scalable High Availability Systems using MySQL Fabric
Mats Kindahl
Using Ansible for Deploying to Cloud Environments
Using Ansible for Deploying to Cloud Environments
ahamilton55
レスポンシブWebデザインでうまくやるための考え方
レスポンシブWebデザインでうまくやるための考え方
Hayato Mizuno
Automate with Ansible basic (3/e)
Automate with Ansible basic (3/e)
Chu-Siang Lai
MySQL 5.7とレプリケーションにおける改良
MySQL 5.7とレプリケーションにおける改良
Shinya Sugiyama
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
Aurimas Mikalauskas
From devOps to front end Ops, test first
From devOps to front end Ops, test first
Caesar Chi
Ansible 實戰:top down 觀點
Ansible 實戰:top down 觀點
William Yeh
Automation with Ansible and Containers
Automation with Ansible and Containers
Rodolfo Carvalho
Destaque
(20)
[B34] MySQL最新ロードマップ – MySQL 5.7とその先へ by Ryusuke Kajiyama
[B34] MySQL最新ロードマップ – MySQL 5.7とその先へ by Ryusuke Kajiyama
Ansible with AWS
Ansible with AWS
Spider DeNA Technology Seminar #2
Spider DeNA Technology Seminar #2
Zabbix+group replication
Zabbix+group replication
Sharding and Scale-out using MySQL Fabric
Sharding and Scale-out using MySQL Fabric
2014 11-20 Machine Learning with Apache Spark 勉強会資料
2014 11-20 Machine Learning with Apache Spark 勉強会資料
リーダブルコードが良書だったのでまとめました
リーダブルコードが良書だったのでまとめました
MySQL InnoDB Cluster 미리보기 (remote cluster test)
MySQL InnoDB Cluster 미리보기 (remote cluster test)
MySQL InnoDB Cluster - Group Replication
MySQL InnoDB Cluster - Group Replication
Nuvola: a tale of migration to AWS
Nuvola: a tale of migration to AWS
MySQL Replication Evolution -- Confoo Montreal 2017
MySQL Replication Evolution -- Confoo Montreal 2017
Building Scalable High Availability Systems using MySQL Fabric
Building Scalable High Availability Systems using MySQL Fabric
Using Ansible for Deploying to Cloud Environments
Using Ansible for Deploying to Cloud Environments
レスポンシブWebデザインでうまくやるための考え方
レスポンシブWebデザインでうまくやるための考え方
Automate with Ansible basic (3/e)
Automate with Ansible basic (3/e)
MySQL 5.7とレプリケーションにおける改良
MySQL 5.7とレプリケーションにおける改良
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
From devOps to front end Ops, test first
From devOps to front end Ops, test first
Ansible 實戰:top down 觀點
Ansible 實戰:top down 觀點
Automation with Ansible and Containers
Automation with Ansible and Containers
Semelhante a AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
Mysql casial01
Mysql casial01
matsuo kenji
10分で作る Node.js Auto Scale 環境 with CloudFormation
10分で作る Node.js Auto Scale 環境 with CloudFormation
Kazuyuki Honda
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せます
infinite_loop
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
npsg
Nseg20120825
Nseg20120825
hiro345
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
Etsuji Nakai
Lapp環境をソースからインストールする(centos)
Lapp環境をソースからインストールする(centos)
Kimiyuki Yamauchi
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
Hiroshi SHIBATA
Mina 20130417
Mina 20130417
Naotoshi Seo
Cloudstack user group meeting in osaka
Cloudstack user group meeting in osaka
Naotaka Jay HOTTA
Ansible入門
Ansible入門
Akira Otsuka
Personal Cloud Automation
Personal Cloud Automation
Etsuji Nakai
Zabbixを2分でインストール
Zabbixを2分でインストール
真乙 九龍
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!
Midori Oge
今日から使い始めるChef
今日から使い始めるChef
Masahiro NAKAYAMA
Okinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - Ansible
Hideki Saito
ZabbixとAWS
ZabbixとAWS
真乙 九龍
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
Yasutaka Hamada
WindowsでMySQL入門
WindowsでMySQL入門
Hidenori Ishii
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
Masahiro Nagano
Semelhante a AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
(20)
Mysql casial01
Mysql casial01
10分で作る Node.js Auto Scale 環境 with CloudFormation
10分で作る Node.js Auto Scale 環境 with CloudFormation
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せます
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
Nseg20120825
Nseg20120825
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
Lapp環境をソースからインストールする(centos)
Lapp環境をソースからインストールする(centos)
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
Mina 20130417
Mina 20130417
Cloudstack user group meeting in osaka
Cloudstack user group meeting in osaka
Ansible入門
Ansible入門
Personal Cloud Automation
Personal Cloud Automation
Zabbixを2分でインストール
Zabbixを2分でインストール
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!
今日から使い始めるChef
今日から使い始めるChef
Okinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - Ansible
ZabbixとAWS
ZabbixとAWS
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
2014/11/04 第2回 一撃サーバー構築シェルスクリプト勉強会(さっぽろ!) 発表資料
WindowsでMySQL入門
WindowsでMySQL入門
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
Último
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
Último
(8)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
1.
プロビジョニング入門 AWSとAnsibleによるLAMP環境構築 By Yasushi Odashima 2016年11月4日(金) ■スライドシェアURL http://www.slideshare.net/ssuser24564a/awsansiblelamplaravel-68179035
2.
1.登場人物 2.作業範囲 3.環境構成 4. AWS インスタンス 5.
Ansible 重要用語 6.ベストプラティクス構造 7.プレイブック連携 8.プロビジョニング Section 1 9.プロビジョニング Section 2 10.まとめ 目次
3.
1.登場人物 • AmazonWebService • Amazonのクラウドサービス。今回ではAnsibleサーバとAPPサーバとして使用す る。OSはLinux6を基本としたAmazonLinuxを採用。 •
Ansible • 構成管理ツール。インフラ作業をコード化することでプロビジョニング作業を自動化 する。今回はAPPサーバに対してOSインストール以降のすべての作業をプロビジョ ニングする。
4.
2.作業範囲 目的 : 自宅や物理サーバが用意できない環境でのLAMP構築とAPPインストールのプロ ビジョニング実践 Apache Install
& Edit PHP Install & Edit Mysql Install & Edit App Install Database Edit OS Install & Edit AWS Code ※プロビジョニング:サーバに対してミドルウェアのインストールや設定等の環境構築を行うこと
5.
3.環境構成図 AnsibleServer ---------------------------- EC2 : Amazon
Linux APPServer ---------------------------- EC2 : Amazon Linux Server構築、設定 http://<PublicIP> APPServer構築における工程をコード化しプロ ビジョニングを行う
6.
4.AWS インスタンス 構成内容 構成値
内容 1 アカウント作成 hogehoge 特になし 2 AMI選択 Amazon Linux 無料枠内でできるシンプルな構成を選択。 3 インスタンスタイプ t2maicro サーバのスペックを決定する 4 ネットワーク 172/31/0.0/16 デフォルトをそのまま使用 5 サブネット subnet-9024c3e7 データセンターの拠点を選択する。 6 自動割り当てパブリックIP 有効化 インターネットからアクセス可能にする。 7 ストレージ 8GB 無料枠内では30GBまで設定可能 8 タグ APPServer インスタンスの名称 9 セキュリティグループ HTTP,HTTPS,ICMP デフォルトではSSHのみしか許可していない 10 Key Hogehoge.pem インスタンスログイン時に使用する秘密鍵 EC2(AmazonLinux)を構築するまでの内容。基本無料枠を使用する。
7.
5.Ansible重要用語 用語 内容 1 インベントリファイル
実行するモジュールや処理内容、使用する変数の値等を記載するYaml形式のファイ ル 2 プレイブック Ansibleで実行するプログラムを総称。Ansibleの持つプログラムを記載し処理の内容 を記載するインベントリファイル 3 ロール 複数のモジュールを組み合わせの処理を行うインベントリファイル。 4 モジュール プレイブックより呼び出されるPythonファイル。Pythonファイルを自作しモジュールとし て実行可能。 5 ベストプラクティス Ansibleで推奨されているディレクトリ構造。自作モジュールやロールを呼び出す上で の理想的な構造。 構成管理Ansibleにおける重要用語。以降のスライドにて詳細を記載。
8.
6.ベストプラティクス構造 /playbook /roles /group_vars /lamp.yml /hosts /lamp.yml /1_Apache /2_php /3_mysqlroles配下を読み込む(Site.yml) プレイブックで使用する変数を記載 それぞれの処理を記載する /library 自作モジュールの格納(未使用) プレイブックは保存、管理を行うことで「hosts」に 記載されたマシンすべてに同様の処理を行う。
9.
7.プレイブック連携 ベストプラティクス構造で作成することで --- - name:
apache Install Apache yum: name=httpd - name: apache Make PHP Dir file: path=/var/www/html state=directory - name: apache PHP File Transfer copy: src=/playbook/roles/file/dest=/var/www/html - name: apache restart service: name=httpd state=restarted --- - name: Playbook LAMP become: yes hosts: [lamp] roles: - 1_apache - 2_php - 3_mysql --- - name: php install repo yum: name={{ phpdlpath }} --- - name: mysql install repo yum: name="{{ sqlrepo }}" ■/playbook/roles/1_apache/tasks/main.yml ■/playbook/roles/2_php/tasks/main.yml ■/playbook/roles/3_mysql/tasks/main.yml ■/playbook/lamp.yml ① ② ③ 「Lamp.yml」からの呼び出しが可能になる
10.
8.プロビジョニング Section 1 Ansibleサーバより実行されたプレイブック(Lamp.yml)がAPPサーバに対して APPServerAnsibleServer Playbook(lamp.yml)実行 ----------------------------- ・Apache,PHP,Mysql
Install ・HTMLCode Move ・Setting Port:22 実行コマンド ansible-playbook –i /playbook/hosts /playbook/lamp.yml プロビジョニングを行い、ApacheInstallから始まる作業を自動化する
11.
8.プロビジョニング Section 1
結果 http://<AWS Publicip>/makehtml2/0_main.html DocumentRoot : /var/www/html http://<AWS Publicip>/counter.php プロビジョニング実行後、APPサーバにはLAMPの環境が構築されており、サーバログイン なしでWEBアクセスが可能になる
12.
9.プロビジョニング Section2 実践 Section1にて構築した環境をもとにさらにフレームワークを導入し、LAMP+Laravelの環境に変更。 同時にAPPのインストールも行う APPServerAnsibleServer Playbook実行 ----------------------------- ・Laravel
Install ・PHPCode Move ・Setting Port:22 実行コマンド ansible-playbook –i /playbook/hosts /playbook/lamp.yml
13.
9.プロビジョニング Section2 結果 http://<AWS
Publicip>/makehtml2/0_main.html DocumentRoot切り替えにより 表示も切り替える DocumentRoot : /var/www/html http://<AWS Publicip>/counter.php DocumentRoot : /laraishi/public http://<AWS Publicip>/attendances
14.
10.まとめ Apache Install &
Edit PHP Install & Edit Mysql Install & Edit App Install Database Edit OS Install & Edit AWS Code(Section1) Laravel Install & Edit Laravel App Install Code(Section2) Section1と2の作業を手作業で行うと環境+8個のタスクが発生するがAWSとAnsibleを使用する ことで3つのタスクに減らし、物理環境の準備も必要ない Lamp.ymlの編集でSection1と2を 一つにまとめることも可能。
15.
10.まとめ ■AWSを使えば自宅でも外でも簡単に検証環境が作れます! 物理環境で必要だったマシンの確保、OSのセットアップ等の作業から解放 され、コスト的にも時間的にもより効率的な環境が作成できます。 ネット環境があれば取り合えず何とかなります。 ■Ansibleを使えば面倒なインフラ作業から解放されます! プレイブックを保存しておくことで、破損したときの復旧も簡単です。 またコード化して一斉に展開することで一度に大量のサーバに対してもオペミス もなく効率的に結果を出すことができます。
16.
--- - name: Playbook
LAMP become: yes hosts: [lamp] roles: #step 1 apache+php - 1_apache - 2_php - 3_mysql #step 2 laravel - 4_laravel - 5_app 補足:プレイブック内容 /playbook/lamp.yml
17.
[lamp] ip-XXX-XX-XX-XXX 補足:プレイブック内容 /playbook/hosts
18.
--- ansible_ssh_user: ec2-user ansible_ssh_private_key_file: /home/ec2- user/.ssh/hogehoge_1005.pem ansible_ssh_port:
22 ansible_connection: ssh ### Apache ### httpdgroup: www httpdir: /var/www filesrc: /playbook/roles/1_apache/file/ filedest: /var/www/html 補足:プレイブック内容 /playbook/group_vars/ lamp.yml(1) (1)~(4)まで結合して一つの ファイルとして作成する
19.
### PHP ### phpapp:
counter.dat phpcode: "{{ filedest }}/{{ phpapp }}" libpkg: - 'libmcrypt' - 'libtool-ltdl' - 'libtidy' - 'libXpm' - 'libtiff' - 'gd-last' - 'autoconf' - 'automake' pkglist: - 'php' - 'php-opcache' - 'php-mbstring' - 'php-mcrypt' - 'php-pecl-apc' - 'php-gd' - 'php-mysqlnd' - 'php-xml' 補足:プレイブック内容 /playbook/group_vars/ lamp.yml(2) (1)~(4)まで結合して一つの ファイルとして作成する
20.
repfile: /etc/php.ini defstr: "^;date.timezone
=" replacestr: "date.timezone = Asia/Tokyo" ### mysql ### sqlrepo : http://dev.mysql.com/get/mysql-community- release-el6-5.noarch.rpm apkg: - 'mysql' - 'mysql-devel' - 'mysql-server' - 'mysql-utilities' svc: mysqld svcstate: started svcauto: yes root_db_password: root dbtemp: /playbook/roles/3_mysql/template/ dbdir: /dbbackup dbsrc: /playbook/roles/3_mysql/file/ dbbk: hogehoge.sql dbname: hogehogeDB 補足:プレイブック内容 /playbook/group_vars/ lamp.yml(3) (1)~(4)まで結合して一つの ファイルとして作成する
21.
### laravel ### dl:
https://getcomposer.org/installer composer: /usr/bin/composer pjdir: /laravel httpdfile: /etc/httpd/conf/httpd.conf httpcode: - { regexp: 'DocumentRoot "/var/www/html"' ,replace: 'DocumentRoot "{{ pjdir }}/public"' } - { regexp: '<Directory "/var/www/html">' ,replace: '<Directory "{{ pjdir }}/public">' } 補足:プレイブック内容 /playbook/group_vars/ lamp.yml(4) (1)~(4)まで結合して一つの ファイルとして作成する
22.
--- - name: apache
Update Repo yum: name=* state=latest - name: apache Install DeveloperTool yum: name="@Development tools" - name: apache Install VIM yum: name=vim - name: apache Install Apache yum: name=httpd - name: apmache Make {{ httpdgroup }} Group group: name={{ httpdgroup }} - name: apache {{ ansible_ssh_user }} www appeded shell: usermod -a -G {{ httpdgroup }} {{ ansible_ssh_user }} - name: apache www Permission file: path={{ httpdir }} group={{ httpdgroup }} mode=2775 state=directory - name: apache /www Subdirectory Permission shell: find /var/www -type d -exec sudo chmod 2775 {} ; - name: apache /www Subdirectory Permission shell: find /var/www -type f -exec sudo chmod 0664 {} ; - name: apache Make PHP Dir file: path={{ filedest }} state=directory - name: apache PHP File Transfer copy: src={{ filesrc }} dest={{ filedest }} - name: apache PHP File ACL Change file: path={{ phpcode }} mode=606 - name: apmache Enable htaccess replace: dest=/etc/httpd/conf/httpd.conf regexp='AllowOverride None' replace='AllowOverride All' 補足:プレイブック内容 /playbook/roles/1_apache/ tasks/main.yml
23.
--- - name: php
install repo yum: name=http://rpms.famillecollet.com/enterprise/remi-release- 6.rpm - name: php install phprepo yum: name={{ item }} disablerepo=amzn-main enablerepo=epel with_items: - 'libwebp' - name: php install phplib yum: name={{ item }} with_items: - "{{ libpkg }}" - name: php install php yum: name={{item}} disablerepo=amzn-main enablerepo=remi- php70 with_items: - "{{ pkglist }}" - name: php setting timezone replace: > dest="{{ repfile }}" regexp="^;date.timezone =" replace="date.timezone = Asia/Tokyo" 補足:プレイブック内容 /playbook/roles/2_php/ tasks/main.yml
24.
--- - name: mysql
install repo yum: name="{{ sqlrepo }}" - name: mysql install repo mysql yum: name="{{ item }}" state=present with_items: - "{{ apkg }}" - name: install mysql python module (from source) when: ansible_distribution == 'Amazon' # Amazon Linux AMI command: 'bash -lc "{{ item }}"' with_items: - 'cd /usr/tmp && wget http://download.sourceforge.net/sourceforge/mysql-python/MySQL-python-1.2.3.tar.gz' - 'cd /usr/tmp && tar xvzf /usr/tmp/MySQL-python-1.2.3.tar.gz' - 'cd /usr/tmp/MySQL-python-1.2.3 && python setup.py build' - 'cd /usr/tmp/MySQL-python-1.2.3 && python setup.py install' - 'rm -rf /usr/tmp/MySQL-python*' - name: apache restart service: name=httpd state=restarted - name: mysql start mysql service: name="{{ svc }}" state="{{ svcstate }}" enabled="{{ svcauto }}" #- name: mysql user setting # command: mysqladmin -u root password {{ root_db_password }} # mysql_user: name=root host={{ inventory_hostname }} password={{ root_db_password }} priv=*.*:All,GRANT - name: rootパスワード設定 mysql_user: name=root password={{ root_db_password }} login_user=root login_password={{ root_db_password }} check_implicit_admin=yes - template: src={{ dbtemp }}.my.cnf.j2 dest=/root/.my.cnf owner=root mode=0600 - name: WorkingDir make file: path={{ dbdir }} state=directory - name: Move DBBackup copy: src={{ dbsrc }} dest={{ dbdir }} - name: DB Create mysql_db: name={{ dbname }} state=present - name: DB Import mysql_db: name={{ dbname }} state=import target={{ dbdir }}/{{ dbbk}} 補足:プレイブック内容 /playbook/roles/3_mysql/ tasks/main.yml
25.
補足:プレイブック内容 /playbook/roles/ 4_lalavel/tasks/main.yml --- - name: laravel
composer Install shell: curl -sS "{{ dl }}" | php - name: mv composer.phar /usr/bin/composer shell: mv composer.phar "{{ composer }}“ - name: Project Make shell: composer create-project laravel/laravel {{ pjdir }} --prefer-dist - name: laravel httpd_conf replace: dest="{{ httpdfile }}" regexp="{{ item.regexp }}" replace="{{ item.replace }}" backup=yes with_items: - "{{ httpcode }}“ -name: hogehoge shell: chmod -R 777 {{ pjdir }} - name: apache restart service: name=httpd state=restarted
26.
補足:プレイブック内容 /playbook/roles/ 5_app/tasks/main.yml --- - name: App
Install file: path=/laravel state=absent - name: App Install unarchive: src=/playbook/roles/5_app/file/laravel.tar.gz dest=/ - name: App Install command: chmod -R 777 /laravel
Baixar agora