合格体験記 LPIC201(ver4.5)
ども。先月LPIC202に合格したよ!っていう記事を書いたのですが、本日LPIC201に合格したので同じように誰かの参考になればと書いていきます。
普通201,202と攻めていくのですが、なぜ逆かというと201は以前合格したのですが、有効期限(5年)が切れていて、そのことをすっかり忘れていたためになります。5年って早いね!ちなみに101と102も期限切れてるよ!
受験日
2017/12/3
取得点
590
勉強期間
3週間(一日平均2時間くらいでトータル5,60時間くらい)
使用テキスト
無し
参考にしたサイト(Web問題集)
勉強方法
各セクションのPing-tの問題をまずは解く。大抵わからないので、解答をしっかり読む。出てきたコマンドの内、今まで使ったこと無いやつについては、AWSの無料枠を利用して実際にコマンドを打って結果を確認する。…をひたすら繰り返しました。(Ping-tのコマ問については未実施)
AWSはAmazon LinuxとRed Hatを主に使ってましたが、デフォルトでは入っていないコマンドが結構あり、その都度しらべてyumでインストールしてました。入ってなくて、インストール方法がわからない場合は机上での勉強のみです。
所感
実際に動作を確認できたコマンドについては理解が進むのですが、以前書いたとおりAWS上だと実行不可と思われるコマンド(ブートローダとか、無線コマンドとか)については理解がイマイチで点数も取れていませんでした。。。
特にカーネルの項目が壊滅的だったので、復習します。
今後
というわけで、理解がイマイチだったところは復習しつつ、期限が切れてたLPI101,102を勉強していきます。今年中に取れればよいなぁ。
Linuxの無線デバイス/インターフェイス設定コマンドまとめ
ども。LPIC201の学びで、ディスク周りは一通り終わって今度はネットワーク周りで遊んでいる昨今です。
んで、無線周りのコマンドがAWSでは触れなくて、理解がイマイチなのでカーネルの時と同じくGoogleスプレッドシートにてチートシート的なものを作成したので公開しときます。
iwコマンドについてGoogle先生とかに聞いてみたのですが、なかなか良い感じの解説がないですね。。。良いサイトがあれば誰か教えてください。
参考にしたサイト
【AWS】EBSでRAID1+0をやってみたメモ ~後編:EBSのアタッチからRAID構築~
ども。前回はRAIDってなんぞや?について書きましたが、今回は実際にAWS触ってRAIDを組んで行きたいと思います。
EC2インスタンス作成
なにはともあれ、AWSコンソールにログインしてEC2インスタンス(仮想サーバ)を作成。ここら辺の手順は端折ります。今回のOSははAmazon Linuxを指定。
作成前のディスク状態をlsblkコマンドで確認。ディスクはxvdaのみ存在します。
EBS作成
EBS(Amazon Elastic Blok Store)とは何かと言うと、要は外部ディスクですね。EC2インスタンスに対してAWSコンソール上で簡単にアタッチ(接続)/デタッチ(切断)できるとのこと。
EC2インスタンス作成時に、複数EBS作ることもできるのですが、今回は後から作成してみました。
N個のボリュームをクリック
ボリュームの作成をクリック
サイズを1GiBに変更し、ボリュームの作成をクリック
※ 注意!EBSサイズの合計が30GiBを超えると無料枠外となり料金が発生します。
できました。これを後3回繰り返します。
EBSアタッチ(接続)
では、作成したEBSをEC2インスタンスに接続します。
対象のEBSを選択後、右クリックし「ボリュームのアタッチ」をクリック
インスタンス欄にて作成したEC2インスタンス名を選択しアタッチをクリック
これを、作成したEBS全てに行います。
再度lsblkコマンドで確認
ディスクが増えました!
mdadmコマンドインストール
以下コマンドでRAID管理用のコマンドをインストール…と思ったら既にAmazon Linuxには入っていました。昨日Red Hatで試したときは入ってなかったんですがね。ない場合は適時入れましょう。
sudo yum -y install mdadm
RAID1(ミラーリング)設定
では、ようやくRAIDを組んでいきます。まずは以下コマンドでEBSを2づつミラーリングしていきます。今回は、/dev/xvdgと/dev/xvdiでミラーリング。
sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/xvdg /dev/xvdi
ブートデバイスとして適してないです的なメッセージが出ますが、ブートデバイスでは無いので「y」を入力すると作成できました。続いて残りの/dev/xvdhと/dev/xvdfも同じコマンドでミラーします。
sudo mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/xvdh /dev/xvdf
lsblkコマンド実行結果。それぞれのディスクがmd0,md1に属してます。
「/proc/mdstat」ファイルをcatするとRAID情報が見れます。
これで、それぞれのディスクでRAID1が組めました。
RAID0(ストライピング)設定
では最後に作成したRAID1のデバイスである「/dev/md0(xvdgとxvdiのペア)」と「/dev/md1(xvdfとxvdhのペア)」でRAID0(ストライピング)を組みます。
sudo mdadm --create /dev/md2 --level=0 --raid-devices=2 /dev/md1 /dev/md0
md0とmd1はRAIDアレイですよとのメッセージが出てきたのでyを入力。無事作成できました。
mdstatファイルは以下のようになりました。md0とmd1でRAID0が組めていることが確認できます。
ファイルシステム作成
作成したRAID0のディスクを実際に使っていきます。
sudo mkfs -t ext4 /dev/md2
マウントしてサイズ確認1GiBのEBS4本をRAID1+0したので、サイズは2.0Gになりましたね。
というわけで、RAID1+0できました。眠いので自動マウント設定と、パフォーマンスチェックはまた後日に行いたいと思います。
参考にしたサイト
【AWS】EBSでRAID1+0をやってみたメモ ~前編:そもそもRAIDって何?~
ども、昔合格したはずのLPIC201について再度学習中ですが、5年以上前に学んだこととか全然覚えてませんね。
というわけで、LPIC201の試験範囲であるLinuxのRAIDについて学んでいきます。前はたしかVMwareにCentOSとか入れてガチャガチャ弄った記憶がありますのが、今回はAWS使って学びますよ。
そもそもRAIDって何?についておさらい
まぁ、なんというか「ディスク管理の基礎」的な扱いのRAIDについてですが、改めて自分の言葉で書いたりすると理解が深まったり、間違ってたら指摘頂けるかもしれない感じもするので、おさらいも兼ねて書いてみます。このブログの趣旨でもありますしね。
ちゃんとした情報が知りたい人はQiita先生やGoogle先生にでも聞きましょう。
RAIDの目的
RAIDの目的は大きく分けて「ディスクへのアクセス高速化」と「ディスク障害の耐性強化」の2つあります。んで、そのどちらか、又は両方のパフォーマンスを上げるために色々な方法が考えられていて、方法ごとに0から始まる番号が振られています。
尚、「0」が「ディスクへのアクセス高速化」の為の方法で、「1」以降の番号は「ハード障害の耐性強化」の方法になります。「0」だけ特殊。
ちなみに今、RAIDの番号って「0」から始まって…何まであるんですかね。少なくとも2017/11/22現在のWikipediaだと「6」についてまで記載がありました。Google先生に「RAID7」とか聞いてみても30万件以上Hitします。僕のお仕事上触ったことあるのは「0」,「1」,「5」だけで、「6」も割と使われているらしい。
RAID0(ストライピング)
では、具体的なRAIDについてざっくり書いていきます。RAID0だけ他の番号と違って「ディスクへのアクセス高速化」のみの役割を担っています。
高速化についてそもそもの話で「ディスクめちゃくちゃ遅い」問題があります。SSDとかディスクの高速化が目覚しい昨今でありながら、Qiita先生によると2016年時点でディスクはメモリより1000倍は遅いらしい。
1000倍って言われるとよくわからないので単純な距離に例えると、ディスクが東京から名古屋まで行ってる間に、メモリは月面に到着しています。余計わかりません。とにかく、ディスクめっちゃ遅い。
なので、メモリが高速で書き込もうとしても、ディスクが遅すぎるせいで待ちになっちゃうんですね。その問題を解決…というかマシにする為に生まれたのがRAID0です。
その方法というのが、「ディスクを増やしてアクセスを分散させる」です。遅いのなら数を増やして仕事を分割させればいいじゃない…ということですね。感覚的にもイメージしやすいかと思います。
メリット
というわけで、メモリが早すぎるおかげでディスクを増やせば増やすほどアクセスが早くなります。後、こちらは副次的な効果だと思うんですが、上図でいうと3本のディスクを1本のディスクとして扱えるため、容量の少ないディスクしかなくてもRAID0で合わせれば、大容量のディスクを作れます。
デメリット
当然デメリットもあって一言で言うと「壊れやすくなる」です。複数のディスクを一つのディスクとして見なすRAID0ですが、そのディスクの内どれか一つでも壊れると使用不可になります。
なので、早くなるメリットは大きいんですが、なかなかRAID0単体で使うことはないんじゃないかなぁと思います。
RAID1(ミーラーリング)
続いてRAID1のミラーリングについて書いていきます。こちらはRAID0とは違って、「ディスク障害の耐性強化」が目的になります。
そもそもの話で「ディスクはいつか絶対に壊れる」問題があります。まぁ、ディスクだけに限らずハード全般に言える話ですが…。なので、いつかディスクが壊れてもシステムに影響出ないようになんとかしよう…というのがRAID1以降(0以外)の考えとなります。
んで、RAID1はミラーリングって言うくらいなので、ディスクに書き込む際、同じ情報2つ以上のディスクに書き込むことで、ミラーディスクを作成します。
メリット
RAID1で構成するディスクは2本以上で可能なので、RAID0とは逆に「ディスクを増やせば増やすほどディスク障害の耐性が増す」になります。3本で構成すれば2本まで壊れてもシステムに影響はでませんね。
デメリット
デメリットですがミラーを作るわけなので、「いくらディスクを増やしても1台分の容量しか使えない」です。100GBのディスクを3本用意したとして、RAID0なら300GB使えますが、RAID1だと1台分の100GBしか使えません。
また、複数のディスクに書き込みに行くわけなので、その分のリソースが余計にかかり、アクセス速度が低下します。(少なくとも早くはなりません)
RAID1+0について
ようやく今回やりたいRAID1+0についてですが、端的に言うとRAID0と1をかけ合わせて、「ディスクへのアクセス高速化」と「ディスク障害の耐性強化」の両方を実現したいというのが今回の目的です。実際の手順は後編で…。
雑なイメージですいません。以下の記事が分かりやすかったです。
https://note.cman.jp/server/raid/raid01/
後、細かいですが、RAID0+1とRAID1+0とでは、「ストライピングのグループをミラーする」のか「ミラーのグループをストライピングする」のかとで意味が異なるみたいです。同人誌の掛け算(カップリング表示)みたいですね。
その他のRAIDについて
書き始めの頃はRAID5についても書こうかと思っていたのですが、長くなったのと疲れたのと(おい)、AWSではRAID5,6は非推奨みたいなのでここでの記述は割愛します。
Linux での RAID 構成 - Amazon Elastic Compute Cloud
そもそも、AWSのハードウェアは内部で障害に強い造りになっているので、RAIDは書き込みを高速化させるために「0」が選ばれることが多いとのこと。「Amazon Web Services 実践入門」に書いてました。
SSDの障害について
余談ですが、SSDはフラッシュメモリを使用しているため、中で円盤が回っているHDDより壊れにくい印象がありますがググってみると結構壊れた事例が出てきますね。
Intel製SSDのX25-M(80GB)が壊れた、その前兆と修理までの軌跡 - consbiol のエコ日記
壊れ方(予兆)もHDDとは少し異なるよう。仕事ではHDDのサーバしか扱ったことがないので、SSDが主流になってきたら切り分けに難儀しそうだなぁと思いました。後、RAIDコントローラーは上手いこと自動対応してくれるんだろうか…。こちらは今後の課題とします。
Linuxブートローダ チートシート
どうも。寒いですね。
以前「LPI Level2 Exam 202」の試験に合格した記事を書いたのですが、なんと過去に合格した201以下の期限が切れていたみたいなので、再度勉強中な昨今です。
んで、201のブートローダについて勉強しているのですが、残念ながら僕的にはあまり興味を惹かれず、全然頭に入ってこない上に、GRUB LegacyとGRUB2の差異がややこしすぎるので、Googleスプレッドシートにてチートシート的なものを作ったので公開します。
随時更新予定。間違とか指摘いただけると嬉しいです。
参考にしたサイト
http://www2.it-shikaku.jp/top30.php?hidari=101-02-02.php&migi=km101-02.php&bk=1
http://www.turbolinux.co.jp/products/server/11s/user_guide/x395.html
http://www.turbolinux.co.jp/support/document/knowledge/277.html
続・AWSで無料枠内利用しているつもりなのに料金が発生した件の原因と対応
以前の記事で、普段使っている東京リージョンとは別リージョンでElastic IPを開放していなかったために料金が発生したことを書きましたが、また別の理由で料金が発生してしまったので残しておきます。
というわけで、請求項目は以下になります。10月に3$程請求がきました。
$0.12 per GB-month of General Purpose SSD (gp2) provisioned storage - Asia Pacific (Tokyo)
原因
EC2インスタンスを複数作成したことにより、Amazon EBS汎用SSD(gp2)ボリュームの利用が月間で30GBを超えていたため。
今回、LPIC 202の学習にあたりAWSでWebサーバやDHCPサーバ等を、プロダクト毎にEC2インスタンスを作成して遊んでいたのですが、そちらがアダになりました。
EC2インスタンスをAmazon Linuxで作成した場合、SSDはデフォルトで8GBが割り当てられます。今回EC2インスタンスを未使用時は基本停止していたのですが、5つ程作成して放置していたため、SSDの使用量が月40GB(5×8GB)となり、無料枠を超えてしまいました。
対応
不要なEC2インスタンスを削除する。
というわけで、不要なインスタンスを全て削除しました。いまのところ11月は無料枠内の使用で収まっています。今後、SSDをデフォルト(8GB)で割り当てる場合は、EC2インスタンスの総数を3つまでに納める。3つ以上作るときはSSDの割当量を少なくするを心掛けたいと思います。
まぁ、分かってしまえば、なんとも間抜けな話なのですが、EC2インスタンスを複数作っていても、稼働さえさせていなければ良いと勝手に思ってしまってました。。。
他にも利用を進めると無料枠を超えることが起こり得ると思うので、上記対応に加えて、請求を細かくチェックするのも大事かなぁと思います。
以上。
合格体験記 LPIC202 (ver4.5)
どうも。お久しぶりな更新となります。
時間が経つのは早い早い。
というわけで唐突ですが、ここしばらくお勉強していたLPIC202 ver4.5(LPI Level2 Exam 202)に合格したので、誰かの参考になればと体験記的なものを残しておきます。
受験日
2017/11/5
取得点
500点(合格ライン500点。超超ギリギリ合格…)
勉強期間
3週間(一日平均2~3時間くらいなので5,60時間くらい)
使用テキスト
※ 勉強開始時点では黒本、あずき本はLPICレベル2 Ver4.0のものしか出ていなかったので、そちらを使用。Ping-tがあれば黒本は購入する必要は無いと思います。
参考にしたサイト
勉強方法
あずき本の内容をざっくり一読。黒本の問題を一通り解く。その後、Ping-tのWeb問題をひたすら解き続ける。
休日は上記に加え、Amazon Web Serviceの無料枠を利用して、以下プロダクトをLinux上に実際に導入し設定を色々イジってみて動きを確認する。(加えてNFS接続も)
・Apatch(Webサーバ)
・Squid(プロキシサーバ)
・Samba(Windowsとのファイル共有サーバ)
・OpenLDAP(ディレクトリサーバ)
その他のプロダクトについては机上での勉強のみ。
所感
黒本、及びPing-tのWeb問題集についてはほぼ100%解ける状態で挑みましたが、超ギリギリ合格となりました。
LPICレベル2は2017/2/13にver4.0からver4.5に変わりました。今までは十分にver4.5に対応した参考書、問題集が無い状態だったのですが、ようやく10/24にPing-tがver4.5に対応したとのことで、そちらをガッツリ取り組みました。が、正直これだけだと確実に合格するレベルまで持っていくのは厳しいと思います。
ver4.0時代に評判のよかったスピードマスター問題集が10/30に発売されたみたいなので、そちらと合わせればなんとかなるかもしれません…が、こちらは使用していないのでなんとも。
後、選択問題以外にも、コマンドや設定項目を記述式(タイピング)で問われる問題が7問程度出題されていたので、問題で出てくるコマンド、設定項目は記述できるレベルまで覚えて挑んだほうがよいです。選択式なら確実に解るんだけど、スペルが怪しくてたぶん何問か落としました。
今後
実機で触れなかったBIND(DNS)とDovecot(メールサービス)が、分かりやすく点数取れてなかったので少し復習と、やはり実機に入れてみて触ってみようと思います。