Submit Search
Upload
20170429 jitakurack mastodon
•
2 likes
•
1,005 views
Minato Kirino
Follow
自宅ラック勉強会向けMastodon on AWS構成資料
Read less
Read more
Internet
Report
Share
Report
Share
1 of 20
Download now
Download to read offline
Recommended
Migrate mastodon instance to Azure from AWS
Migrate mastodon instance to Azure from AWS
Minato Kirino
Cloudian with CA ARCserve
Cloudian with CA ARCserve
CLOUDIAN KK
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
TaikaiSebastianHirose
Comparing GlusterFS Swift API to Native Swift
Comparing GlusterFS Swift API to Native Swift
Etsuji Nakai
NetApp SteelStore with CLOUDIAN HyperStore
NetApp SteelStore with CLOUDIAN HyperStore
CLOUDIAN KK
マルチAZ対応!AWS上で稼働するスケールアウトNAS Red Hat Storage
マルチAZ対応!AWS上で稼働するスケールアウトNAS Red Hat Storage
Taira Hajime
クラウド時代のストレージとは (Cloudian Summit 2012)
クラウド時代のストレージとは (Cloudian Summit 2012)
CLOUDIAN KK
20130319勉強会
20130319勉強会
Akira Yoshiyama
Recommended
Migrate mastodon instance to Azure from AWS
Migrate mastodon instance to Azure from AWS
Minato Kirino
Cloudian with CA ARCserve
Cloudian with CA ARCserve
CLOUDIAN KK
Gluster fsにおいて内在するincident要因
Gluster fsにおいて内在するincident要因
TaikaiSebastianHirose
Comparing GlusterFS Swift API to Native Swift
Comparing GlusterFS Swift API to Native Swift
Etsuji Nakai
NetApp SteelStore with CLOUDIAN HyperStore
NetApp SteelStore with CLOUDIAN HyperStore
CLOUDIAN KK
マルチAZ対応!AWS上で稼働するスケールアウトNAS Red Hat Storage
マルチAZ対応!AWS上で稼働するスケールアウトNAS Red Hat Storage
Taira Hajime
クラウド時代のストレージとは (Cloudian Summit 2012)
クラウド時代のストレージとは (Cloudian Summit 2012)
CLOUDIAN KK
20130319勉強会
20130319勉強会
Akira Yoshiyama
Azure Cosmos DB の整合性レベルについて
Azure Cosmos DB の整合性レベルについて
Oshitari_kochi
分散仮想ストレージシステム紹介
分散仮想ストレージシステム紹介
OSSラボ株式会社
3 クラウド・コンピューティング特論 第3章 クラウドの技術と動向
3 クラウド・コンピューティング特論 第3章 クラウドの技術と動向
Enpel
Cloudian nosql casestudy_20120318
Cloudian nosql casestudy_20120318
CLOUDIAN KK
ReadyNAS OS 6.9.0 新機能紹介
ReadyNAS OS 6.9.0 新機能紹介
NETGEAR Japan
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
Etsuji Nakai
分散処理のすゝめ?
分散処理のすゝめ?
yoshito oe
2022.03.21 nasクラウド連携
2022.03.21 nasクラウド連携
ssuser3440151
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Sunao Tomita
これから始めるAzure Kubernetes Service入門
これから始めるAzure Kubernetes Service入門
Yuto Takei
[G-Tech2015]Microsoft Azureを使った災害復旧の基礎[講演資料]
[G-Tech2015]Microsoft Azureを使った災害復旧の基礎[講演資料]
Trainocate Japan, Ltd.
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sql
Yutuki r
Start learning Azure Cosmos DB with Azure Synapse Link
Start learning Azure Cosmos DB with Azure Synapse Link
Oshitari_kochi
C01376621
C01376621
guest4eb0bf0
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
Trainocate Japan, Ltd.
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
Trainocate Japan, Ltd.
azureから使うlinux
azureから使うlinux
Trainocate Japan, Ltd.
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
GoAzure
Azure上の データベース 機能の選び方。KVSからDWHまで
Azure上の データベース 機能の選び方。KVSからDWHまで
Daisuke Masubuchi
Datrium overview and technology foundations
Datrium overview and technology foundations
正明 羽鳥
20120508 aws meister-rds-public
20120508 aws meister-rds-public
Amazon Web Services Japan
Cloudian presentation for Cassandra Conference 2012 in Tokyo
Cloudian presentation for Cassandra Conference 2012 in Tokyo
CLOUDIAN KK
More Related Content
What's hot
Azure Cosmos DB の整合性レベルについて
Azure Cosmos DB の整合性レベルについて
Oshitari_kochi
分散仮想ストレージシステム紹介
分散仮想ストレージシステム紹介
OSSラボ株式会社
3 クラウド・コンピューティング特論 第3章 クラウドの技術と動向
3 クラウド・コンピューティング特論 第3章 クラウドの技術と動向
Enpel
Cloudian nosql casestudy_20120318
Cloudian nosql casestudy_20120318
CLOUDIAN KK
ReadyNAS OS 6.9.0 新機能紹介
ReadyNAS OS 6.9.0 新機能紹介
NETGEAR Japan
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
Etsuji Nakai
分散処理のすゝめ?
分散処理のすゝめ?
yoshito oe
2022.03.21 nasクラウド連携
2022.03.21 nasクラウド連携
ssuser3440151
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Sunao Tomita
これから始めるAzure Kubernetes Service入門
これから始めるAzure Kubernetes Service入門
Yuto Takei
[G-Tech2015]Microsoft Azureを使った災害復旧の基礎[講演資料]
[G-Tech2015]Microsoft Azureを使った災害復旧の基礎[講演資料]
Trainocate Japan, Ltd.
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sql
Yutuki r
Start learning Azure Cosmos DB with Azure Synapse Link
Start learning Azure Cosmos DB with Azure Synapse Link
Oshitari_kochi
C01376621
C01376621
guest4eb0bf0
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
Trainocate Japan, Ltd.
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
Trainocate Japan, Ltd.
azureから使うlinux
azureから使うlinux
Trainocate Japan, Ltd.
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
GoAzure
What's hot
(18)
Azure Cosmos DB の整合性レベルについて
Azure Cosmos DB の整合性レベルについて
分散仮想ストレージシステム紹介
分散仮想ストレージシステム紹介
3 クラウド・コンピューティング特論 第3章 クラウドの技術と動向
3 クラウド・コンピューティング特論 第3章 クラウドの技術と動向
Cloudian nosql casestudy_20120318
Cloudian nosql casestudy_20120318
ReadyNAS OS 6.9.0 新機能紹介
ReadyNAS OS 6.9.0 新機能紹介
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
10年効く分散ファイルシステム技術 GlusterFS & Red Hat Storage
分散処理のすゝめ?
分散処理のすゝめ?
2022.03.21 nasクラウド連携
2022.03.21 nasクラウド連携
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
これから始めるAzure Kubernetes Service入門
これから始めるAzure Kubernetes Service入門
[G-Tech2015]Microsoft Azureを使った災害復旧の基礎[講演資料]
[G-Tech2015]Microsoft Azureを使った災害復旧の基礎[講演資料]
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sql
Start learning Azure Cosmos DB with Azure Synapse Link
Start learning Azure Cosmos DB with Azure Synapse Link
C01376621
C01376621
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
azureから使うlinux
azureから使うlinux
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
Similar to 20170429 jitakurack mastodon
Azure上の データベース 機能の選び方。KVSからDWHまで
Azure上の データベース 機能の選び方。KVSからDWHまで
Daisuke Masubuchi
Datrium overview and technology foundations
Datrium overview and technology foundations
正明 羽鳥
20120508 aws meister-rds-public
20120508 aws meister-rds-public
Amazon Web Services Japan
Cloudian presentation for Cassandra Conference 2012 in Tokyo
Cloudian presentation for Cassandra Conference 2012 in Tokyo
CLOUDIAN KK
読み出し性能と書き込み性能を選択可能なクラウドストレージ (DEIM2011-C3-3)
読み出し性能と書き込み性能を選択可能なクラウドストレージ (DEIM2011-C3-3)
Shun Nakamura
[Japan Tech summit 2017] CLD 011
[Japan Tech summit 2017] CLD 011
Microsoft Tech Summit 2017
AWSとmod_pagespeedで楽々サクサク高速化!!
AWSとmod_pagespeedで楽々サクサク高速化!!
aasakawa
AWS Black Belt - AWS Glue
AWS Black Belt - AWS Glue
Amazon Web Services Japan
Db2をAWS上に構築する際のヒント&TIPS 2019年7月版
Db2をAWS上に構築する際のヒント&TIPS 2019年7月版
Akira Shimosako
やりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまで
やりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまで
Daisuke Masubuchi
Azure Cosmos DB のキホンと使いドコロ
Azure Cosmos DB のキホンと使いドコロ
Kazuyuki Miyake
Windows Azure
Windows Azure
Microsoft Openness Japan
Windows Azure 基盤を支えるテクノロジー
Windows Azure 基盤を支えるテクノロジー
Kazumi Hirose
Software Defined Storage を実現する次期 Windows Server のストレージ機能 (Microsoft de:code 2...
Software Defined Storage を実現する次期 Windows Server のストレージ機能 (Microsoft de:code 2...
Takamasa Maejima
Mobageの技術を体験(MyDNS編)
Mobageの技術を体験(MyDNS編)
Daisuke Ikeda
DB2をAWS上に構築する際のヒント&TIPS 2018年1月版
DB2をAWS上に構築する際のヒント&TIPS 2018年1月版
Akira Shimosako
NATS on VCAP
NATS on VCAP
Katsunori Kawaguchi
[MongoDB勉強会 in 2017] MongoDB on AWS
[MongoDB勉強会 in 2017] MongoDB on AWS
Shuji Kikuchi
MySQL Multi-master on EC2
MySQL Multi-master on EC2
Shinji Tanaka
20120303 jaws summit-meister-03_s3
20120303 jaws summit-meister-03_s3
Amazon Web Services Japan
Similar to 20170429 jitakurack mastodon
(20)
Azure上の データベース 機能の選び方。KVSからDWHまで
Azure上の データベース 機能の選び方。KVSからDWHまで
Datrium overview and technology foundations
Datrium overview and technology foundations
20120508 aws meister-rds-public
20120508 aws meister-rds-public
Cloudian presentation for Cassandra Conference 2012 in Tokyo
Cloudian presentation for Cassandra Conference 2012 in Tokyo
読み出し性能と書き込み性能を選択可能なクラウドストレージ (DEIM2011-C3-3)
読み出し性能と書き込み性能を選択可能なクラウドストレージ (DEIM2011-C3-3)
[Japan Tech summit 2017] CLD 011
[Japan Tech summit 2017] CLD 011
AWSとmod_pagespeedで楽々サクサク高速化!!
AWSとmod_pagespeedで楽々サクサク高速化!!
AWS Black Belt - AWS Glue
AWS Black Belt - AWS Glue
Db2をAWS上に構築する際のヒント&TIPS 2019年7月版
Db2をAWS上に構築する際のヒント&TIPS 2019年7月版
やりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまで
やりたいことから考えるMicrosoft Azure 上の データストアの選び方とデータサイエンティスト向け活用法。KVSからDWHまで
Azure Cosmos DB のキホンと使いドコロ
Azure Cosmos DB のキホンと使いドコロ
Windows Azure
Windows Azure
Windows Azure 基盤を支えるテクノロジー
Windows Azure 基盤を支えるテクノロジー
Software Defined Storage を実現する次期 Windows Server のストレージ機能 (Microsoft de:code 2...
Software Defined Storage を実現する次期 Windows Server のストレージ機能 (Microsoft de:code 2...
Mobageの技術を体験(MyDNS編)
Mobageの技術を体験(MyDNS編)
DB2をAWS上に構築する際のヒント&TIPS 2018年1月版
DB2をAWS上に構築する際のヒント&TIPS 2018年1月版
NATS on VCAP
NATS on VCAP
[MongoDB勉強会 in 2017] MongoDB on AWS
[MongoDB勉強会 in 2017] MongoDB on AWS
MySQL Multi-master on EC2
MySQL Multi-master on EC2
20120303 jaws summit-meister-03_s3
20120303 jaws summit-meister-03_s3
More from Minato Kirino
ステイホーム期間を使って、家庭内LAN環境を見直した
ステイホーム期間を使って、家庭内LAN環境を見直した
Minato Kirino
#こみにょぴ結婚式 LT資料
#こみにょぴ結婚式 LT資料
Minato Kirino
#RouterBOARD 勉強会 OSPF検証班 発表資料
#RouterBOARD 勉強会 OSPF検証班 発表資料
Minato Kirino
20120408 #自宅ラック勉強会 を監視してみたい
20120408 #自宅ラック勉強会 を監視してみたい
Minato Kirino
2011/06/11 #sfstudy ECCの遊び方。
2011/06/11 #sfstudy ECCの遊び方。
Minato Kirino
qpstudy#6 勉強どうしてる
qpstudy#6 勉強どうしてる
Minato Kirino
More from Minato Kirino
(6)
ステイホーム期間を使って、家庭内LAN環境を見直した
ステイホーム期間を使って、家庭内LAN環境を見直した
#こみにょぴ結婚式 LT資料
#こみにょぴ結婚式 LT資料
#RouterBOARD 勉強会 OSPF検証班 発表資料
#RouterBOARD 勉強会 OSPF検証班 発表資料
20120408 #自宅ラック勉強会 を監視してみたい
20120408 #自宅ラック勉強会 を監視してみたい
2011/06/11 #sfstudy ECCの遊び方。
2011/06/11 #sfstudy ECCの遊び方。
qpstudy#6 勉強どうしてる
qpstudy#6 勉強どうしてる
20170429 jitakurack mastodon
1.
2017/04/29 きりのみなと mastodon.chotto.moe on AWS
2.
全体構成 1 DBサーバ(RDS) db.t2.micro Mastodon鯖 t2.large Redis(ElastiCache) cache.t2.micro ロードバランサ ACM+ALB メディアファイル S3Bucket+ StaticWebHosting CDN(CloudFront) メール通知 SES 権威DNS Route53 Mastodon ユーザ
3.
全体構成における考え方 AWSマネージドサービスを活用する – メールサーバを立てずSESを使う
データは腹持ちさせない – PostgreSQLはRDSに任せる – RedisはElastiCacheRedisに外出しする – メディアファイルはS3バケットに保持させる – Docker-composeでMastodon本体をバージョンアップす る時にシビアにデータの保持を考えなくて済むため 2
4.
全体構成における考え方 ユーザ通信は全て暗号化させる – ALBはAWS
Certificate ManagerのSSL証明書を使い、 Mastodonの設定でHTTP to HTTPSリダイレクトさせる – メディアファイルはCloudFront + S3バケット(静的ウェ ブホスティング)でHTTPS上でコンテンツ配信する – ユーザはメールアドレス+パスワードを入力してログ インするのにHTTP通信なのはとてもマズい – HTTPSサイトの中からCSS/Javascript/Websocket等の外 部コンテンツをHTTPで呼び出すとブラウザ側でエラー になるので、全通信をHTTPS化する必要がある 3
5.
Mastodon鯖の構成 DB/Redisを外出ししているので、本家の Docker-compose.ymlを少し修正して利用 一つのインスタンス上に、ポートを分けて以下 3つのMastodon環境を同居させている –
jitakurack.chotto.moe – mastodon.chotto.moe – ステージング環境 今のところ冗長化はしていない – なのでMastodonのバージョンアップ中は落ちますw 4
6.
Mastodon鯖のスペック EC2 t2.largeを利用 –
vCPU 2core – Mem 8GB – EBS only CPUよりはメモリが大事 5
7.
Ubuntu 16.04 LTSへMastodonを導入 1.
Docker + Docker Compose の導入 – 公式ドキュメントに沿ってDockerをまず導入 Get Docker for Ubuntu https://docs.docker.com/engine/installation/linux/ubuntu/ – Docker導入後、Docker Composeを配置 Install Docker Compose https://docs.docker.com/compose/install/ 2. Mastodonのリポジトリの取得 – 本家のコードを手元にクローンする git clone https://github.com/tootsuite/mastodon.git 6
8.
Ubuntu 16.04 LTSへMastodonを導入 3.
docker-compose.ymlを編集 – 公式だとPostgreSQL/RedisもDocker Imageを利用する が、RDS / ElastiCacheを利用するので該当部分をコメ ントアウトする 7 version: '2' services: web: restart: always build: . image: gargron/mastodon env_file: .env.production command: bundle exec rails s -p 3000 -b '0.0.0.0' ports: - "3000:3000" volumes: - ./public/assets:/mastodon/public/assets - ./public/system:/mastodon/public/system streaming: restart: always build: . image: gargron/mastodon env_file: .env.production command: npm run start ports: - "4000:4000" sidekiq: restart: always build: . image: gargron/mastodon env_file: .env.production command: bundle exec sidekiq -q default -q mailers -q pull -q push volumes: - ./public/system:/mastodon/public/system
9.
Ubuntu 16.04 LTSへMastodonを導入 4.
.env.productionを編集 – ElastiCache Redis周り REDIS_HOST=${ElastiCacheクラスタエンドポイント名} REDIS_PORT=${ElastiCacheポート番号(デフォルト6379)} – RDS PostgreSQL周り DB_HOST=${RDSインスタンスDNS名} DB_USER=${DBユーザ名} DB_NAME=${DBスキーマ名} DB_PASS=${DBパスワード} DB_PORT=${RDSサービスポート番号(デフォルト5432)} 8
10.
Ubuntu 16.04 LTSへMastodonを導入 4.
.env.productionを編集 – SES周り SMTP_SERVER=${SESエンドポイント名} SMTP_PORT=587 SMTP_LOGIN=${IAMユーザのSMTP ID (AKIA…)} SMTP_PASSWORD=${IAMユーザのSMTP Password} SMTP_FROM_ADDRESS=${SESで登録した送信元メールア ドレス} 9
11.
Ubuntu 16.04 LTSへMastodonを導入 4.
.env.productionを編集 – S3バケット周り S3_ENABLED=true S3_BUCKET=${S3バケット名} S3_REGION=ap-northeast-1 以下はIAM Roleを利用しない(出来なかった)場合に設定 AWS_ACCESS_KEY_ID=${IAM Userで作成したAPIキー} AWS_SECRET_ACCESS_KEY=${IAM Userで作成したシーク レットキー} – CloudFront周り S3_CLOUDFRONT_HOST=${CloudFront経由のホスト名} 10
12.
Ubuntu 16.04 LTSへMastodonを導入 5.
Dockerイメージの取得or作成 – 公式にDockerイメージが定期的に作成されているので それをそのまま利用する docker-compose pull – 当然、docker buildでビルドすることも出来るが数分~ 10分程度かかってしまうので注意 docker-compose build 11
13.
Ubuntu 16.04 LTSへMastodonを導入 6.
DBデータの更新、CSS/Javascriptの最新化 – Railsだから仕方ない docker-compose run --rm web rake db:migrate docker-compose run --rm web rake assets:precompile 7. Mastodonの起動 – 作成はup (-dでデーモン化)、破棄はdown docker-compose up –d – 起動はstart、停止はstop – ログを見たい場合はlogs (-fでtail -fのように追いかけ) docker-compose logs -f 12
14.
AWS独特の注意事項 同一サーバ上で、Web(Rails)とStreaming (node.js)を同居させる場合は、URLベースで通 信先ポートを変えてあげる必要あり 13 Mastodon鯖 t2.large ロードバランサ ACM+ALB web: 3000 streaming: 4000 defaultは3000番に流す /api/v1/streaming/*は 4000番に流す
15.
AWS独特の注意事項 Webのヘルスチェックは GET
/about → レスポ ンスコード 301 が良さそう 14 200番が返ってくる URLがあんまり無い… (静的コンテンツもassets:precompile するとURLが変わる)
16.
AWS独特の注意事項 Streamingのヘルスチェックは GET
/ → レスポ ンスコード 200-499が良さそう 15 Tokenが無いのでどんなURLを たたいても401が返ってくる悲しみ
17.
AWS独特の注意事項 CloudFrontが使うSSL証明書は us-east-1
で作る ALBが使うSSL証明書は ALB/EC2 がいるリー ジョンで作る – このドキュメントを見ている人は大抵は ap-northeast-1 で作ることになるはず → ACMの証明書は忘れず2カ所で作成しましょう 16
18.
その他 コンプライアンス的なやつ – ALBアクセスログはS3に忘れず保管しておきましょう –
MastodonのログはCloudwatch LogsかFluentdを使って 外部退避しましょう – 一般向けにWebサービスを公開している以上、正しく管 理するのは世間への義務です 17
19.
メモ 本家の最新コードにただ追従する場合は docker-compose buildしなくても良い –
git pull – docker-compose pull – docker-compose run --rm web rake db:migrate – docker-compose run --rm web rake assets:precompile – docker-compose up -d sidekiqは2個以上に増やしておいた方が良い – docker-compose scale sidekiq=2 18
20.
メモ crontabで必ず1日1回実行すること – docker-compose
run --rm web rake mastodon:daily 19
Download now