第1回/AWSハンズオン/2020
の編集
https://cs27.org/wiki/kobespiral2021/?%E7%AC%AC1%E5%9B%9E/AWS%E3%83%8F%E3%83%B3%E3%82%BA%E3%82%AA%E3%83%B3/2020
[
トップ
] [
編集
|
差分
|
履歴
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
(no template pages)
[[第1回]] * 2020年度の内容(古い) [#s150d384] ** AWSハンズオン [#dfdc73e1] *** 目的 [#kd8c588b] - AWSのEC2の基本的な操作が出来るようになる - 今後アプリケーション開発を行う際にデプロイ先となるサーバを構築できるようになる *** 内容 [#ac893f6a] - EC2にWebアプリをデプロイできる環境を構築する *** 手順 [#u0256e75] - AWSにログイン -- https://kspiral.signin.aws.amazon.com/console --- ユーザ名:ks01~ks06 --- パスワード:wikiと同じ - EC2でt2.microインスタンスを立ち上げる -- すべてのサービスからEC2を選択 -- 【重要】 リージョンをアジアパシフィック (東京) ap-northeast-1 に変更 -- インスタンス→インスタンスの生成 -- ステップ 1: Amazon マシンイメージ (AMI) --- Amazon Linux 2 AMI (HVM), SSD Volume Type (x86) -- ステップ 2: インスタンスタイプの選択 --- t2.micro -- ステップ 3: インスタンスの詳細の設定 --- 基本的には全てそのままで問題無い -- ステップ 4: ストレージの追加 --- 標準(8Gib)でとりあえず -- ステップ 5: タグの追加 --- タブを追加で キー: Name 値:TAROU(自分の名前) -- ステップ 6: セキュリティグループの設定 --- 新しいセキュリティグループを作成する --- セキュリティグループ名に名前を含んだ適当なものを 例:SecurityGroup_taro -- ステップ 7: インスタンス作成の確認 --- 確認したら起動 -- キーペアの作成 --- 新しいキーペの作成→適当な名前 --- 【重要】キーペアは一度作成しダウンロードすると,二度と手に入らないので大事に保管する必要がある -- インスタンスの作成 - リモート管理 -- SSHによる操作 --- 先ほどダウンロードした鍵を使用 or Webコンソールから利用可能 --- とりあえずログイン画面にも出るように,最新状態にアップデートしよう(管理者の基本) $ sudo yum update -- Amazon Linuxについて --- CentOS7をベースにAWSを利用する上で必要な様々なコマンド群などを導入済み --- 標準ユーザとして ec2-user が割り当てられている.(パスワードは未設定.鍵のみでログイン可能) --- ※NICはVPCのアドレスを持っているのみで,グローバルIPは直接は持っていない.VPNのインターネットゲートウェイを通じグローバルIPで接続可能(標準動作) --- / 以下に全ての容量を割り当てられている - Webサーバ構築 -- [[Apache httpd:http://www.apache.org/]]をインストールする. --- パッケージマネージャ yum を利用する $ sudo yum install httpd -- 起動 --- systemctlを利用し,登録済みサービス(httpd)を起動.登録は上記インストーラの中で自動で行われている $ sudo systemctl start httpd -- 接続確認(つながらない) --- ブラウザで http://IPアドレス -- セキュリティグループで80番ポートを開放する -- 再度接続 --- Test Pageが見えたら成功 -- 公開HTMLの編集 --- /var/www/html 以下にファイルを置く.標準はindex.html $ sudo vi /var/www/html/index.html viが大変だったら,もちろんnanoとかでも問題ありません - Webアプリケーションサーバ構築 -- tomcat(と動かすためのJava)のインストール --- Amazon Linuxのための便利ツールで導入 $ sudo amazon-linux-extras install tomcat8.5 -- 起動 --- httpdと同様にsystemctlで $ sudo systemctl start tomcat -- セキュリティグループで8080番ポートを開放する -- 接続確認 --- 標準では何もページが無いので404(page not found)が返ってくる http://IPアドレス:8080 -- ※静的ページの配置 --- /usr/share/tomcat/webapps/ 以下に ROOTというディレクトリを作成し,その中にhtmlファイルを置けば公開可能 $ sudo mkdir /usr/share/tomcat/webapps/ROOT $ sudo vi /usr/share/tomcat/webapps/ROOT/index.html -- ※JDKについて --- AmazonはJDK11相当OpenJDKディストリビューションとして,[[Amazon Corretto:https://aws.amazon.com/jp/corretto/]]を公開している - DBサーバ構築 -- LAMP環境のインストール (MariaDB, PHP7) --- amazon-linux-extrasを利用 $sudo amazon-linux-extras install lamp-mariadb10.2-php7.2 --- なぜか クライアント機能だけインストールされるのでサーバもインストール.ただし上記をインストールした後で無いと古いものが入る. $sudo yum install mariadb-server -- 起動 --- systemctlを利用 $ sudo systemctl start mariadb -- 初期設定 --- 初期設定用スクリプトを実行 $ sudo mysql_secure_installation Enter current password for root (enter for none): (現在のパスワードは無し) Set root password? [Y/n] Y (rootのパスワードを設定する) New password: spiral (パスワード) Re-enter new password: spiral (パスワード再確認) Remove anonymous users? [Y/n] Y (匿名ユーザを削除するか) Disallow root login remotely? [Y/n] Y (rootのリモートログインを拒否するか) Remove test database and access to it? [Y/n] Y (テスト用データベースを消すか) Reload privilege tables now? [Y/n] Y (設定を今有効にするか) --- デフォルト文字コード指定 $ sudo vi /etc/my.cnf.d/mariadb-server.cnf [mysqld]セクション内に character-set-server = utf8 -- 設定を有効化 --- 再起動 $ sudo systemctl restart mariadb -- phpMyAdminの導入 --- WebブラウザからDBを操作することが出来るようになるPHPで書かれたWebアプリケーション --- httpd上に配備することで利用できる --- 事前準備:必要なライブラリのインストール $ sudo yum install php-mbstring --- httpd再起動 $ sudo systemctl restart httpd --- php-fpm再起動 $ sudo systemctl restart php-fpm --- phpmyadminのダウンロード $ wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz --- 展開 $ sudo tar xvf phpMyAdmin-latest-all-languages.tar.gz -C /var/www/html/ --- リネーム $ sudo mv /var/www/html/phpMyAdmin-5.0.2-all-languages /var/www/html/phpMyAdmin --- テンポラリディレクトリの作成 $ sudo mkdir /var/www/html/phpMyAdmin/tmp $ sudo chown apache:apache /var/www/html/phpMyAdmin/tmp --- 動作確認 http://IPアドレス/phpMyAdmin/ - Webアプリケーション公開 -- とりあえず試しにサンプルのWebアプリケーションをデプロイしてみる --- warファイルを/usr/share/tomcat/webapps/ に置くだけ --- 中村先生作,なんちゃって5ch:Gohchan --- https://github.com/KobeSpiral2020/AWS_HandsOn/blob/master/cs27ch.war をブラウザからダウンロード -- サーバへ転送 --- scp系ツールを利用 とりあえずホームディレクトリなどに(webapps以下においてもエラーで動かない) -- データベース準備 --- Database作成 cs27ch 新規作成 → データベース名:cs27ch --- Userの作成 spiral/spiral 特権 → ユーザアカウントを追加する ユーザ名:spiral パスワード:spiral --- アクセス権限の設定 -- デプロイ --- warファイルをwebapps以下に移動 $ sudo mv cs27ch.war /usr/share/tomcat/webapps/ --- 動作確認 http://IPアドレス:8080/cs27ch/ - EC2インスタンスの停止 -- AWSマネジメントコンソール --- インスタンス→インスタンスの状態→停止(もしくは終了) --- ※ec2インスタンスは終了すると消えてしまう(再利用不可) - ※自動起動 systemctl enable サービス名
タイムスタンプを変更しない
[[第1回]] * 2020年度の内容(古い) [#s150d384] ** AWSハンズオン [#dfdc73e1] *** 目的 [#kd8c588b] - AWSのEC2の基本的な操作が出来るようになる - 今後アプリケーション開発を行う際にデプロイ先となるサーバを構築できるようになる *** 内容 [#ac893f6a] - EC2にWebアプリをデプロイできる環境を構築する *** 手順 [#u0256e75] - AWSにログイン -- https://kspiral.signin.aws.amazon.com/console --- ユーザ名:ks01~ks06 --- パスワード:wikiと同じ - EC2でt2.microインスタンスを立ち上げる -- すべてのサービスからEC2を選択 -- 【重要】 リージョンをアジアパシフィック (東京) ap-northeast-1 に変更 -- インスタンス→インスタンスの生成 -- ステップ 1: Amazon マシンイメージ (AMI) --- Amazon Linux 2 AMI (HVM), SSD Volume Type (x86) -- ステップ 2: インスタンスタイプの選択 --- t2.micro -- ステップ 3: インスタンスの詳細の設定 --- 基本的には全てそのままで問題無い -- ステップ 4: ストレージの追加 --- 標準(8Gib)でとりあえず -- ステップ 5: タグの追加 --- タブを追加で キー: Name 値:TAROU(自分の名前) -- ステップ 6: セキュリティグループの設定 --- 新しいセキュリティグループを作成する --- セキュリティグループ名に名前を含んだ適当なものを 例:SecurityGroup_taro -- ステップ 7: インスタンス作成の確認 --- 確認したら起動 -- キーペアの作成 --- 新しいキーペの作成→適当な名前 --- 【重要】キーペアは一度作成しダウンロードすると,二度と手に入らないので大事に保管する必要がある -- インスタンスの作成 - リモート管理 -- SSHによる操作 --- 先ほどダウンロードした鍵を使用 or Webコンソールから利用可能 --- とりあえずログイン画面にも出るように,最新状態にアップデートしよう(管理者の基本) $ sudo yum update -- Amazon Linuxについて --- CentOS7をベースにAWSを利用する上で必要な様々なコマンド群などを導入済み --- 標準ユーザとして ec2-user が割り当てられている.(パスワードは未設定.鍵のみでログイン可能) --- ※NICはVPCのアドレスを持っているのみで,グローバルIPは直接は持っていない.VPNのインターネットゲートウェイを通じグローバルIPで接続可能(標準動作) --- / 以下に全ての容量を割り当てられている - Webサーバ構築 -- [[Apache httpd:http://www.apache.org/]]をインストールする. --- パッケージマネージャ yum を利用する $ sudo yum install httpd -- 起動 --- systemctlを利用し,登録済みサービス(httpd)を起動.登録は上記インストーラの中で自動で行われている $ sudo systemctl start httpd -- 接続確認(つながらない) --- ブラウザで http://IPアドレス -- セキュリティグループで80番ポートを開放する -- 再度接続 --- Test Pageが見えたら成功 -- 公開HTMLの編集 --- /var/www/html 以下にファイルを置く.標準はindex.html $ sudo vi /var/www/html/index.html viが大変だったら,もちろんnanoとかでも問題ありません - Webアプリケーションサーバ構築 -- tomcat(と動かすためのJava)のインストール --- Amazon Linuxのための便利ツールで導入 $ sudo amazon-linux-extras install tomcat8.5 -- 起動 --- httpdと同様にsystemctlで $ sudo systemctl start tomcat -- セキュリティグループで8080番ポートを開放する -- 接続確認 --- 標準では何もページが無いので404(page not found)が返ってくる http://IPアドレス:8080 -- ※静的ページの配置 --- /usr/share/tomcat/webapps/ 以下に ROOTというディレクトリを作成し,その中にhtmlファイルを置けば公開可能 $ sudo mkdir /usr/share/tomcat/webapps/ROOT $ sudo vi /usr/share/tomcat/webapps/ROOT/index.html -- ※JDKについて --- AmazonはJDK11相当OpenJDKディストリビューションとして,[[Amazon Corretto:https://aws.amazon.com/jp/corretto/]]を公開している - DBサーバ構築 -- LAMP環境のインストール (MariaDB, PHP7) --- amazon-linux-extrasを利用 $sudo amazon-linux-extras install lamp-mariadb10.2-php7.2 --- なぜか クライアント機能だけインストールされるのでサーバもインストール.ただし上記をインストールした後で無いと古いものが入る. $sudo yum install mariadb-server -- 起動 --- systemctlを利用 $ sudo systemctl start mariadb -- 初期設定 --- 初期設定用スクリプトを実行 $ sudo mysql_secure_installation Enter current password for root (enter for none): (現在のパスワードは無し) Set root password? [Y/n] Y (rootのパスワードを設定する) New password: spiral (パスワード) Re-enter new password: spiral (パスワード再確認) Remove anonymous users? [Y/n] Y (匿名ユーザを削除するか) Disallow root login remotely? [Y/n] Y (rootのリモートログインを拒否するか) Remove test database and access to it? [Y/n] Y (テスト用データベースを消すか) Reload privilege tables now? [Y/n] Y (設定を今有効にするか) --- デフォルト文字コード指定 $ sudo vi /etc/my.cnf.d/mariadb-server.cnf [mysqld]セクション内に character-set-server = utf8 -- 設定を有効化 --- 再起動 $ sudo systemctl restart mariadb -- phpMyAdminの導入 --- WebブラウザからDBを操作することが出来るようになるPHPで書かれたWebアプリケーション --- httpd上に配備することで利用できる --- 事前準備:必要なライブラリのインストール $ sudo yum install php-mbstring --- httpd再起動 $ sudo systemctl restart httpd --- php-fpm再起動 $ sudo systemctl restart php-fpm --- phpmyadminのダウンロード $ wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz --- 展開 $ sudo tar xvf phpMyAdmin-latest-all-languages.tar.gz -C /var/www/html/ --- リネーム $ sudo mv /var/www/html/phpMyAdmin-5.0.2-all-languages /var/www/html/phpMyAdmin --- テンポラリディレクトリの作成 $ sudo mkdir /var/www/html/phpMyAdmin/tmp $ sudo chown apache:apache /var/www/html/phpMyAdmin/tmp --- 動作確認 http://IPアドレス/phpMyAdmin/ - Webアプリケーション公開 -- とりあえず試しにサンプルのWebアプリケーションをデプロイしてみる --- warファイルを/usr/share/tomcat/webapps/ に置くだけ --- 中村先生作,なんちゃって5ch:Gohchan --- https://github.com/KobeSpiral2020/AWS_HandsOn/blob/master/cs27ch.war をブラウザからダウンロード -- サーバへ転送 --- scp系ツールを利用 とりあえずホームディレクトリなどに(webapps以下においてもエラーで動かない) -- データベース準備 --- Database作成 cs27ch 新規作成 → データベース名:cs27ch --- Userの作成 spiral/spiral 特権 → ユーザアカウントを追加する ユーザ名:spiral パスワード:spiral --- アクセス権限の設定 -- デプロイ --- warファイルをwebapps以下に移動 $ sudo mv cs27ch.war /usr/share/tomcat/webapps/ --- 動作確認 http://IPアドレス:8080/cs27ch/ - EC2インスタンスの停止 -- AWSマネジメントコンソール --- インスタンス→インスタンスの状態→停止(もしくは終了) --- ※ec2インスタンスは終了すると消えてしまう(再利用不可) - ※自動起動 systemctl enable サービス名
テキスト整形のルールを表示する