Submit Search
Upload
Cassandraバージョンアップ&移設
•
Download as PPTX, PDF
•
2 likes
•
2,533 views
Takehiro Torigaki
Follow
Cassandraバージョンアップ&移設の話をまとめました。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 24
Download now
Recommended
Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編
Yuki Morishita
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
Akihiro Kuwano
これがCassandra
これがCassandra
Takehiro Torigaki
cassandra調査レポート
cassandra調査レポート
Akihiro Kuwano
Cassandra導入事例と現場視点での苦労したポイント cassandra summit2014jpn
Cassandra導入事例と現場視点での苦労したポイント cassandra summit2014jpn
haketa
MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術
yoku0825
トランザクションの設計と進化
トランザクションの設計と進化
Kumazaki Hiroki
NAND Flash から InnoDB にかけての話(仮)
NAND Flash から InnoDB にかけての話(仮)
Takanori Sejima
Recommended
Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編
Yuki Morishita
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
Akihiro Kuwano
これがCassandra
これがCassandra
Takehiro Torigaki
cassandra調査レポート
cassandra調査レポート
Akihiro Kuwano
Cassandra導入事例と現場視点での苦労したポイント cassandra summit2014jpn
Cassandra導入事例と現場視点での苦労したポイント cassandra summit2014jpn
haketa
MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術
yoku0825
トランザクションの設計と進化
トランザクションの設計と進化
Kumazaki Hiroki
NAND Flash から InnoDB にかけての話(仮)
NAND Flash から InnoDB にかけての話(仮)
Takanori Sejima
MySQL 5.7にやられないためにおぼえておいてほしいこと
MySQL 5.7にやられないためにおぼえておいてほしいこと
yoku0825
Cassandraのバックアップと運用を考える
Cassandraのバックアップと運用を考える
Kazutaka Tomita
Yahoo! JAPANにおけるApache Cassandraへの取り組み
Yahoo! JAPANにおけるApache Cassandraへの取り組み
Yahoo!デベロッパーネットワーク
RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門
Yuki Morishita
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
DynamoDBを導入した話
DynamoDBを導入した話
dcubeio
MVSR Schedulerを作るための指針
MVSR Schedulerを作るための指針
NTT Software Innovation Center
事例で学ぶApache Cassandra
事例で学ぶApache Cassandra
Yuki Morishita
DynamoDBだけでソシャゲを作ってみた
DynamoDBだけでソシャゲを作ってみた
伊藤 祐策
LINEのMySQL運用について 修正版
LINEのMySQL運用について 修正版
LINE Corporation
Native Memory Tracking
Native Memory Tracking
Takahiro YAMADA
SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係
datastaxjp
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
NTT DATA Technology & Innovation
Hadoopの概念と基本的知識
Hadoopの概念と基本的知識
Ken SASAKI
関数型プログラミングのデザインパターンひとめぐり
関数型プログラミングのデザインパターンひとめぐり
Kazuyuki TAKASE
A critique of ansi sql isolation levels 解説公開用
A critique of ansi sql isolation levels 解説公開用
Takashi Kambayashi
PostgreSQLでスケールアウト
PostgreSQLでスケールアウト
Masahiko Sawada
WiredTigerを詳しく説明
WiredTigerを詳しく説明
Tetsutaro Watanabe
Microsoft Antimalware for Azure による Azure 仮想マシンの簡易的なマルウェア対策
Microsoft Antimalware for Azure による Azure 仮想マシンの簡易的なマルウェア対策
wintechq
20221111_JPUG_CustomScan_API
20221111_JPUG_CustomScan_API
Kohei KaiGai
Apache Cassandra and Go
Apache Cassandra and Go
DataStax Academy
Time-Series Apache HBase
Time-Series Apache HBase
HBaseCon
More Related Content
What's hot
MySQL 5.7にやられないためにおぼえておいてほしいこと
MySQL 5.7にやられないためにおぼえておいてほしいこと
yoku0825
Cassandraのバックアップと運用を考える
Cassandraのバックアップと運用を考える
Kazutaka Tomita
Yahoo! JAPANにおけるApache Cassandraへの取り組み
Yahoo! JAPANにおけるApache Cassandraへの取り組み
Yahoo!デベロッパーネットワーク
RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門
Yuki Morishita
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
DynamoDBを導入した話
DynamoDBを導入した話
dcubeio
MVSR Schedulerを作るための指針
MVSR Schedulerを作るための指針
NTT Software Innovation Center
事例で学ぶApache Cassandra
事例で学ぶApache Cassandra
Yuki Morishita
DynamoDBだけでソシャゲを作ってみた
DynamoDBだけでソシャゲを作ってみた
伊藤 祐策
LINEのMySQL運用について 修正版
LINEのMySQL運用について 修正版
LINE Corporation
Native Memory Tracking
Native Memory Tracking
Takahiro YAMADA
SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係
datastaxjp
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
NTT DATA Technology & Innovation
Hadoopの概念と基本的知識
Hadoopの概念と基本的知識
Ken SASAKI
関数型プログラミングのデザインパターンひとめぐり
関数型プログラミングのデザインパターンひとめぐり
Kazuyuki TAKASE
A critique of ansi sql isolation levels 解説公開用
A critique of ansi sql isolation levels 解説公開用
Takashi Kambayashi
PostgreSQLでスケールアウト
PostgreSQLでスケールアウト
Masahiko Sawada
WiredTigerを詳しく説明
WiredTigerを詳しく説明
Tetsutaro Watanabe
Microsoft Antimalware for Azure による Azure 仮想マシンの簡易的なマルウェア対策
Microsoft Antimalware for Azure による Azure 仮想マシンの簡易的なマルウェア対策
wintechq
20221111_JPUG_CustomScan_API
20221111_JPUG_CustomScan_API
Kohei KaiGai
What's hot
(20)
MySQL 5.7にやられないためにおぼえておいてほしいこと
MySQL 5.7にやられないためにおぼえておいてほしいこと
Cassandraのバックアップと運用を考える
Cassandraのバックアップと運用を考える
Yahoo! JAPANにおけるApache Cassandraへの取り組み
Yahoo! JAPANにおけるApache Cassandraへの取り組み
RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
DynamoDBを導入した話
DynamoDBを導入した話
MVSR Schedulerを作るための指針
MVSR Schedulerを作るための指針
事例で学ぶApache Cassandra
事例で学ぶApache Cassandra
DynamoDBだけでソシャゲを作ってみた
DynamoDBだけでソシャゲを作ってみた
LINEのMySQL運用について 修正版
LINEのMySQL運用について 修正版
Native Memory Tracking
Native Memory Tracking
SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
Hadoopの概念と基本的知識
Hadoopの概念と基本的知識
関数型プログラミングのデザインパターンひとめぐり
関数型プログラミングのデザインパターンひとめぐり
A critique of ansi sql isolation levels 解説公開用
A critique of ansi sql isolation levels 解説公開用
PostgreSQLでスケールアウト
PostgreSQLでスケールアウト
WiredTigerを詳しく説明
WiredTigerを詳しく説明
Microsoft Antimalware for Azure による Azure 仮想マシンの簡易的なマルウェア対策
Microsoft Antimalware for Azure による Azure 仮想マシンの簡易的なマルウェア対策
20221111_JPUG_CustomScan_API
20221111_JPUG_CustomScan_API
Viewers also liked
Apache Cassandra and Go
Apache Cassandra and Go
DataStax Academy
Time-Series Apache HBase
Time-Series Apache HBase
HBaseCon
qpstudy 2013.07 NoSQL
qpstudy 2013.07 NoSQL
Akihiro Okuno
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
On the benchmark of Chainer
On the benchmark of Chainer
Kenta Oono
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sql
Yutuki r
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
Yuta Kashino
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
Yahoo!デベロッパーネットワーク
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
Yusuke HIDESHIMA
マシンパーセプション研究におけるChainer活用事例
マシンパーセプション研究におけるChainer活用事例
nlab_utokyo
Chainer Update v1.8.0 -> v1.10.0+
Chainer Update v1.8.0 -> v1.10.0+
Seiya Tokui
Chainer, Cupy入門
Chainer, Cupy入門
Yuya Unno
Cassandra DataTables Using RESTful API
Cassandra DataTables Using RESTful API
Simran Kedia
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
NVIDIA Japan
Chainerを使って細胞を数えてみた
Chainerを使って細胞を数えてみた
samacoba1983
Viewers also liked
(15)
Apache Cassandra and Go
Apache Cassandra and Go
Time-Series Apache HBase
Time-Series Apache HBase
qpstudy 2013.07 NoSQL
qpstudy 2013.07 NoSQL
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
On the benchmark of Chainer
On the benchmark of Chainer
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sql
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
俺のtensorが全然flowしないのでみんなchainer使おう by DEEPstation
マシンパーセプション研究におけるChainer活用事例
マシンパーセプション研究におけるChainer活用事例
Chainer Update v1.8.0 -> v1.10.0+
Chainer Update v1.8.0 -> v1.10.0+
Chainer, Cupy入門
Chainer, Cupy入門
Cassandra DataTables Using RESTful API
Cassandra DataTables Using RESTful API
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
NVIDIA 更新情報: Tesla P100 PCIe/cuDNN 5.1
Chainerを使って細胞を数えてみた
Chainerを使って細胞を数えてみた
Similar to Cassandraバージョンアップ&移設
Guide to Cassandra for Production Deployments
Guide to Cassandra for Production Deployments
smdkk
MapR アーキテクチャ概要 - MapR CTO Meetup 2013/11/12
MapR アーキテクチャ概要 - MapR CTO Meetup 2013/11/12
MapR Technologies Japan
Meetup 2104 my_homenutanixce_mizuta
Meetup 2104 my_homenutanixce_mizuta
Yusuke Mizuta
Elasticsearch as a Distributed System
Elasticsearch as a Distributed System
Satoyuki Tsukano
[Azure Antenna] クラウドで HPC ~ HPC on Azure ~
[Azure Antenna] クラウドで HPC ~ HPC on Azure ~
Shuichi Gojuki
インフラ野郎 Azureチーム v18.11 at Tech Summit 2018
インフラ野郎 Azureチーム v18.11 at Tech Summit 2018
Toru Makabe
Openstackを200%活用するSDSの挑戦
Openstackを200%活用するSDSの挑戦
Tomohiro Hirano
ビッグデータ×IoT時代のデータベースのアーキテクチャとメカニズムの比較
ビッグデータ×IoT時代のデータベースのアーキテクチャとメカニズムの比較
griddb
Db tech showcase 2016
Db tech showcase 2016
datastaxjp
Hadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイント
Cloudera Japan
Networld vx railchampionclub_essential point of sizing
Networld vx railchampionclub_essential point of sizing
VxRail ChampionClub
プライベートクラウドを支えるAMD EPYCサーバ
プライベートクラウドを支えるAMD EPYCサーバ
Tomohiro Hirano
Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?
Sunao Tomita
cassandra 100 node cluster admin operation
cassandra 100 node cluster admin operation
oranie Narut
Cloudera大阪セミナー 20130219
Cloudera大阪セミナー 20130219
Cloudera Japan
Interact2019 ws2019 s2d_IN05
Interact2019 ws2019 s2d_IN05
Hiroshi Matsumoto
サポート エンジニアが語る、トラブルを未然に防ぐための Azure インフラ設計
サポート エンジニアが語る、トラブルを未然に防ぐための Azure インフラ設計
ShuheiUda
Cmc cmd slim
Cmc cmd slim
Shinji Shimojo
キャッシュ・権威 兼用型浸透問題への対処
キャッシュ・権威 兼用型浸透問題への対処
hdais
Similar to Cassandraバージョンアップ&移設
(19)
Guide to Cassandra for Production Deployments
Guide to Cassandra for Production Deployments
MapR アーキテクチャ概要 - MapR CTO Meetup 2013/11/12
MapR アーキテクチャ概要 - MapR CTO Meetup 2013/11/12
Meetup 2104 my_homenutanixce_mizuta
Meetup 2104 my_homenutanixce_mizuta
Elasticsearch as a Distributed System
Elasticsearch as a Distributed System
[Azure Antenna] クラウドで HPC ~ HPC on Azure ~
[Azure Antenna] クラウドで HPC ~ HPC on Azure ~
インフラ野郎 Azureチーム v18.11 at Tech Summit 2018
インフラ野郎 Azureチーム v18.11 at Tech Summit 2018
Openstackを200%活用するSDSの挑戦
Openstackを200%活用するSDSの挑戦
ビッグデータ×IoT時代のデータベースのアーキテクチャとメカニズムの比較
ビッグデータ×IoT時代のデータベースのアーキテクチャとメカニズムの比較
Db tech showcase 2016
Db tech showcase 2016
Hadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイント
Networld vx railchampionclub_essential point of sizing
Networld vx railchampionclub_essential point of sizing
プライベートクラウドを支えるAMD EPYCサーバ
プライベートクラウドを支えるAMD EPYCサーバ
Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?
cassandra 100 node cluster admin operation
cassandra 100 node cluster admin operation
Cloudera大阪セミナー 20130219
Cloudera大阪セミナー 20130219
Interact2019 ws2019 s2d_IN05
Interact2019 ws2019 s2d_IN05
サポート エンジニアが語る、トラブルを未然に防ぐための Azure インフラ設計
サポート エンジニアが語る、トラブルを未然に防ぐための Azure インフラ設計
Cmc cmd slim
Cmc cmd slim
キャッシュ・権威 兼用型浸透問題への対処
キャッシュ・権威 兼用型浸透問題への対処
Cassandraバージョンアップ&移設
1.
Cassandra99台を移設してバー ジョンアップした話 あの鬼の哭くシステムは その後どうなったのか?
2.
こいつを改善した話をします
3.
今日話すこと • Cassandraとの戦歴 • クラスタ分けた話 •
そして移設へ・・・
4.
システム構成(2012~2014年頃) • Node数:99台 • サーバスペック 機器:物理サーバ(DELL) CPU:
16コア、24コアが混在 メモリ:64GB HDD:以下構成が混在 600GBx4(RAID-10) 600GBx2(RAID-1)+SSD 512GBx2(RAID-0) 600GBx2(RAID-1)+HDD(SATA) 1TBx2(RAID-1) • クラスタ数:1 • Cassandraバージョン:1.1.5-2 • 1nodeあたりのデータサイズ:約200~300GB
5.
この頃よく起こっていたこと • SSDがぶっ壊れまくっていた • Node再構築でRepair→Compaction祭りループ •
Heap使いきってプロセスハングが頻発 詳しくはWebで。。。
6.
対処したこと • SSD撲滅→HDD(1TB)に交換 →この頃は容量問題があったのでSATA 1TBに交換。 →ディスクIOが遅すぎてプロセス再起動に20~30分かか る事案発生。 →容量問題解決してから、順次SASに入れ替える作業して いくことになる。 ・Heapサイズを12GBに変更 →推奨値は8GBだが足らないので増やした。 →とりあえずHeapは安定した。
7.
クラスタ分割 • とにかく一番容量でかいcolumn familyをなん とかしたい。 →このCFのデータ保持期間は約1カ月 →このCFのデータを第1クラスタと第2クラスタで2重書き込み すれば安全にクラスタ分割できそう
8.
第2クラスタ誕生へ 第1クラスタ 第2クラスタ 第1クラスタ用 リソースAPI 第2クラスタ用 リソースAPI API郡 ・第1クラスタ、第2クラスタ両方 にデータを書き込むようにする。 ・第2クラスタでの運用に問題な いこと確認できた時点で、第1ク ラスタのCFをTrancate。
9.
クラスタ分割した結果。。。 • 1Nodeあたりのデータサイズが約300GB以 上あったのが、100GBくらいまで削減!!
10.
システム構成(2014~2015年頃) • Node数: 第1クラスタ:99台 第2クラスタ:30台(→15台に削減) • サーバスペック 機器:物理サーバ(DELL) CPU:
16コア、24コアが混在 メモリ:64GB HDD:600GBx4(RAID-10) • クラスタ数:2 • Cassandraバージョン: 第1クラスタ:1.1.5-2 第2クラスタ:1.2.13 • 1nodeあたりのデータサイズ 第1クラスタ:約150GB 第2クラスタ:約2GB
11.
そして移設へ • 移設先は物理or仮想? • データ転送にどれくらい時間かかる? •
バージョンアップする?
12.
物理にするか仮想にするか • 第1クラスタは物理サーバで決定 • 第2クラスタは仮想でも十分いけそうだったの で仮想サーバで決定
13.
データ転送の時間 • 1nodeあたり約150GBくらいデータがあって、 99台同時に転送しなければならない。。。 • スナップショットの差分を転送することで時間 短縮できそう
14.
移設元DC 移設先DC Cassandraデータ スナップショット保管 nodetool snapshotで差分ス ナップショットを定期取得 旧Cassandraサーバx99台
新Cassandraサーバx99台 スナップショット保管rsyncで 定期コピー 約5分で99台のデータ転送を実現!
15.
バージョンアップするか? • 1.1.5の運用はもうしたくない。。 • Cassandra止めるチャンスはもう2度とないかもし れない。。 →バージョンアップやろう! •
バージョンは何にする? →第2クラスタで1.2系の運用実績がある → 1.1系からは1.2系踏まないと2系にはできない → 1.2系の最新(1.2.19)でいこう (DataStaxさんにもこのバージョンの安定性は確認)
16.
upgradesstables • Cassandraバージョンアップ後は upgradesstablesを実行してデータ構造を1.2用 に変換しないといけない • upgradesstablesをしないとrepairやJoinなどが できない(データの読み書きは可能) •
150GBのデータで約8時間かかる。。。 →メンテ時間内で終わらない。。。
17.
upgradesstablesどうしよう • メンテあけてからやるしかない • オンラインで実行しても問題ないことを DataStaxさんに確認 •
負荷かけながら実行しても問題ない(サーバ 負荷や読み書き)ことを検証して確認 • あとupgradesstablesしたデータは1.1の環境で は読み込めない(プロセス起動できない) →これ実行後は旧環境にデータ戻せない!
18.
負荷試験 • 旧環境のRead/Writeリクエスト:約9000/sec • Cassandra-stressを使って負荷生成 →Read/Writeリクエスト:20000/sec •
OSリソースに問題ないことを確認 • Cassandraステータスで問題ないことを確認
19.
第1クラスタ移設手順 • 旧環境でスナップショット取得 • スナップショットを新環境に転送 •
md5sumで新旧データ比較 • 新環境にてCassandra1.1で起動 • Cassandra停止して1.2にバージョンアップ • Cassandra1.2で起動 • OpsCenterでクラスタに問題ないこと確認 ↑ここまでの作業時間は約90分 • メンテあけてからupgradesstablesを実行
20.
第1クラスタ移設で工夫したこと • 手作業を撤廃→スクリプト化した • スクリプトを全Node同時に実行するために Fabricを使用 •
Fabric実行はJenkinsでJob化 • 各NodeのCassandraバージョンアップと設定 ファイル配布はChef-zeroで実施
21.
第2クラスタの移設 旧Cassandra クラスタ 新Cassandra クラスタ 旧クラスタ用 リソースAPI 新クラスタ用 リソースAPI API郡 移設元DC 移設先DC ・旧クラスタ、新クラスタ両方に データを書き込むようにする。 ・新クラスタでの運用に問題ない こと確認できた時点で、旧クラス タを撤去
22.
システム構成(2016年) • Node数: 第1クラスタ:99台(物理) 第2クラスタ:6台(仮想) • サーバスペック CPU:
24コア メモリ:64GB HDD:600GBx6(RAID-10) • クラスタ数:2 • Cassandraバージョン: 1.2.19 1nodeあたりのデータサイズ 第1クラスタ:約150GB 第2クラスタ:約5GB
23.
バージョンアップして一番よかったこと • repair時のデータ肥大化がなくなった →1.1のときはrepair後はデータ肥大化するの でメジャーCompaction必須だったが、この 運用がなくなった。
24.
今後やりたいこと • Node数減らしたい。。。 • 不要データ削減したい。。。
Download now