Suche senden
Hochladen
Mastdonインスタンス立ててみた in Azure #ssmjp
•
4 gefällt mir
•
2,949 views
Masahiro NAKAYAMA
Folgen
20170529 #ssmjp mastodon Azure上でマネージドサービスを使って クラウドっぽくMastodonを動かしてみた話
Weniger lesen
Mehr lesen
Technologie
Melden
Teilen
Melden
Teilen
1 von 22
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
Prometheus at Preferred Networks
Prometheus at Preferred Networks
Preferred Networks
為替のTickdataをDukascopyからダウンロードする
為替のTickdataをDukascopyからダウンロードする
Maho Nakata
ここまで来た!公共交通オープンデータ最新事情
ここまで来た!公共交通オープンデータ最新事情
Masaki Ito
OSS活動の活発さと評価の関係について
OSS活動の活発さと評価の関係について
Takuto Wada
5分でわかるブロックチェーンの基本的な仕組み
5分でわかるブロックチェーンの基本的な仕組み
Ryo Shimamura
Introduction; Blockchain 101
Introduction; Blockchain 101
Hyperleger Tokyo Meetup
データ活用をするための組織
データ活用をするための組織
Kon Yuichi
トランクベース開発を活用して爆速に開発した話
トランクベース開発を活用して爆速に開発した話
Tier_IV
Empfohlen
Prometheus at Preferred Networks
Prometheus at Preferred Networks
Preferred Networks
為替のTickdataをDukascopyからダウンロードする
為替のTickdataをDukascopyからダウンロードする
Maho Nakata
ここまで来た!公共交通オープンデータ最新事情
ここまで来た!公共交通オープンデータ最新事情
Masaki Ito
OSS活動の活発さと評価の関係について
OSS活動の活発さと評価の関係について
Takuto Wada
5分でわかるブロックチェーンの基本的な仕組み
5分でわかるブロックチェーンの基本的な仕組み
Ryo Shimamura
Introduction; Blockchain 101
Introduction; Blockchain 101
Hyperleger Tokyo Meetup
データ活用をするための組織
データ活用をするための組織
Kon Yuichi
トランクベース開発を活用して爆速に開発した話
トランクベース開発を活用して爆速に開発した話
Tier_IV
Webアプリを並行開発する際のマイグレーション戦略
Webアプリを並行開発する際のマイグレーション戦略
Takayuki Shimizukawa
居場所を隠すために差分プライバシーを使おう
居場所を隠すために差分プライバシーを使おう
Hiroshi Nakagawa
XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性
西岡 賢一郎
MonotaRO のデータ活用と基盤の過去、現在、未来
MonotaRO のデータ活用と基盤の過去、現在、未来
株式会社MonotaRO Tech Team
DMBOKをベースにしたデータマネジメント
DMBOKをベースにしたデータマネジメント
Kent Ishizawa
ここがつらいよ、Hyperledger Fabricの商用適用(Blockchain GIG #4発表資料)
ここがつらいよ、Hyperledger Fabricの商用適用(Blockchain GIG #4発表資料)
NTT DATA Technology & Innovation
ブロックチェーン技術の基本と応用の可能性
ブロックチェーン技術の基本と応用の可能性
Kenji Saito
Hyperledger Fabric のプラットフォームおよびインフラ運用
Hyperledger Fabric のプラットフォームおよびインフラ運用
Hyperleger Tokyo Meetup
ブロックチェーンの解説 In.live ppt
ブロックチェーンの解説 In.live ppt
Asteria Corporation
実録Blue-Green Deployment導入記
実録Blue-Green Deployment導入記
Hiroyuki Ohnaka
ChatGPTをもっと使いたい.pptx
ChatGPTをもっと使いたい.pptx
TokioMiyaoka
Sonar qubeでちょっと楽しい静的解析
Sonar qubeでちょっと楽しい静的解析
政雄 金森
情報社会学会発表スライド20130522
情報社会学会発表スライド20130522
Masahiko Shoji
IoT と時系列データと Elasticsearch | Data Pipeline Casual Talk Vol.4
IoT と時系列データと Elasticsearch | Data Pipeline Casual Talk Vol.4
SORACOM,INC
Tableau Developers Club Season2 /*TableauのAPIすべて*/ Tableau Server REST API Wo...
Tableau Developers Club Season2 /*TableauのAPIすべて*/ Tableau Server REST API Wo...
Hiroshi Masuda
全社のデータ活用を一段階上げる取り組み
全社のデータ活用を一段階上げる取り組み
株式会社MonotaRO Tech Team
BASEでデータ処理の幅を広げよう
BASEでデータ処理の幅を広げよう
koutarou watanabe
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
株式会社MonotaRO Tech Team
IaC事始め Infrastructure as Code やってみる?
IaC事始め Infrastructure as Code やってみる?
大使 梶原
MonotaROの基幹システムがこの先生きのこるには 2015.03.20 DevLOVE関西 事業会社の現場を知ろう~モノタロウ編~
MonotaROの基幹システムがこの先生きのこるには 2015.03.20 DevLOVE関西 事業会社の現場を知ろう~モノタロウ編~
株式会社MonotaRO Tech Team
ハッカソンについて(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
ハッカソンについて(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
Masahiro NAKAYAMA
イントロダクション(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
イントロダクション(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
Masahiro NAKAYAMA
Weitere ähnliche Inhalte
Was ist angesagt?
Webアプリを並行開発する際のマイグレーション戦略
Webアプリを並行開発する際のマイグレーション戦略
Takayuki Shimizukawa
居場所を隠すために差分プライバシーを使おう
居場所を隠すために差分プライバシーを使おう
Hiroshi Nakagawa
XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性
西岡 賢一郎
MonotaRO のデータ活用と基盤の過去、現在、未来
MonotaRO のデータ活用と基盤の過去、現在、未来
株式会社MonotaRO Tech Team
DMBOKをベースにしたデータマネジメント
DMBOKをベースにしたデータマネジメント
Kent Ishizawa
ここがつらいよ、Hyperledger Fabricの商用適用(Blockchain GIG #4発表資料)
ここがつらいよ、Hyperledger Fabricの商用適用(Blockchain GIG #4発表資料)
NTT DATA Technology & Innovation
ブロックチェーン技術の基本と応用の可能性
ブロックチェーン技術の基本と応用の可能性
Kenji Saito
Hyperledger Fabric のプラットフォームおよびインフラ運用
Hyperledger Fabric のプラットフォームおよびインフラ運用
Hyperleger Tokyo Meetup
ブロックチェーンの解説 In.live ppt
ブロックチェーンの解説 In.live ppt
Asteria Corporation
実録Blue-Green Deployment導入記
実録Blue-Green Deployment導入記
Hiroyuki Ohnaka
ChatGPTをもっと使いたい.pptx
ChatGPTをもっと使いたい.pptx
TokioMiyaoka
Sonar qubeでちょっと楽しい静的解析
Sonar qubeでちょっと楽しい静的解析
政雄 金森
情報社会学会発表スライド20130522
情報社会学会発表スライド20130522
Masahiko Shoji
IoT と時系列データと Elasticsearch | Data Pipeline Casual Talk Vol.4
IoT と時系列データと Elasticsearch | Data Pipeline Casual Talk Vol.4
SORACOM,INC
Tableau Developers Club Season2 /*TableauのAPIすべて*/ Tableau Server REST API Wo...
Tableau Developers Club Season2 /*TableauのAPIすべて*/ Tableau Server REST API Wo...
Hiroshi Masuda
全社のデータ活用を一段階上げる取り組み
全社のデータ活用を一段階上げる取り組み
株式会社MonotaRO Tech Team
BASEでデータ処理の幅を広げよう
BASEでデータ処理の幅を広げよう
koutarou watanabe
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
株式会社MonotaRO Tech Team
IaC事始め Infrastructure as Code やってみる?
IaC事始め Infrastructure as Code やってみる?
大使 梶原
MonotaROの基幹システムがこの先生きのこるには 2015.03.20 DevLOVE関西 事業会社の現場を知ろう~モノタロウ編~
MonotaROの基幹システムがこの先生きのこるには 2015.03.20 DevLOVE関西 事業会社の現場を知ろう~モノタロウ編~
株式会社MonotaRO Tech Team
Was ist angesagt?
(20)
Webアプリを並行開発する際のマイグレーション戦略
Webアプリを並行開発する際のマイグレーション戦略
居場所を隠すために差分プライバシーを使おう
居場所を隠すために差分プライバシーを使おう
XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性
MonotaRO のデータ活用と基盤の過去、現在、未来
MonotaRO のデータ活用と基盤の過去、現在、未来
DMBOKをベースにしたデータマネジメント
DMBOKをベースにしたデータマネジメント
ここがつらいよ、Hyperledger Fabricの商用適用(Blockchain GIG #4発表資料)
ここがつらいよ、Hyperledger Fabricの商用適用(Blockchain GIG #4発表資料)
ブロックチェーン技術の基本と応用の可能性
ブロックチェーン技術の基本と応用の可能性
Hyperledger Fabric のプラットフォームおよびインフラ運用
Hyperledger Fabric のプラットフォームおよびインフラ運用
ブロックチェーンの解説 In.live ppt
ブロックチェーンの解説 In.live ppt
実録Blue-Green Deployment導入記
実録Blue-Green Deployment導入記
ChatGPTをもっと使いたい.pptx
ChatGPTをもっと使いたい.pptx
Sonar qubeでちょっと楽しい静的解析
Sonar qubeでちょっと楽しい静的解析
情報社会学会発表スライド20130522
情報社会学会発表スライド20130522
IoT と時系列データと Elasticsearch | Data Pipeline Casual Talk Vol.4
IoT と時系列データと Elasticsearch | Data Pipeline Casual Talk Vol.4
Tableau Developers Club Season2 /*TableauのAPIすべて*/ Tableau Server REST API Wo...
Tableau Developers Club Season2 /*TableauのAPIすべて*/ Tableau Server REST API Wo...
全社のデータ活用を一段階上げる取り組み
全社のデータ活用を一段階上げる取り組み
BASEでデータ処理の幅を広げよう
BASEでデータ処理の幅を広げよう
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
IaC事始め Infrastructure as Code やってみる?
IaC事始め Infrastructure as Code やってみる?
MonotaROの基幹システムがこの先生きのこるには 2015.03.20 DevLOVE関西 事業会社の現場を知ろう~モノタロウ編~
MonotaROの基幹システムがこの先生きのこるには 2015.03.20 DevLOVE関西 事業会社の現場を知ろう~モノタロウ編~
Mehr von Masahiro NAKAYAMA
ハッカソンについて(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
ハッカソンについて(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
Masahiro NAKAYAMA
イントロダクション(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
イントロダクション(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
Masahiro NAKAYAMA
クラウド時代のものづくり(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
クラウド時代のものづくり(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
Masahiro NAKAYAMA
めもおきば新刊のお知らせ サーバーレスでHelloWorldする25の方法 #ssmjp
めもおきば新刊のお知らせ サーバーレスでHelloWorldする25の方法 #ssmjp
Masahiro NAKAYAMA
クラウド時代における分散Webシステムの構成とスケーリング #seccamp
クラウド時代における分散Webシステムの構成とスケーリング #seccamp
Masahiro NAKAYAMA
#ServerlessDays Tokyo 2019 「サーバーレス」な同人誌の紹介
#ServerlessDays Tokyo 2019 「サーバーレス」な同人誌の紹介
Masahiro NAKAYAMA
サーバーレス時代の システム設計ワークショップ
サーバーレス時代の システム設計ワークショップ
Masahiro NAKAYAMA
#ssmjp 2018/12 技術系同人誌を手に入れよう
#ssmjp 2018/12 技術系同人誌を手に入れよう
Masahiro NAKAYAMA
FaaSのインターフェースに見るサーバーレス #serverlessconf #serverlesstokyo
FaaSのインターフェースに見るサーバーレス #serverlessconf #serverlesstokyo
Masahiro NAKAYAMA
クラウドでハンズオンする話 #ssmjp
クラウドでハンズオンする話 #ssmjp
Masahiro NAKAYAMA
SORACOMでデータ上げてクラウドで分析・可視化するハンズオン #SecHack365
SORACOMでデータ上げてクラウドで分析・可視化するハンズオン #SecHack365
Masahiro NAKAYAMA
IoT時代のセキュアなクラウドインフラ構築術 #seccamp
IoT時代のセキュアなクラウドインフラ構築術 #seccamp
Masahiro NAKAYAMA
Serverless book
Serverless book
Masahiro NAKAYAMA
クラウドではじめるリアルタイムデータ分析 #seccamp
クラウドではじめるリアルタイムデータ分析 #seccamp
Masahiro NAKAYAMA
技術系同人誌を書こう #ssmjp
技術系同人誌を書こう #ssmjp
Masahiro NAKAYAMA
「サーバレスの薄い本」からの1年 #serverlesstokyo
「サーバレスの薄い本」からの1年 #serverlesstokyo
Masahiro NAKAYAMA
BluetoothメッシュによるIoTシステムを支えるサーバーレス技術 #serverlesstokyo
BluetoothメッシュによるIoTシステムを支えるサーバーレス技術 #serverlesstokyo
Masahiro NAKAYAMA
IoT(Bluetooth mesh) × サーバーレス
IoT(Bluetooth mesh) × サーバーレス
Masahiro NAKAYAMA
Serverless Architecture Overview #cdevc
Serverless Architecture Overview #cdevc
Masahiro NAKAYAMA
細かすぎて伝わらないSORACOM Funnelのオプション紹介 #soracomug
細かすぎて伝わらないSORACOM Funnelのオプション紹介 #soracomug
Masahiro NAKAYAMA
Mehr von Masahiro NAKAYAMA
(20)
ハッカソンについて(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
ハッカソンについて(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
イントロダクション(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
イントロダクション(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
クラウド時代のものづくり(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
クラウド時代のものづくり(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
めもおきば新刊のお知らせ サーバーレスでHelloWorldする25の方法 #ssmjp
めもおきば新刊のお知らせ サーバーレスでHelloWorldする25の方法 #ssmjp
クラウド時代における分散Webシステムの構成とスケーリング #seccamp
クラウド時代における分散Webシステムの構成とスケーリング #seccamp
#ServerlessDays Tokyo 2019 「サーバーレス」な同人誌の紹介
#ServerlessDays Tokyo 2019 「サーバーレス」な同人誌の紹介
サーバーレス時代の システム設計ワークショップ
サーバーレス時代の システム設計ワークショップ
#ssmjp 2018/12 技術系同人誌を手に入れよう
#ssmjp 2018/12 技術系同人誌を手に入れよう
FaaSのインターフェースに見るサーバーレス #serverlessconf #serverlesstokyo
FaaSのインターフェースに見るサーバーレス #serverlessconf #serverlesstokyo
クラウドでハンズオンする話 #ssmjp
クラウドでハンズオンする話 #ssmjp
SORACOMでデータ上げてクラウドで分析・可視化するハンズオン #SecHack365
SORACOMでデータ上げてクラウドで分析・可視化するハンズオン #SecHack365
IoT時代のセキュアなクラウドインフラ構築術 #seccamp
IoT時代のセキュアなクラウドインフラ構築術 #seccamp
Serverless book
Serverless book
クラウドではじめるリアルタイムデータ分析 #seccamp
クラウドではじめるリアルタイムデータ分析 #seccamp
技術系同人誌を書こう #ssmjp
技術系同人誌を書こう #ssmjp
「サーバレスの薄い本」からの1年 #serverlesstokyo
「サーバレスの薄い本」からの1年 #serverlesstokyo
BluetoothメッシュによるIoTシステムを支えるサーバーレス技術 #serverlesstokyo
BluetoothメッシュによるIoTシステムを支えるサーバーレス技術 #serverlesstokyo
IoT(Bluetooth mesh) × サーバーレス
IoT(Bluetooth mesh) × サーバーレス
Serverless Architecture Overview #cdevc
Serverless Architecture Overview #cdevc
細かすぎて伝わらないSORACOM Funnelのオプション紹介 #soracomug
細かすぎて伝わらないSORACOM Funnelのオプション紹介 #soracomug
Kürzlich hochgeladen
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Kürzlich hochgeladen
(7)
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Mastdonインスタンス立ててみた in Azure #ssmjp
1.
Mastodonインスタンス 立ててみた in Azure Aki@nekoruri 2017-05-29 #ssmjp
2.
Mastodon • Twitterっぽいアレ • 高頻度で短文が更新されるマイクロブログ •
添付ファイル(画像や動画)が付いたりする • 「フォロー」に基づいた購読・通知と雑なアクセスコントロール • 分散SNS(Federated Social Web) • 「Twitterっぽいアレ」をブログ更新通知などの仕組みで分散化を実現 • 割と死に体だったプロトコルも流用採用している • Rails上に教科書通りに分散システムを実装(非同期処理の多用) • 微妙な言い換え(ツイート⇒トゥート、等)
3.
日本におけるMastodon • 4月中旬に過剰とも言える流行の波 • 猫も杓子もといった流行期は脱出 •
PixivのPawooやドワンゴのfriends.nico など、CGMサイトに対応するSNSとして 一定の存在感は引き続き確保 • 分散SNSの実現可能性を十分に示した 出典:https://friends.nico/@TaiseiMiyahara/10996911
4.
Mastodon用語 • インスタンス • 一つのドメインを持つMastodonシステム(例:mstdn.jp、pawoo.net) •
インスタンス毎にその管理者が運用し、ポリシーを持つ • ネットワーク屋っぽく言えばAS(自律システム) • リモートフォロー • 別のインスタンスのユーザをフォロー(購読)する • ローカルタイムライン • 自分と同じインスタンスで発言された全ての公開トゥートのタイムライン • 連合タイムライン • ローカルタイムライン +インスタンス内の誰かがリモートフォローする全ての公開トゥート
5.
AzureにMastodonを立ててみよう 1. まず服を脱ぎます UbuntuのVMを立てます。 2. 外部からのHTTPSの接続を許可します。 3.
Dockerとdocker-composeを入れます。
6.
あとは神チュートリアル資料の通り http://qiita.com/zembutsu/items/f1f1ede26102ba27fce2
7.
ほい
8.
完
9.
んなわけはない
10.
運用こそが本当の戦い • スケールアウト対応 • 添付ファイルがローカルファイル •
DB(PostgreSQL/Redis)が同一ホスト内のコンテナ間接続 • ドメインの分離 • 「添付」画像は、トゥートに直接URLとして含まれる。 ⇒ あとからドメインの変更・分離は難しいので最初に対応すること • バックアップとか冗長化とか • ぶっちゃけもうデータベースの面倒なんて自分で見たくない ⇒ マネージドDB使おう • ぶっちゃけもうメール配信キューの面倒なんて(ry ⇒ マネージドSMTPサービス使おう
11.
オブジェクトストレージの変更 • Mastodon自体の機能としてはAmazon S3に対応 •
S3互換のなにかを持ってくれば良い • Google Cloud Storageは標準のS3互換APIでそのまま通る模様 • s3proxy • S3互換APIを提供するプロキシサーバ • Azure BlobやOpenStack Swiftなどに保存できる • ローカルファイルにも保存できる ⇒ クラウド使わない場合もひとまずs3proxyでドメイン分離が可能
12.
オブジェクトストレージの変更 • Azure BlobがカスタムドメインのHTTPSができない •
とりあえずCDNを挟んで回避 • Azure CDN from Verizonなら無償でHTTPS証明書取れます • 解説記事の通りにやれば良い • http://blog.tmyt.jp/entry/2017/04/19/202922 『今話題のMastodonインスタンスを建ててS3の代わりに Azure Blob Storageを使う』 • paperclip.rb へのパッチは既に不要
13.
データストアのマネージドサービス化 • メインのDBはPostgreSQL • いやっふう! Azure
Database for PostgreSQLプレビュー来た! • 内部のPubSubなどにRedis • Azure Redis Cache
14.
PostgreSQLの切り替え • PortalからAzure Database
for PostgreSQL構築 • 接続のセキュリティとか適当に設定 • データ移行 • とりあえずpg_dumpで吸ってpsqlで投入 • 設定変更してdocker-composeあげ直し • docker-compose.ymlでdbを削除 • .env.productionに接続情報
15.
Redisの切り替え • Redis Cacheを構築 •
とりあえずテストでSSL無しで検証(時間不足) • 設定変更してdocker-composeあげ直し • docker-compose.ymlでredisを削除、.env.productionに接続設定 • 注意点 • Mastodon側で利用するRedisライブラリがSSL非対応 「NotImplementedError (SSL not supported by hiredis driver)」 • アクセスキーに「+/」が入ると駄目 • URLエンコードすればParseは通るが、デコードされずにサーバに投げられる! • ライブラリ周りの組み合わせのバグっぽい • 当たりを引けるまでアクセスキー再生成ガチャを回せば回避可能(ひどい)
16.
メール配信の切り替え • みんなだいすきSendGrid • Azureマーケットプレイス経由でも利用できるけど、 今回は構造計画研究所さん経由 •
設定変更してdocker-composeあげ直し • docker-compose.ymlでmtaを削除、.env.productionに接続情報 • ルート証明書ストアを適切に設定する必要がある (が、所詮通知だけと割り切って検証しない設定も可能) • メールなのでDNS設定も • SendGridのDomain Whitelabel機能を設定⇒DNSにレコード登録 • SPF/DKIMともにPASSできる
17.
最終的な構成 frontend (nginx) streaming (node) web (rails) SendGrid s3proxy sidekiq (worker) PostgreSQL (managed) Azure Blob Redis (managed) docker-compose管理 AzureCDN 画像など Web/Streaming 外部 インスタンス
18.
その他の課題 • コンテナ管理 • 監視
19.
コンテナ管理 • コンテナ数などの管理 • ウェブアプリだけでなく、非同期タスクのスループットが重要 •
負荷に応じたワーカーの制御が必要 • そもそもdocker-composeとか手で叩く時代じゃない • GKEみたいなのが欲しい • Azure Container Serviceでそれっぽくできそう • 結局はコンテナのスケジューリングの問題に行き着く
20.
監視 • 一般的なサーバ性能メトリクス • CPU、メモリ •
Sidekiqキュー • 規模が大きくなるとここが詰まる模様 • 複数のキューごとにプロセス分離など • マネージドサービスのメトリクス • PostgreSQL • Redis • サービス死活 • ユーザの投稿内容 • 自インスタンスのユーザの投稿の違法性 • Federate先のユーザから流れてきた投稿の違法性
21.
まとめ • Azureでもクラウドっぽくできマストドン • Azure
Database for PostgreSQL万歳! • AWS Certificate Managerの影に隠れているけど、 Azure CDNもDigiCertのフルマネージド証明書が取得/利用可能 • 手抜きしたけどLB最初から挟んだ方が良い • もうステートレスになってるから、LB挟んで増やせばOK • ちなみに1月からMicrosoft MVPになりました • みんな祝って! • 今後も基本はベンダーニュートラルでやっていきます。 <良 い モ ノ は 良 い>
22.
で、誰? • Aki (@nekoruri) •
BLEなIoTシステムの クラウド側担当 • ちょろっと執筆も • 「薄い本」も出しています • 最近はすっかり セキュリティ教育畑に…… • セキュリティ・キャンプ プロデューサー • SecHack365 実施協議会委員 • ProjectDIVA Arcade LV.623 NEW!
Jetzt herunterladen