WIndowsをMacっぽく使うために入れるツール[WIP]

about

Web系のイケイケエンジニアたちは「Linuxがいい!」とか言ってBSD系のmacOSを使うが、SIerのエンジニアが与えられるのはどんなCPUの上でも動くWindowsである。
Windowsを武器に会社で戦うエンジニアがMacっぽくWIndowsを使うための知恵。随時更新中。

検索ツール

Wox + Everything

Macで一番強力な機能は個人的にSpotlightだと思っている。それをWindowsで再現するランチャーツールにWoxがある。
Woxは公式サイトからダウンロードできる。
検索は高速検索機能のEverythingを用いるため、フォルダをちまちま検索するより快適。
Pythonの実行環境が導入に必要なので注意。

TIPS

  • 一般Last Query StyleEmpty Last QueryにするとMacっぽい
  • ホットキーをctrl + spaceに設定するとほぼSpotlightになる
  • 検索結果で右クリックすると内包フォルダを開いたりするメニューが出る

キー配列

会社支給のPCは当然JIS配列である。英字キーとか支給される会社はMacも選択できるだろうから大人しくMacで仕事しろ。

Ctrl2cap

MS Technetからダウンロードしてインストールするだけで、capsをctrlに変更してくれるツール。
ダウンロードしたファイルを解凍したディレクトリでctrl2cap /installを実行するだけ。
ちなみにWIndowsではShiftキーを押しながら右クリックをすると、パスのコピーが出現する、便利。

IMEでMacJISっぽく変換する

簡単で、IMEのプロパティから変更できる。
無変換キーを割り当てを半角英数にすればok。人によっては変換キーをかなにする人もいるが、隣にかなキーあるから私はやらない。*1

Windows Subsystem for Linux (WSL)

ShellはWSL一択だろう。私は普通にUbuntuを入れている。WSLでの役立ちツールを紹介する。

wsl-open

Macのopenコマンド見たくファイルをエクスプローラーやアプリケーションから弄りたかったからこれを入れる。
node環境さえれば入る便利さ。いますぐnpm install -g wsl-open
エクセルファイルをPwsl-open hoge.xlsxしたらエクセルがちゃんと開くことに感激しろ。
私はalias open='was-open'にしている。

wsl-terminal

Windowsの標準プロンプトは如何せん見づらい。wsl-terminalwindowsでもかっこいいプロンプトを提供してくれる。使い方はダウンロードして展開するだけ。
設定ファイルの\wsl-terminal\etc\wsl-terminal.conf

shell=/usr/bin/zsh

とでも書いておけばzshで起動する素敵仕様。

*1:ちなみに筆者はhhkbを尊師スタイルで利用しており、hhkbキーにはctrlを設定している

モバイルルータでGoogle HomeやChrome Castが設定できない時に

背景と結論

Wi-Fiの設定はされているのに、HomeアプリからGoogle HomeChrome Castの設定ができなかった。
HomeアプリにはWi-Fiは接続されているが設定がおかしいから確認しろとしか出ない。 結論を言えばモバイルルータのWi-Fi経由でのファイル共有等が禁止する設定が働いていたためだった。
プライバシーセパレータを無効にすれば良い。

機種

601HW

解法

  1. ルータとのWi-Fi接続がされているスマホorPCでhttp://web.settingにアクセスする
    パスワードを求められるが、デフォルトのパスワードはadmin
  2. 「設定」→「LAN Wi-Fi」→「基本設定」と移動する
  3. 下の画像のように「プライバシセパレータを無効にする」 f:id:erudite:20181002235521p:plain

ド文系が理転してエンジニアになるまでに読んだ本10選

前書き

くそくそド文系だった私*1だが、大学ではなぜか情報系を専攻することになり、とても苦労した。以下に挙げる本のお陰で、今こうやってエンジニアとして就職できたと言っても過言ではない。
その時に勉強に使った本を書き残しておく。
なんとなくで情報系にきてしまった自分のような人のために。*2

本の紹介

私が独断と偏見でジャンル分けしたカテゴリで紹介していく。

思想と基礎の基礎

思想

魔法の世紀

ここは完全に趣味の領域なので、読み飛ばしてもらって構わない。
現代の魔性使いこと落合陽一の処女作。コンピュータの歴史から、コンピュータによって変革される社会と、落合陽一の提唱するデジタルネイチャーを説く。
情報系はいいものの、全く面白みを感じられなかった自分はこの本で、コンピュータの業績と可能性に夢を抱く。
この本を読むとコンピュータすげぇとなると同時に、サザーランドスゲェとなる。不真面目な私は計算機科学というイカした名前もこの本で知る。

魔法の世紀

新品価格
¥2,484から
(2018/9/18 21:59時点)

ちなみに初版はめちゃ貴重らしいが、私の蔵書は初版。

基礎の基礎

入門!論理学

私と同様に不真面目な情報系の学生は、なんで論理学かと思うかもしれない。
コンピュータは0, 1の信号で動いている以上、論理学と密接な関係がある。論理学ってド・モルガンの法則の使うんだってこの本でなった。
ちなみに私がこの本を買った理由は、萩野先生の論理学の授業においてかれたからだが、萩野さんの説明の方が分かり易かった。

入門!論理学 (中公新書)

新品価格
¥789から
(2018/9/18 22:04時点)

アルゴリズムを、はじめよう

コンピュータとアルゴリズムも密接な関係がある。
これまたド文系脳の自分がアルゴリズムとはなんぞやって言うのに役立った。
情報処理試験の対策にもなりそう。

アルゴリズムを、はじめよう

新品価格
¥1,814から
(2018/9/18 22:22時点)

プログラミング

Javascript

確かな力が身につくJavaScript「超」入門

もちろんプログラミングも全然できなかったので、入門書を読むたびに挫折していた。
そんな自分が理解しながら読破できた入門書がこれ。*3
これは本当に分かり易かった。

確かな力が身につくJavaScript「超」入門 (確かな力が身につく「超」入門シリーズ)

新品価格
¥2,678から
(2018/9/18 22:08時点)

お作法

リーダブルコード

みんなバカスカスカ手放しに絶賛するが、コードがある程度スラスラかけるようになってからでいい本。
チーム開発や、コードを人に読んで貰うとしたらって時のためのお作法が書いてある。

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

新品価格
¥2,592から
(2018/9/18 22:14時点)

Webとネットワークとセキュリティ

Web

ハイパフォーマンス ブラウザネットワーキング

Googleエヴァンジェリストが自社の知見を交えながら、Webサービスが私たちの届くまでのネットワークについて記した本。
最近Twitterで話題の

「ブラウザを立ち上げてアドレスバーにURL打ち込んでEnter押してからページが表示されるまでに (裏側で) 何が起こっているかわかる限り説明してみてください」

って奴はこの本読めばだいたい説明できるようになる。モバイルネットワークまで章立てがあって、ちょっとマニアック。
初めて通読したオライリ本。この本がなかったら途中で情報系やめてた気がする。
ちなみに英語版はタダで読めるし、内容がアップデートされている。

ハイパフォーマンス ブラウザネットワーキング ―ネットワークアプリケーションのためのパフォーマンス最適化

新品価格
¥4,320から
(2018/9/18 22:38時点)

ネットワーク

完全マスターしたい人のためのイーサネット&TCP/IP入門

多くの人がマスタリング TCP/IP進めると思うので、私はこれを進める。
マスタリングTCP/IPだとちょっと分からないって人はこっちがオススメ。こっちの方がネットワークがどうつながっているかにフォーカスして話が進む。
私はこの本でnetstatコマンドを初めて使った。

完全マスターしたい人のためのイーサネット&TCP/IP入門

新品価格
¥2,160から
(2018/9/18 22:47時点)

セキュリティ

暗号技術入門

めちゃくちゃわかりやすい暗号技術の本。読み物としても面白い。この本を読んでいなくても、情報系やめていたと思う。
公開鍵暗号とか、TLSとかPKIとか一度は聞いたことがあるセキュリティの話がわかるようになる。良書。Bitcoinについても説明があって、Bitcoinがなぜ暗号通貨と呼ばれるかもわかったり。

暗号技術入門 第3版

新品価格
¥3,240から
(2018/9/18 22:53時点)

コンピュータアーキテクチャ

コンピュータシステムの理論と実装

電子回路から作っていき、テトリスが動くコンピュータを作ろうという本。
学部の授業でOS系もハード系も履修しなかった私が、最低限のコンピュータアーキテクチャの知識を見につけるために読んだ。ボトムアップでコンピュータを作っていく過程を終えるので、なんとなくコンピュータの動作がわかるようになる。
実際にコンピュータを実装しながら進めるのだが、途中で挫折した苦い思い出もある。

コンピュータシステムの理論と実装 ―モダンなコンピュータの作り方

新品価格
¥3,888から
(2018/9/18 23:21時点)

文書作成

理転したということは、イコール卒業論文を書かないといけないことでもあった。
社会人になってもドキュメントや、仕様書の作成は付いて回る。
自分の考えを正確に相手に伝えるために以下の本を読んだ。

数学文章作法シリーズ

暗号技術入門と同じ結城浩先生の著書。平易な言葉と実例を交えて、正確で読みやすい・自分の考えを読者に伝える方法について指南される。
以前、このブログでも取り上げている。https://shuya.hatenablog.com/entry/2017/12/30/002222
指導教官を怒らせる前に、とりあえずは基礎編だけでも読んでおくことを進める。文章作成の作法がコンパクトに詰まっている。
推敲編を読むと、読みやすい文章作成のエッセンスをたくさん学ぶことができる。

数学文章作法 基礎編 (ちくま学芸文庫)

新品価格
¥1,026から
(2018/9/18 23:13時点)

数学文章作法 推敲編 (ちくま学芸文庫)

新品価格
¥1,026から
(2018/9/18 23:13時点)

まとめ

ここに挙げた本は、ひょんな事で理転をし、強い技術者・研究者に囲まれた研究室生活で、周りの人と会話をできるようになるために読んだ本である。
パソコンがわからなくて肩身が狭い思いをしている人の助けになれば。(そして私にアフィ収入が入れば本望である。)

*1:高校では数1Aしかやってなく、数2Bはビューティフルマインドの感想文を提出することで単位を得た。今思えば数学の教員の専攻が暗号だったからだろう。

*2:本当はアフィリエイトプログラムに通ったのでアフィアフィブログを書いてみたかったのだ

*3:JSなのは出身校ではJSを文理問わず必修でやるため

新卒が2週間で受かった情報処理安全確保支援士試験

TL;DL

自分が情報処理安全確保支援士試験に2週間で受かった勉強方法*1
結果的には午前2試験の勉強だけで合格した

背景

  • 前回の秋の試験で応用情報を取得
    • そのため午前試験は免除
    • IT系の資格試験の受験はこの応用情報だけ
  • 会社で昇進するために高度情報を2つ以上保有する必要があるので受験
  • 新人研修中だったので定時勤務*2
  • 大学は情報系でブロックチェーンで卒論
    • 新卒といってもバックグラウンドはあるから、知識的には入社2年目くらいかな?
    • そのため、試験範囲としてはPKIや暗号技術には理解があった

先に結果

みんなが知りたいであろう私の試験結果。

f:id:erudite:20180827000410p:plain

試験区分 点数
午前Ⅰ 免除
午前Ⅱ 88点
午後Ⅰ 64点
午後Ⅱ 85点

午後Ⅰ以外は8割以上といった感じ。
それもそのはず、午後試験の勉強をする時間がなかったからだ。
勉強法については後述。

使用教材

勉強に使用した教材は、会社から送付されたものと、自分で用意したものの3冊。
会社から送付されたテキストは知識の補強に使用した。

  • 自弁テキスト
    • 情報処理教科書 情報処理安全確保支援士 2018年版
      • 書店で一番分厚かったからコレを購入
      • これ1冊だけで、知識は網羅できる

情報処理教科書 情報処理安全確保支援士 2018年版

新品価格
¥3,110から
(2018/9/18 21:09時点)

  • 会社用意テキスト
    • 情報処理安全確保支援士 合格テキスト 2018年度
      • 知識の補強用に通読
    • 情報処理安全確保支援士 合格トレーニング 2018年度
      • 試験対策の本だが、肝心の午後試験の解説は読めず、110問あった午前試験だけ勉強

情報処理安全確保支援士 合格テキスト 2018年度 (情報処理安全確保支援士試験対策)

新品価格
¥3,024から
(2018/9/18 21:13時点)

情報処理安全確保支援士 合格トレーニング 2018年度 (情報処理安全確保支援士試験対策)

新品価格
¥2,808から
(2018/9/18 21:14時点)

知識の詰め込み

試験2週間前から勉強を始めたわけだが、9日使って知識の詰め込みを行った。だいたい平日に2時間、休日に5時間ほど勉強していた。
やっていたことは、上に書いた教科書の読み込みと、会社用意テキストの斜め読み。
ポイント

  • 業務知識のない部分を徹底的に
    • 暗号の基礎*3は理解があるとして勉強しない
    • 業務で触らないと知識がないKerberosやIDS、IP-SECを重点的に
  • 覚えたら点になる系は覚える
    • 法律やマネジメント系は覚えてしまう、思考停止で点が取れる
    • ここ1,2年でマイナンバー系の問題が増えているので確認する*4
  • プログラミングは捨てる
    • 普段から対象言語で開発していないなら、むやみに勉強しても意味ない

こんな感じの指針でテキストを1周ずつした。

試験対策

午前対策

ひたすら過去問道場をやる
過去にIPAの試験を受験したことがある人なら必ずお世話になっているであろう過去問道場。私は直近5回分を正答率が80%を越すまで何周もした。
その際に、必ずわからなかったポイントは道場の解説だけでなく、テキストを参照して体型的に知識の確認を行った。

午後対策

午前対策に思ったより時間を取られ、手をつけることができなかった。

試験のTIPS

午前試験

ちゃんと午前1免除を勝ち取ってから受験することくらいか?正直、午前試験は余裕でパスする感じでないと、午後試験は難しい。

午後試験

これは問いに聞かれていることに、聞かれたように答えることである。問題文に書いてある内容に対し、過不足なく、憶測でもなく、要望でもなく、問題文から読み取れることを解答すればよい。
今回の試験で私は、午後1試験の内容が全く分からずとにかく空白を埋めた感じで提出した。それでも合格ギリギリの点数を獲得している。他の受験生が、聞かれた内容を聞かれたように答案できていない証左だろう。*5
情報処理試験の午後試験は国語の試験と揶揄されるが、作問者的には知識があっても聞かれたことを理解せず、自分の知見をひけらかす答案だとダメだということかな?
とにかくわからなくても、解答用紙を埋めて提出したら点数がいくばくかは加算される。

まとめ

私的ポイントは2つ - 知識は根性でガツっと詰め込む - 午後試験はわからなくても諦めない、問題文と問いをよく読んで埋めるだけ埋めてみる   

私も今回もIPA受験するので一緒に頑張りましょう。

余談
会社から予算が下りなかった?武の方針?で登録費が下りなかったので、未登録情報処理安全確保支援士になった。
ちなみに試験問題には笑っちゃうくらい登録セキスペが登場する。登録が芳しくないんだろうなぁ。

*1:ネスぺからの現実逃避でクソポストをしている

*2:その分飲み会も多かったが

*3:ハッシュやらPKI

*4:2017秋の応用にも出題されたり

*5:得点が相対評価だとしたら

社会人一年目上半期決算

about

正確には上半期じゃないけど、社会人になって初めての決算(振り返りともいう)。
完璧なポエムである。 以下の記事の続編的な感じ。今の自分が何を考えているかの備忘。

shuya.hatenablog.com

このブログはフィクションです。実在の人物や団体などとは関係ありません。*1

入社する前

本当にこの会社でいいか最後まで悩んでいた。
じゃないと大学院入試なんて受験しない。結果的には院進しなかったので、指導教官には申し訳なく思っている。

悩んでいた理由

ただ単に、入社先が自分にとして居場所になるか、自分がベストパフォマンスを発揮できるか不安になったから。主にこんな理由で不安だった。

  • SIerに対していい情報が全く入ってこない環境
  • 漠然とした逃げなんじゃいのかという不安
    • 今も思うんだが、何がこの不安感の原因なのか
    • たぶん大企業に行くことは墓場的なSFC的価値観に毒された
  • 周りに止められた
    • 自分的には真人間だと思っていたけど、みんなに大企業で生きていけるタイプじゃないと言われ不安になった

結局は、自立した生活が送りたくて就職をした。
ここでいう自活した生活とは、自分の稼いだ金で衣食住をまかなうことである。

色々悩んでいたが、家を借りたり*3、身辺の変化があったり、卒論から解放されたりで、学生の身分を最後まで楽しんでいた。

4月

4月にあったことは入社式と研修である。研修の内容はコンプラらしいので、ザクっと書く。

入社式

既にみんなお友達が出来ていた。社風通りって感じであった。自分は勇気を出して隣の人に声をかけたが、話が弾まなかった。昼食に近くの席だった可愛い女の子と言った以外の記憶がない。
名刺もこの日にもらった気がする。少し身が引き締まった。

一般的な研修

初っ端の研修はいわゆるビジネス研修ってやつだ。インターンのグルワ的なことを2,3週間くらいやった。
この頃はまだ同期とその場のノリで飲みに行ったりする努力をしていた。

知り合った同期にはよく「君は変人だよね」って言われて喜んでいた。しかし4月も下旬になると、それは全く褒め言葉ではなく、笑い話としてラッピングされながら、ストレートにおかしい人と指摘されていることに気が付いて、ショックを受けた。

また、この研修は最後にグループでお互いを総括するのだが、これがキツかった。みんな健常者*4だから、もちろんオブラートには包んでいるのだが、こうだ。

  • 自分を過信しすぎ
  • 他人に冷笑的な点が隠せていない
  • 自分がいいと持っているとは、必ずしも他人も喜ぶわけではない

概ね図星だし*5、みんな善意から指摘してくれたから嬉しかった*6。が、自分の恥部を堂々と展示されるとこたえた。 まぁ、端的にいうとナルシスト的な部分がバレた。

身辺の変化2が発生し、これも相乗効果でとてもこたえた*7

このダブルパンチが今日まで尾を引いている。今までの自分の生き方が揺らいでしまった。

5-6月

専門知識の研修

ITの専門技能を身につける研修がずっと続いた。詳細はコンプラである。
もちろん古のアノ言語も習得した。

研修で一番楽しかったのは、幅の人がいて、会社で初めてバックグラウンドを共有した話ができたこと。研修の講師にも幅に詳しい人がいて、知った名前をたくさん聞けたことだった。

この頃から疲れてしまい、本格的に同期の付き合いが減っていく。同期たちは中を深めていたので、勝手に孤立感だけがつのっていった。 みんなでワイワイ駅まで帰る同期、オタク特有の早歩きで帰路を急ぐ自分って感じだ。

コレジャナイ感

ふつふつと感じていたコレジャナイ感がピークになったのがこの時期。なんか高校の延長戦を4年のブランクでやらされた感じの不快さだった。

  • 自分とは違う同期のカルチャ
    • ワンピース・インスタグラムなカルチャーだった。
    • 自分はツイッタだし、dadaとかフォローしてゲラゲラ笑っているタイプ
  • 溢れる真っ直ぐさ
    • いい大学出て、友達もたくさんいて、恋人もいる
    • かたや自分は変人扱いである*8
  • 違いすぎる価値観
    • こいつら自分が大企業入ったから上がりだと思ってるのかな的な
    • もちろん自分の視野狭窄なんだけど、そう感じてしまった
  • コンピュータへの愛
    • みんな手に職つける・金が稼げそうってところでコンピュータなんだなと
    • 他大学の情報系出身の人も、そこまでコンピュータを好きそうでなくてショックを受けた

そんなこんなで毎日が息苦しかった。
自分とは違う生き方・価値観の人は本当に楽しそうで、自然と同期と距離ができた。
情報処理安全確保支援士に合格して、ちょっと嬉しかった。が、勉強してた時の環境を思い出して悲しくなった。

7月

配属されてから

息苦しさから解放されたく、ずっと配属を心待ちにしていた。部署は年次が上の人が多く、また客先にも出ないので適度なゆるさだった。
自分が配属されて感じたギャップはこうだ。

良いギャップ - みんなバリバリ手が動く - インフラ系の仕事をやる部署だが、コードもみんな書ける - 先進技術の習得にも熱心 - 明るい閉塞感 - 全能感の塊みたいな人事を避けてきたら今の会社に流れ着いたので、このリズム感だよなと

悪いギャップ - 全く仕事を任せてもらえない - そこらのヤツと戦える程度の実力はあると思っていたのでショックだった - 本音と建前で、信用してもらえていない - やること(できることが)があまり無く、もどかしい - 自分の得意が生かせない - エンタープライズな部分に最適化されるような技能が自分にはないことを知る - 何ができて、何ができないのか、また分からなくなってしまった - キャリアパスが見えない - 何が善かますます分からんなった

というわけで、今は別の息苦しさと戦っている。評価される仕事がしたい、貢献したいってやつだ。
周りはすぐに嫌でも仕事できるようになるよというが、自分としてはお先真っ暗だ。

総括

つらつらと書いていたら、時雲間とまとまりもなくなってしまった。
今のこの自己相貌を逸している感じがよく表れている。
端的に言えば、自分の成果で承認されたい、社会包摂されたい、居場所が欲しいって感じである。

*1:コンプライアンス

*2:もちろん良いことでもある

*3: 院進しても横浜に引っ越すことだけは決めていた

*4:オタクが使うミームとしての健常者、これで気を悪くするような人は僕のブログを読んでないと思っている

*5:自分としてはうまく隠せていると思っていたから余計にキツい

*6:改善しようとずっと努力している

*7:何ならまだ毎日悲しくなる

*8:変人という自覚が持てたからよかった

AWS研修のメモ

about

AWS AWS Technical Essentials1を受講した際のメモ。
何も知らなかったので受講してよかったと思った。
EC2とかS3とか聞いて、聞いたことあるけどよくわからんって人は受講オススメ。

AWSの歴史

  • 当初はAmazonもモノリシックアーキテクチャだった
  • そこからSOA
  • SOAをさらに分割してマイクロサービスに
  • APIベースの開発にすることでアジリティが向上

  • 規模の経済

    • 2006年以降、料金改定は全部値下げ
    • 料金はリージョンごとに違う
  • オンプレシステムは基本的にAWS移行可能

グローバルインフラストラクチャ

  • リージョン
    • 地理的なロケーション
    • 18コある(15+3)、特殊なリージョンが米国と中国に
    • 大阪にローカルリージョンという特殊なリージョンがある
      • DR対応をするため
  • アベイラビリティゾーン(AZ)
    • 1リージョンの中に2つ以上存在する
    • 1リージョン内の個々のAZの障害は他のAZに影響しない
  • データセンタ
  • エッジロケーション
    • Route 53(DNS), Cloud Front(CDN)だけが乗っている

AWSの設計の推奨事項としては、複数のAZをまたぐように構築する 高い可用性を実現できる

  • rootユーザでのログインは非推奨
  • IAMユーザを作成してのログインが求められる

AWSインフラストラクチャ

EC2

  • サイズ変更可能なコンピューティングリソース
  • Linux or Windows、IAサーバなら動く
  • EC2インスタンスは汎用機上で動いている
    • 可用性を高めるには複数インスタンスでの運用が推奨
    • AZももちろん分けたほうが良い
    • ハードを占有するにはDedicated Hostを利用する

EC2の用語

  • aws market place

    • 販売したいソフトをAMIに組み込んで売る
  • インスタンスタイプ

    • t2 : CPUパワーは20%に抑えられていて、従量課金でマックスまでリソースを使うことができる
    • m系: 常にフルでリソースを利用できる。mの後の数字はXeonの世代。
  • ネットワーク
    • vpcはネットワークの設定
    • ネットワークのサブネットの位置を指定することでAZが決まる
    • パブリックIP : グローバルIP
  • テナンシー
    • ハード共有・占有が選択可
    • ハード占有は割り当てられるハードは指定できない、ハードウェアに対する可視性がない、物理で何が乗っているかわからない
    • dedicatedは自分で選択した物理的構成ができる、ハードの構成に可視性がある
      • 物理的に指定ができるのでライセンス問題を回避できる
  • ユーザデータ
    • 起動スクリプトの定義ができる
    • cloud-initというサービスが組み込まれている
    • cloud-initはsystemctlから操作が可能
  • タグ
    • 設定必須項目ではない、key:valueの設定ができる
    • 運用上必要なラベルをはるもの
  • セキュリティグループ(SG)
    • 仮想的なfirewall
    • EC2インスタンスを起動する際は、1つ以上のSGの設定が必要
    • デフォルトではインバウンド通信はすべて遮断
    • ソースIPをすべて許可する際はプルダウンから「任意の場所」を選択
  • SSH
    • デフォルトでec2-userが作成される

ストレージ

EC2にマウントして使う - Amazon EBS - ネットワークを介してアクセスできるストレージ - 永続的なストレージ - root volumeとして利用する

ストレージサービス

Amazon Simple Storage Service (S3)

  • HTTP接続
  • どのような量でも格納できる
    • スケーラビリティ

用語 - バケット - データを格納する領域 - 名前をグローバルで一意につける必要がある - オブジェクト - S3上に格納されるデータ - 最大5TBのオブジェクトを保管可能 - オブジェクトキー - オブジェクトのもつ一意の識別子 - 次のように表されるhttp://$backet_name$.s3.amazonaws.com/$object_key$

一般的な使用シナリオ - ストレージとバックアップ - アプリファイルのホスティング - AMI, スナップショットの保存

料金 - 従量課金 - ストレージ料金 - リクエスト料金 : httpリクエスト毎 - データ転送料金 : S3の外へのデータ転送

Amazon Glacier

  • データを低コスト長期ストアするサービス
  • データはすぐに扱えず、アーカイブ化されている
    • 取り出しには3~5時間ほどかかる
  • sound cloudは2.5PBのデータを保存している

Amazon Elastic Block Store (EBS)

  • 永続的なブロックレベルでのストレージボリューム
  • 自動レプリケーション
  • スナップショットはS3にストア
  • EBSのボリュームは単一のAZに依存

料金はプロビジョンニングした分のみ

ネットワーク

VPC

隔離された仮想ネットワーク。特定のリージョンに作成する。  

  • サブネット
    • サブネットはAZゾーンの位置を特定するのに用いられる。
    • プライベート/パブリックサブネットに分割される

セキュリティ・アイデンティティ・アクセス管理

セキュリティ指針

  • SSLエンドポイント
    • APIエンドポイントはTLSセッションで提供
  • セキュリティグループ
    • ユーザが適切なfirewallを設定することが求められる
  • 多層セキュリティグループ
    • 3層スキーマにあわせて、それぞれのレイヤでセキュリティポリシを設定できる
  • VPC
    • ユーザがリソースを適切に配置すること

AWS Identity and Access Management (IAM)

  • AWSの認証・認可を行う機構
  • 認可(IAMポリシー)はJSON形式で記述される
  • IAMロールは一時的に権限を委任する機構

IAMのベストプラクティス

  • 個別のIAMユーザの作成
  • 一律の権限付与にはIAMグループを用いる
  • EC2インスタンスで実行するアプリにはIAMロールを適用する

データベース

Amazon Relational Database Service(RDS)

  • サイズ変更が可能(データベースインスタンス)
  • インストールはサービスが自動的に
  • データベースの管理タスクはサービスに含まれる
  • 自動バックアップがデフォルトで有効(1日に1回フルバックアップ)
  • マルチAZ構成にしてHAにすることも可能

Amazon DynamoDB

  • 保存できるデータ量に制限はなし
  • フルマネージド型のサービス

  • パーティションキー

  • ソートキー

2つを組み合わせてプライマリキーにする

【NetApp】LUNのigroupを付け替える

about

igroupを間違えて、iSCSI出来ないあなたのために。
本稿では、lunに対するigroupの付け替えを扱かう。

前提

  • igroupを付け替える先のigroupは作成済み
  • 付け替え先のigroupには既にvolumeがlunがぶら下がっている。

lunのunmap

lunのunmap

まずはigroupを付け替えるlunを、元のigroupから取り外す(unmapする)。

現状のlun mapを確認する

どのlunをigroupから取り外すか、確認を行う。
本稿では、/vol/test_env004/test_envlu004のigroupをtest_initi006からtest_initi005に付け替える。
下が、当該環境でのlun mapping showの実行結果。

cluster01::> lun mapping show -vserver test_svm01
Vserver    Path                                      Igroup   LUN ID  Protocol
---------- ----------------------------------------  -------  ------  --------
test_svm01
           /vol/test_env001/test_envlu001      test_initi003
                                                                   1  iscsi
test_svm01
           /vol/test_env002/test_envlu002      test_initi003
                                                                   2  iscsi
test_svm01
           /vol/test_env003/test_envlu003      test_initi005
                                                                   3  iscsi
test_svm01
           /vol/test_env004/test_envlu004      test_initi006
                                                                   4  iscsi
4 entries were displayed.

lunをunmapする

unmapといっているが、lunのigroupをつけることをmapと言う。その反対が、unmap(lunからigroupを外す)。

cldp2017sncl002::> lun unmap -vserver test_svm01  -path /vol/test_env004/test_envlu004 -igroup test_initi006

mapもunmapも、コマンドを正常に発行すれば、標準出力に応答はない。
上記のコマンドでunmap出来た確認してみよう。

cluster01::> lun mapping show -vserver test_svm01
Vserver    Path                                      Igroup   LUN ID  Protocol
---------- ----------------------------------------  -------  ------  --------
test_svm01
           /vol/test_env001/test_envlu001      test_initi003
                                                                   1  iscsi
test_svm01
           /vol/test_env002/test_envlu002      test_initi003
                                                                   2  iscsi
test_svm01
           /vol/test_env003/test_envlu003      test_initi005
                                                                   3  iscsi
3 entries were displayed.

lun mapping showコマンドでは、mappingされていないlunは表示されない。
正常にunmapされたことが、確認できる。

igroupの削除

lunをunmapしてブラ下がるものが無くなっても、igroupは消滅しない。
igroupを明示的に削除する。

igroupの確認と削除

lun unmap後のigroupの様子を確認する。
igroupはigroup showで確認できる。

cluster01::> igroup show -vserver test_svm01
Vserver   Igroup       Protocol OS Type  Initiators
--------- ------------ -------- -------- ------------------------------------
test_svm01
          test_initi003
                       iscsi    linux    iqn.2018-08.jp.co.example.test_svm01:
                                         0000001
test_svm01
          test_initi004
                       iscsi    linux    iqn.2018-08.jp.co.example.test_svm01:
                                         0000002
test_svm01
          test_initi005
                       iscsi    linux    iqn.2018-08.jp.co.example.test_svm01:
                                         0000003
test_svm01
          test_initi006
                       iscsi    linux    iqn.2018-08.jp.co.example.test_svm01:
                                         0000004
4 entries were displayed.

lunをunmapしてもigroup:test_initi006は健在である。

igroupの削除

必要がなくなったigroupを削除する。
コマンドは簡単で、igroup deleteである。

cluster01::> igroup delete -vserver test_svm01 -igroup test_initi006

これも、lun unmapと同様に、成功しても標準出力に反応はない。
igroup showでigroupを確認する。

cluster01::> igroup show -vserver test_svm01
Vserver   Igroup       Protocol OS Type  Initiators
--------- ------------ -------- -------- ------------------------------------
test_svm01
          test_initi003
                       iscsi    linux    iqn.2018-08.jp.co.example.test_svm01:
                                         0000001
test_svm01
          test_initi004
                       iscsi    linux    iqn.2018-08.jp.co.example.test_svm01:
                                         0000002
test_svm01
          test_initi005
                       iscsi    linux    iqn.2018-08.jp.co.example.test_svm01:
                                         0000003
3 entries were displayed.

正常に削除出来た。

lunのmap

不必要なigroupからlunを削除し、不必要なigroupを削除までは完了した。
lunに正しいigroupをmapしよう。

現状の再表示

誤ったlunに、誤ったigroupをmappigしないように、現状の設定を確認する。

lun mapping

cluster01::> lun mapping show -vserver test_svm01
Vserver    Path                                      Igroup   LUN ID Protocol
---------- ----------------------------------------  -------  ------ --------
test_svm01
           /vol/test_env001/test_envlu001      test_initi003
                                                                   1  iscsi
test_svm01
           /vol/test_env002/test_envlu002      test_initi003
                                                                   2  iscsi
test_svm01
           /vol/test_env003/test_envlu003      test_initi005
                                                                   3  iscsi
3 entries were displayed.

付け替え対象となるigroupはtest_initi005であることを、確認する。

volume show

cluster01::> volume show -vserver test_svm01
Vserver   Volume       Aggregate    State      Type       Size Available Used%
--------- ------------ ------------ ---------- ---- ---------- ---------- -----
test_svm01 test_svm01_root aggr1_test_env01 online RW 1GB 972.6MB  5%
test_svm01 test_env001 aggr1_test_env01 online RW 30GB 30.00GB  0%
test_svm01 test_env002 aggr1_test_env01 online RW 30GB 30.00GB  0%
test_svm01 test_env003 aggr1_test_env01 online RW 30GB 30.00GB  0%
test_svm01 test_env004 aggr1_test_env01 online RW 30GB 30.00GB  0%
test_svm01 test_env901 aggr1_test_env01 online DP 50GB 30.00GB  0%
6 entries were displayed.

対象となるlunのvolumeがtest_env004であることを確認する。

lun mapping

ここまで確認出来たら、lunをmappingする。
mappingのコマンドはもちろんlun mapping

cluster01::> lun map -vserver test_svm01 -volume test_env004 -lun test_envlu004 -igroup test_initi005 -lun-id 4

これも例に漏れず、標準出力に反応はない。

つけ変わったことを、showして確認しよう。

cluster01::> lun mapping show -vserver test_svm01
Vserver    Path                                      Igroup   LUN ID  Protocol
---------- ----------------------------------------  -------  ------  --------
test_svm01 /vol/test_env001/test_envlu001  test_initi003  1 iscsi
test_svm01 /vol/test_env002/test_envlu002  test_initi003  2 iscsi
test_svm01 /vol/test_env003/test_envlu003  test_initi005  3 iscsi
test_svm01 /vol/test_env004/test_envlu004  test_initi005  4 iscsi
4 entries were displayed.

/vol/test_env004/test_envlu004のigroupがtest_initi005が変更されている。