#author("2021-09-21T02:00:02+00:00;2021-06-18T05:56:13+00:00","","") #author("2021-09-21T02:00:25+00:00;2021-06-18T05:56:13+00:00","","") [[第1回]] * AWSハンズオン [#dfdc73e1] ** 目標 [#kd8c588b] - Amazon Web Services (AWS) の概要を学ぶ - AWS上に自分用のEC2サーバを作成する - EC2サーバ上にWebアプリをデプロイできる環境を構築する ** テキスト [#k3a4b98d] - AWSハンズオン &attachref(AWS_handson.pdf); *** rLoginのダウンロード [#a343df7c] - ec2にsshでログインする際に便利なクライアント - 以下の.exeをC:\rlogin\ フォルダに保存する -- https://drive.google.com/file/d/1RgvyK3CNM_pub7cpb-sIzbniWPVHV8K9/view?usp=sharing *** 余裕がある人はこちらも [#f2623d96] - ハンズオン3 &attachref(AWS_handson_ELB.pdf); - AWSシステム開発 &attachref(AWS_system.pdf); ** AWSコンソールへのアクセス方法 [#yf377f9c] + [[AWS Educate:https://aws.amazon.com/jp/education/awseducate/]]にサインインする -- 招待メールからアクティベートしたアカウントで入ること + 青いボタン[My ClassRoom]を押す + ''Cloud System Development Exercise''を確認し,Go to classroom を押す + Vocariumのページが出たら,水色のボタン ''AWS Console'' を押す + AWSコンソールが開く ** テスト用Webアーカイブ [#xd74224b] *** ハンズオン1 [#e35f9474] - &attachref(sample_html.zip); *** ハンズオン2 [#sd7f89ec] - &attachref(demo.war); - &attachref(cs27ch.war); * Webアプリ環境構築 [#ac6a3347] - インストールはEC2上でroot権限が必要です $ sudo su # *** Java11のインストール [#td075073] - yum であっさりと入る # yum install -y java-11 *** ポート8080を開放する [#kac0f343] - AWSコンソールを操作して,Tomcatが使用するポート8080を開放する - 左メニュー→セキュリティグループ→launch-wizard-.. をクリック - 「インバウンドルールを編集」をクリック - 「ルールを追加」で以下のルールを追加し,「ルールを保存」 カスタムTCP TCP 8080 0.0.0.0/0 *** Tomcat9のインストール [#g5704bd1] - 作業用に/tmpに移動 # cd /tmp - FTPサイトからtar ballをダウンロード # wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.46/bin/apache-tomcat-9.0.46.tar.gz - 解凍して,/usr/tomcat に移動 # tar zxvf apache-tomcat-9.0.46.tar.gz # mv apache-tomcat-9.0.46 /usr/tomcat - ユーザtomcat,グループtomcatを作成./usr/tomcat の権限を設定 # groupadd tomcat # useradd -r tomcat -s /bin/false -g tomcat # chown -R tomcat.tomcat /usr/tomcat - viテキストエディタで,サービスユニットファイル /etc/systemd/system/tomcat.service を作成 # vi /etc/systemd/system/tomcat.service - iを押して,下記の内容をマウスでコピペ [Unit] Description=Apache Tomcat After=network.target [Service] Type=forking Environment=CATALINA_PID=/usr/tomcat/temp/tomcat9.pid Environment=JAVA_HOME=/etc/alternatives/jre-11 Environment=CATALINA_HOME=/usr/tomcat Environment=CATALINA_BASE=/usr/tomcat Environment="CATALINA_OPTS=-Xms512m -Xmx1G" Environment="JAVA_OPTS=-Dfile.encoding=UTF-8 -Djava.awt.headless=true" ExecStart=/usr/tomcat/bin/startup.sh ExecStop=/usr/tomcat/bin/shutdown.sh User=tomcat Group=tomcat [Install] WantedBy=multi-user.target - ESCを押して,Shift ZZ でセーブ→終了 - サービスを起動 # systemctl start tomcat - ブラウザで8080ポートにアクセスしてみる.Tomcatの画面が出ればOK. -- http://ec2-xx-yyy-zzz-www.compute-1.amazonaws.com:8080/ -- &attachref(./tomcat-screen.png,30%); - サービスを永続化しておく # systemctl enable tomcat *** MySQLのインストール [#rf412d33] - デフォルトで入っている,mariadb-libを削除しておく # yum remove mariadb-libs - /tmpに移動 # cd /tmp - MySQLの公式から,Community Edition のリポジトリを取得し,インストール. # yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm - y を押し,Enterキー - インストールしたリポジトリから,本体をインストール # yum install -y mysql-community-server - mysqldを起動する # systemctl start mysqld - 状態を確認する # systemctl status mysqld - OKなら永続化する # systemctl enable mysqld - 設定ファイル /etc/my.cnf をviで編集 # vi /etc/my.cnf - iを押して,行末に下記をコピペ. : # ここから追記分 validate_password.policy=LOW validate_password.length=4 character-set-server = utf8mb4 [client] default-character-set = utf8mb4 - ESCを押して,Shift ZZでセーブ,終了. - サーバをリスタート # systemctl restart mysqld - MySQLの初期rootパスワードを確認し,テキストエディタ等に張り付けておく # cat /var/log/mysqld.log : ↓こんなやつ [Server] A temporary password is generated for root@localhost: sMv(>%M*P32r : - MySQLのrootパスワードを変更する # mysql -u root -p Password: (さっき確認したパスワード) : mysql > alter user 'root'@'localhost' identified by '覚えやすいパスワード'; mysql > exit - rootでMySQLに入れるか確認する # mysql -u root -p Password: 変更後のパスワード * AWS Educate で使用できるEC2インスタンスと価格 [#za8c05a4] - https://aws.amazon.com/jp/ec2/pricing/on-demand/ *** t2: 汎用-ベースライン [#y8094fb1] - 用途: ウェブサイト,ウェブアプリ,開発,ビルド |インスタンス名|vCPU|メモリ|ネットワーク性能|1時間当たりUSD|h |t2.micro|1|1GB|低~中|0.0116| |t2.small|1|2GB|低~中|0.023| |t2.nano|1|0.5GB|低|0.0058| |t2.medium|2|2GB|低~中|0.0464| |t2.large|2|8GB|低~中|0.0928| |t2.xlarge|4|16GB|中|0.1856| |t2.2xlarge|8|2GB|中|0.3712| |t2.2xlarge|8|32GB|中|0.3712| *** m: 汎用-バランス [#fc8e83dc] - 用途: 小・中規模DB,SAP,バックエンドサーバ |インスタンス名|vCPU|メモリ|ネットワーク性能|1時間当たりUSD|h |m4.large|2|8GB|中|0.1| |m4.xlarge|4|16GB|高|0.2| |m5.large|2|8GB|10Gbps|0.096| *** c: コンピューティング最適化 [#a1c301cb] - 用途:フロントエンドフリート,ウェブサーバ,エンコーディング |インスタンス名|vCPU|メモリ|ネットワーク性能|1時間当たりUSD|h |c4.large|2|3.75GB|中|0.1| |c4.xlarge|4|7.5GB|高|0.199| |c5.large|2|4GB|10Gbps|0.085| |c5.xlarge|4|8GB|10Gbps|0.17|