tag:crieit.net,2005:https://crieit.net/tags/newsql/feed 「newsql」の記事 - Crieit Crieitでタグ「newsql」に投稿された最近の記事 2019-05-12T17:29:25+09:00 https://crieit.net/tags/newsql/feed tag:crieit.net,2005:PublicArticle/14980 2019-05-12T15:32:39+09:00 2019-05-12T17:29:25+09:00 https://crieit.net/posts/cockroachdb cockroachdb のクラスタを作ろうとしてジタバタした記録 <h1 id="Insecure な clustering にさえハマる"><a href="#Insecure+%E3%81%AA+clustering+%E3%81%AB%E3%81%95%E3%81%88%E3%83%8F%E3%83%9E%E3%82%8B">Insecure な clustering にさえハマる</a></h1> <p>host1 で cockroach が無事に起動する事を確認して、host2 でも確認、問題なさそう<br /> で、host2 の node2 を host1 の node1 のクラスタに join させようとするのだけど、無視してしれっと別のクラスタをつくって stand alone で起動してくださる</p> <p>全然、理由がわからない、<a target="_blank" rel="nofollow noopener" href="https://www.cockroachlabs.com/docs/stable/troubleshooting-overview.html">Trouble Shooting</a>を漁っても、ググってもわからない、なんで他のみんなはこんな目にあってないんだろ?<br /> 半泣きで <a target="_blank" rel="nofollow noopener" href="https://stackoverflow.com/questions/56086595/cant-add-node-to-the-cockroachde-cluster">SO</a>に助けを求めたら、速攻で「<strong>node2のcockroach-data消しとかないとダメだよ</strong>」と教えてもらう、Marc さんありがとう、私は人の世の優しさで生かされている!</p> <h1 id="Secure な clustering には当然ハマりそう"><a href="#Secure+%E3%81%AA+clustering+%E3%81%AB%E3%81%AF%E5%BD%93%E7%84%B6%E3%83%8F%E3%83%9E%E3%82%8A%E3%81%9D%E3%81%86">Secure な clustering には当然ハマりそう</a></h1> <p>Insecure な clustering でさえハマってググりまくるという希有な経験をさせていただいておりました私は、その過程で皆様が Secure な cluster を作ろうとしてハマりまくってるのをすでに知っていたので、ビビリながら try</p> <p><strong>Deploy</strong> の <strong>Manual Deployment</strong> の <a target="_blank" rel="nofollow noopener" href="https://www.cockroachlabs.com/docs/stable/deploy-cockroachdb-on-premises.html"><strong>On-Premises</strong></a>を何度も(普通なら1度で十分なんでしょうけど^^;;;)読んで、だんだんと分かってくる</p> <ol> <li>deploy する対象は <strong>certs</strong> folder であって、my-safe-directory は deploy しないでどこかにかくしておく、ここには ca.key ができる</li> <li>前述の ca.key を使って certs 配下に証明書をいくつかつくるのだけど <ul> <li>クラスタ全体で同じものを使う: ca.crt, client.root.crt</li> <li>node ごとに別のものを使う: node.crt</li> </ul></li> </ol> <p>ということをドキュメントの<strong>行間から読み取る</strong>のが物凄く難しかったですが、これがわかればハマりポイントはなさそう...</p> <h2 id="なのにハマる"><a href="#%E3%81%AA%E3%81%AE%E3%81%AB%E3%83%8F%E3%83%9E%E3%82%8B">なのにハマる</a></h2> <p>node1 は起動するのに node2 が join しないどころかリトライを繰り返して起動さえもしない<br /> log (cockroach-data/logs/cockroach.log) をみると(クラスタ作り直した時に消しちゃったので記憶で書いてますが)host 1 の IP アドレスと host2 のIPアドレスが「対象が違う」というようなエラーメッセージ</p> <p>実は、host1 に node2 用の証明書を間違えておいてたというおマヌなのが原因だったんですが、それにしても node1 はシレっと起動して、node2 の起動がエラーになるあたり、cockroachdb 恐るべし</p> <h1 id="番外編:admin UI にログインできない"><a href="#%E7%95%AA%E5%A4%96%E7%B7%A8%EF%BC%9Aadmin+UI+%E3%81%AB%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3%E3%81%A7%E3%81%8D%E3%81%AA%E3%81%84">番外編:admin UI にログインできない</a></h1> <p>admin UI にログインするためのカウントを作る SQL がドキュメントとか、admin UI のページにでてるんですが、これをコピーして sql client にペーストすると<strong>パスワードの前後のシングルクオートが化けて</strong>アカウントつくってくれるのでログインできません ^^;;;<br /> これも原因に気づくまでずいぶん時間かかったんですけど全く<strong>知育玩具</strong>かと思うぐらい昨日今日で頭がよくなってきた気がする o(´∀`)o</p> <h1 id="感想"><a href="#%E6%84%9F%E6%83%B3">感想</a></h1> <p>名前から<strong>ゴキブリ</strong>なみの<strong>しぶとさ</strong>を期待してたんですけど<strong>絶滅危惧種</strong>育ててるのかと思うほど大変だったですが...</p> <p>てか、立ち上がっちゃえば核戦争後まで生き延びるほどしぶといクラスタだと期待しつつ次号につづく</p> Dr. Takeyuki Ueda