JAWS DAYS 2017

新訳 とあるアーキテクトのクラウドデザインパターン目録 by JAWS-UGアーキテクチャ専門支部

http://jawsdays2017.jaws-ug.jp/session/1998/

  • JAWS-UG ARCH: アーキテクチャ専門支部
  • コスト: 開発3割、運用7割
  • Route53 as the hybrid Cloud
    • ハイブリッド: AWSとオンプレに両方サーバーあり
    • PrivateIPアドレスでDNS
      • AWS Directory Service(Simple AD) -> Amazon Provided DNS -> Route53
  • AMI Maintenance Environment
    • EC2にSSHログインしないでEC2を構築する
    • qitaに投稿あり by はたのさん
    • S3で構成管理する
  • EC2, RDSで作る3層構成は維持費がかかる
  • マイクロサービスアーキテクチャ
    • サービス間は疎結合で外部インターフェース間でのみ通信
    • サーバーに状態を持たない
  • サーバーレス
    • EC2 -> Lambda
    • EBS -> S3
    • RDS -> DynamoDB
      • トランアクションは自前での実装が必要
    • 監視 -> CloudWatch, AWS X-Ray
  • サーバーを使わずに動的なWebサービス
    • Route53
    • 静的なコンテンツはS3
    • 認証はCognito
    • 動的なコンテンツはAPI Gateway経由でLambda-> DynamoDB
  • URLへのコンテンアクセス時にコンテンツ生成し、2回目以降は同じ内容のコンテンツ返す
    • S3でファイルがない時(404)は生成処理へのリダイレクト(307)を返す
    • Qitaに記事あり
  • 重たいAPI処理結果を受けて別の処理を走らせたい
    • BeanWorkのWorkerでポーリングしてLambdaで処理させる
    • Step Functionsでできる
      • 値段とAPI制限が課題?

AWS SECURITY DEATH \m/ ~セキュ鮫様からのお告げ~ by Security-JAWS

http://jawsdays2017.jaws-ug.jp/session/1512/

  • Security-JAWS
    • 3ヶ月に1回のペースで開催中
  • AWSにおけるネットワークの基本
    • Who?
      • 大喜多
      • VPN, F/Wが専門のネトワークエンジニア
    • VPC
      • 論理的に独立した自社専用のクラウド環境を作成する機能
      • 今はVPCが標準だが、昔は違った。Clastic EC2
    • Public subnet
      • インターネットと直接接続する。EIP紐付け可能
    • Private subnet
      • インターネットに繋げないが、内側から外側にGW経由で接続可能
    • セキュリティグループはステートフル
    • ネットワークACLはステートレス
    • VPN
      • VPCの各サブネットとVirtual Private Gatewayを接続数r
      • VPNの場合、AWSには2つのVPNエンドポイントがある
    • Direct Connect
      • Equinix TY2まで利用者が接続する
      • 接続ポイントからAWSまでAWS
      • 通信キャリアによりサービス形態は異なるが専用型と共用型がある
    • ソリューションラインナップ
      • TOKAIコミュニケーションズ
      • Colt
      • 大手キャリアは共用型が多い印象
  • WAF, DDOS
    • Who?
      • 吉江瞬
      • OWASP Japan Promotion Team
    • DDoS
      • 大量コンピュータが一斉に特定のNWやコンピューターに接続して落とす
      • 種類
        • L3/L4
        • L7
      • AWS Shield
        • 2016/12リリース
        • CloudFrontでShieldオプション有効化
        • オンプレでも利用可能
        • 防御対象: CloudFront, ELB, ALB, Route53
        • 監視: 常にモニタリングしてベースラインの作成、異常検出
        • 料金
          • Basic: 無料で利用可能
          • Advanced: 1年間の利用コミットで月額3000ドル
    • WAF
      • レガシーなFWやIDS/IPSでは防ぐことができない不正な攻撃からアプリケーションを防御する
      • Apache Struts2脆弱性
        • 都税支払いサイトからカード情報流出
        • WAFにて対応はしていた
      • できること
      • 残念
        • キメ細かい設定ができない。ルールを正規表現ができない。POST見れない。WAF検知ログは100件まで
      • セキュリティ面ではAWS WAFに不足があるので、SaasやWAF on AWSも要検討
  • AWS Config
    • Who
      • 森永大志
      • クラスメソッド
    • Configとは?
      • 構成管理、変更管理
        • 関係性の閲覧
      • 対応サービス: ACM, CloudTrail, EC2, EBS, Systems Manager, ALB, IAM, RDS
    • ユースケース
    • 設定のチェックを行うサービス
      • AWS Config Rules
        • 設定が正しいかを判定するルールが設定できる
        • マネージドルール
        • カスタムルール
          • 後ろにLambdaなので、なんでもできる
          • githubのawslabsにもAWS公開のルールあり。2017/3現在34個あり
      • Config関連のブログあり

EXCEL構成管理からの脱却と次世代MSPとDevOps 2.0 by OpsJAWS

http://jawsdays2017.jaws-ug.jp/session/1518/

  • EXCEL構成管理からの脱却
    • Who
      • 会沢康二
    • OpsJAWS
      • 運用というワードに反応した全ての方
      • 作ったものをどうやって維持/管理していくか
    • DevOps
      • 開発と運用が強調し合うことで開発/運用するソフトウェアによって、ビジネスの価値を高める
    • エンタープライズでDevOps
      • 単純移行したシステムも継続的な最適化が求められる
      • 失敗例を成功に変えるAWSアンチパターンのご紹介2016
    • Systems manager
      • 概要
        • AWS管理外のOSより下位のレイヤーの部分をAWSで管理
        • ログイン無しで利用できる
      • ミドル、各種SW部分はDev/Ops間でお見合いになりがち
        • Systems managerで解決
      • ソフトウェアインベントリ
        • AWS Configとの連携
        • SWインストールするとAWS Configに伝わる
      • AWS Config -> AWS Config Snapshot(json) -> AWs構成パラメーターシート(Excel)
      • Run comand
      • パッチ管理
        • 必要なパッチが当たっているか監査し、適用
        • 簡易的なWSUS
    • Opsもコードを書いてて作業メンテを減らしていこう
  • 次世代MSPとDevOps 2.0
    • Who?
    • MSPとは
      • Management Services Provider
      • 記号が保有するサーバーやネットワークの運用、監視、保守を請け負う業者
      • 監視して生涯を見つけてつうしし、スペック提案
      • パッチ適用して稼動確認
    • 次世代MSP
      • プロアクティブ監視
        • 障害を事前に検知する
      • 予測 -> 事前提案 -> 障害防止
      • 次世代MSPツール
        • 予測
          • Zabbix 3.x
            • 1週間後や1ヶ月後のリソース越え予測
          • CloudWatch
            • データからAIから予測
        • サーバーレス
          • CloudWatch
          • AWS Config
            • 構成変更の検知
        • 分析と提案
          • X-Ray
            • アプリに埋め込むとインフラ内のどこが遅いかを検知する
            • インフラ内のボトルネック検知
          • Grafana
            • 可視化ツール
            • Zabbix, CloudWatch以外に気温、天気等の外部要因と組み合わせて見れる
    • 次世代MSPとDevOps
      • 手法とプロバイダーは両立するのか
      • Opsの成長に付き合えるMPSが求められる
    • DevOps 2.0
      • DevOpsのイメージは運用の負荷が大きい
      • 基盤構成が柔軟化 -> 構成管理サービス
      • スピードアップ -> 監視自動化
      • 運用から開発への提案がされるようになる(2.0)
        • キャパシティ変更
        • セキュアプログラム
        • パフォーマンス改修
        • アーキテクチャ変更
    • まとめ
      • 次世代MSPはツールではなく仕組み
      • 次世代MSPでOPSが強くなる -> DevOps 2.0 -> OpsDev

6年前のその時、クラウドで何ができたのか 〜JAWSとタイガーチーム〜

http://jawsdays2017.jaws-ug.jp/session/1735/

  • SORACOM
  • 赤十字社
    • 関西淡路大震災は8000億円の義援金
  • 震災直後の日本赤十字社の様子
    • 第3次救護体制
    • 現金書留多数
    • 想定外
      • みずほのシステムダウン
      • 日赤への義援金
    • JAWS-UGタイガーチーム誕生秘話
      • 3/3に東京リージョンリリースしたばかり
      • AWSのCEO Andy Jassyにサーバー提供の直訴メール
        • すぐ返事きたが、2つの条件つき
      • JAWS-UGをまとめれば良いのでは?
  • タイガーチームをこれほど早く立ち上げることができたのか?
    • JAWS-UGコアメンバーの横つながりがあったから
    • 初期のパートナーが会社を上げて応援してくれた
  • 次の災害時に何ができるのか?
    • IOT
      • 被災地の情報端末向けのSIM提供
    • 野良キャッシュ、ダメ。絶対。
  • 普段のネットワークが大事
    • 人道の敵
  • 人間を救うのは、人間だ。

IAM 権限をこえて

http://jawsdays2017.jaws-ug.jp/session/1792/

  • IAMとは何か
    • 利用者の認証とアクセスポリシーの管理
    • ルートユーザーを使わず、IAMユーザーを作成し、権限を割り当てる
    • IAMユーザーとIAMグループが存在
    • パーミッションはIAMユーザー/グループどちらにも設定できる
      • グループにパーミッションを割り当てて、ユーザーは利用しないのがセオリー
    • IAMポリシー
      • JSON形式で記述
      • AWS管理ポリシー
        • AWS側で勝手に変更される場合あり
    • アクセス可否の決定ロジック
      • 明示的なDeny > 明示的なAllow > 暗黙のDeny
    • IAMロール
      • サービスやアプリケーション等に捜査権限を付与する仕組み
      • IAMユーザー、グループとは別のもの
    • ID連携(Identity Federation)
    • IAMベストプラクティスあり
  • Policyたち
    • ルート権限はやばい
    • 書式
      • JSON形式、IAM Policy言語
    • 管理ポリシー
      • スダンドアロンポリシー
      • 種類
        • AWS管理ポリシー
          • 機能追加も自動でしてくれる
          • 例. EC2 Full Access, EC2 Read Only
        • カスタマー管理ポリシー
    • インラインポリシー
      • 自身で作成及び管理するポリシー
    • Statement
      • Sid: Statementブロック内で内で一意で有れば良い
      • Action: 許可/拒否するサービスのアクション
      • Resource: Amazonリソースネーム(ARN)
        • AWSリソースを一意に識別
    • IAM Policy Simulatorは良い
    • Become an AWS IAM Ninjaの RE:Invent資料は参考になる
  • IAMの鼓動はログ
    • AWSアカウントの不正利用
    • 適切でないAWSアカウントの存在
    • AWSアクティビティの監視
      • AWS CloudTrail
        • AMI呼び出しのロギング
        • API lookup
          • S3に保存されるJSONログの一部情報のみ
          • 7日間のみ
      • AWS Config
        • AWSリソースの構成管理
    • S3ログ解析
    • 認証情報レポート
      • 例. パスワード認証とアクセスキー認証が両方有効
      • パスワード認証が使われた形跡がない
      • MFAが設定されていない

AWSデータベースアップデート 2017

http://jawsdays2017.jaws-ug.jp/session/1220/

  • Amazon ElasticCache
    • Redis Cluster
      • 3.5TB
      • 4.5 million writes per second
      • 20 million reads per second
    • 海外では永続化データの場所として利用事例多い
    • 今後も永続化向けのアップデート予定
  • Amazon Aurora
    • 既存
      • 性能面でMySQL5.7を圧倒する
      • PostgreSQL
        • 現在Preview
        • PostgreSQL 9.6.4との完全互換を目指している
          • 将来使いたい場合は9.6.4以降にしておくと良い
      • Performance Insight
        • クエリパフォーマンスの評価
        • Postgre Aurolaから導入し、順次他DBに広げていく予定
      • ゼロダウンタイムパッチ
        • アプリケーションから見てコネクションを切られずにDBバージョンアップ
      • OnlineDDL
        • Alterが1秒以内
    • 今後
      • Online point in time restore
        • 動いているAurolaを特定時点にロールバック
        • ログを見えなくすると過去の段階に戻せる
        • 現在は数時間前まで対応する予定
      • Database cloning
        • 1TBのデータをcloneしても1TB文の課金のみ
        • 変更文のみ課金される
        • 本番データでテスト
      • Aurora Auditing
        • 監査ログを有効にしてもパフォーマンス落ちない
    • 最近の改善
      • インデックスツリー作成の高速化
      • Cached read performance
      • Insert Performance
  • AWS Database Migration Service
    • Fan-in
    • 片方がAWSにあれば利用可能
    • Schema Convertion Tool
    • 20000以上の実績あり
  • Amazon Athena
    • サーバーレス
    • prestoが動いてる
    • oltpではなくolap向け
    • オンメモリで処理する仕組み
    • jdbcドライバあり
    • Viwer
      • amazon quick sight
      • spice
      • redshift,emr,athenaに繋ぐ
  • AWS Glue
    • ETL(Extract,Transform,Load)ツール
    • フルマネージドETL
    • データ変換も可能
    • pythonコードをロードしてエラーハンドリング等を実施

dots.2周年記念パーティ

言語デザイナーが見る未来 by Matz

Who are you?

  • 松江市名誉市民
  • IT総合戦略本部委員

テクノロジーの変化

  • パソコンのメモリは640KBで十分 by Bill Gates
  • 20数年前のスーパーコンピューターはiphone5程度

エクストリーム未来予測

  • ポケットに今のスパコンが入ったらどうなるか

プログラミング言語の進化

  • FORTRAN(1954)
  • Lisp
  • COBOL: 帳票、データ
  • C(1972): OSをかけるようになった
  • Pearl(1986)
  • Erlang(1986)
  • Java,JavaScript,PHP,Ruby(1995)
    • Windows95が出て誰でもインターネットにアクセスできるようになった
  • できなかったことができるように
    • 人間の脳でもできるという意味
  • できたことをできないように
    • goto

未来へのキーワード

  • C100K問題
  • テラメモリ問題
  • ペタデータ問題
  • 10000 Cores
    • プログラマがマルチコアを活用しなければならない
    • 非決定性
      • ハイゼンバグ
  • 新技術を身につける力が重要
    • 検索力
    • 世界観
      • 大枠を把握すると新しい技術がどこにはまるのかを理解する
    • 変化しないものの方が大事

QA

  • Matzが見る未来
    • 20年、30年後はプログラミングしないとできない領域が減っていくのではないか
  • 注目しているフレームワークは?

    今後エンジニアに求められるスキル/考え方

    • 未来に必要な技術とは?どんな技術を身につけていくべき
      • クズさが必要
      • 変わらないもの。レイヤーの下の方は変わらない。PC自作。ネットワークの知識。
        • 夢中になってつきつめていく。
      • 新しい技術に追いかけていくべき
        • 好きなことをつきつめている人に任せるべき
    • 未来につながる、もってほしい考え方は
      • 自分一人だと限界がある。
      • 10年後、15年後はどうなるかわからない。何のためにプログラミングしているのかを忘れない。
      • 自分の楽しいことをしたい。捻じ曲げて自分の楽しい方向にもっていく。
    • どう働くべきなの?会社とし働き方を変えるべきなの?
      • エンンジニアの得意なところは囲ってて良いのか?色々なところいっても良いのでは?
      • 労働のオープンソース
      • エンジニアは自分のパフォーマンスが出せるようにする面でもプロフェッショナルであるべき
    • 今後はこんなOSSが登場するのでは?ほしいOSSは?
      • Hadoop, Sparkの後継
      • Meteo
        • Active Valueというコンセプト。データのアップデートやトリガーは自動でやってくれる。人間はレイアウトとデザインだけ考えれば良い。
      • HashiCorp, ElasticSearch
        • 運用面の知見で価値を届ける
      • 売り物でも気軽にプルリク送れるような関係性が面白いのでは
    • 今後注目されるような開発コミュニティは?
      • 日本人がいないコミュニティに入っていくと良いのでは
      • 参加する人を増やしたい。初めのいぽを手助けするような活動をしたい。
      • オープンソースに必要なのは炎上力
    • Hard Ware
      • ネットワークプログラミングで世界が変わった
      • HWエンジニアと働くのは共通知識がないから大変。ただHWの遭遇こそがIOT。