Posts
Kubernetes チャレンジ その2
どうしてもGKE上でKusanagi on Docker動かしたい。シリーズその2。
**何かの解決を期待してこのエントリにたどり着いた方、申し訳ございませんがその足でお帰り下さい。**田中(゜p゜)の悩みが深まっただけでございます。
**前回のエントリ**の通り、ローカルのKubernetes環境の構築には成功。
しかし本日は一進二退という感じで、むしろ退きました。
既にKusanagiはローカルのDockerにデプロイはできているんですが、何故かどーしてもコレ。
まー、ボリュームのマウントがうまくいってないんだろな、というのは分かりましたが、色々切り分けると、何故かKusanagI on Dockerは、Dockerコンテナをダウンさせても、データが残るという事象に到達。
もはやKubernetes関係ない。
結論からいうと、裏でKusanagiがVolumeマウントしてやがりました。
「docker volume ls」すれば一発なんだろうけど、ああ悲しきかな、田中(゜p゜)は初心者。かなりの時間右往左往してしまいました。
挙句の果に、Docker落とさずにマウントされた実体ファイルを移動してみるという暴挙に居たり、結果がコレ。
まあ普通に壊れますわな。
その後、Dockerの再インストールはなんとか食い止めましたが、Kusanagiさんは再インストール。orz。
で、Kusanagiのボリュームのマッピングはだいたい把握したので、いかにそれをKubernetes用に落とし込むか、というのが課題となりまして。
Webを漁るとやっぱりディスクのマウントというのは課題になるみたいで、Kubernetesでもゴニョゴニョ開発中のこと。嫌な予感するなあ。
そもそもKubernetesのPODつうのは揮発性でかつ複数存在するものであって、書き込みが必要なデータをどっかに置いとかなきゃいけない。
一般的なシステムならDBにおけば解決なんだろうけど、残念ながら田中(゜p゜)が使いたいのはWordpressでおもいきりディスク依存。
レガシーな田中(゜p゜)の知識でも、複数のノードから一つのディスクにアクセスするっつうのは排他制御などの関係からえらく面倒だという認識はある。
結局、可用性も物理考慮しないとだし、ディスクの悩み解決してないし、**レガシーなインフラとあまり変わらんやん!
**
ということで、もう少し頑張りたいと思います。
Posts
Kubenetes(Minikube) on ローカル環境構築
どうしてもGKE上でKusanagi on Docker動かしたい。
けど、KusanagiのGitにはDocker-compose用のyamlしかないので、ローカルでKubenetes動かして、自分でyaml作ってみることにした。
が、ローカル環境構築でとにかく苦戦。
こんな時、Macならトモダチがたくさんいるのにな。
ただ、いちおうダッシュボードまで上がり、テスト用のデプロイも上手くいったので、環境構築はなんとか完了です。環境構築だけでもうグッタリ。ちなみにUbuntu18.04です。GKEクリソツですが、ローカルのダッシュボード環境です。
構築の「流れ」はブログとか参照で良いが、実際の手順は公式マニュアル見たほうが良いすね。
1ステップごとに2〜3往復して、結局公式の手順に落ち着くんだから。
以下、自分用メモです。
STEP1 Dockerのインストール ココ。
パッケージでインストールしてまうのが一番早い。
https://docs.docker.com/engine/install/ubuntu/
他のWebサイトにスクリプト流すパターンあるが、パッケージと整合性取れなくなるのでしぬ。
STEP 2 Minikubeインストール Minikubeは一番しんだ。インストールまではどこのサイトでも一緒だが、スタート時のオプションがnoneやvitualBoxではダメ。 田中(゜p゜)の環境もあると思うが致し方なくdockerを選択。
https://kubernetes.io/ja/docs/setup/learning-environment/minikube/
minikubeなのに1.5GBもコンテナで食ってますよ。
てかそもそもコレ、本当にminikubeなのかしら。Kubenetesなのでは?
田中(゜p゜)の技術力では真実をトレースする余裕がない。
STEP 3(Optional) Dashbordインストール これは完全に趣味の世界。
GKEのGUIインターフェイスが便利なので、ほしいと思っただけ。
認証周りはトークンでしかできないことに注意。
https://kubernetes.io/ja/docs/tasks/access-application-cluster/web-ui-dashboard/
なんか開発中っぽいよね。Googleの人ならHTML5でサラッと書いてそう。
PROXY上げとかなきゃいけないのも面倒だし。
その他 その他、久しぶりにVS codeとか引っ張り出してきていじってみました。
docker-composeとか右クリック一発でやってくれて便利だな。
Kubenetesのプラグインはまだ動かんです。
続きます。
Posts
Ubuntuで使える Windows風ペイントツール
Lubuntuを16.04から18.04にあげても見た目変わらなかったが、一つだけ激しく感動したことがある。
なんとWindowsペイント風のペイントツールがついに! 実装された!
なんでも、KolourPaintというらしい。
田中(゜p゜)は描画に、添付画像のマーキングに、トリミングに、エビデンス偽造にWindowsペイントツールをフル活用する人なので、これを使うためだけにVMPlayerのWindows10を起動することが多かったのだ。
今まで手軽な描画ツールが無かっただけにこれは嬉しい。
願わくばPowerPointもクライアントソフト並にWeb版が動作してくれれば、田中(゜p゜)個人のお絵かき環境は完璧なのだが。
まあ無理かなー。
Posts
祝! ブログ村 IT技術情報ランキング一位!
せっかくなんで魚拓取っておこう。・・・・・・。
・・・・・・・・・・・・・。
うーん。週間INが75ですけど。あと始めて一ヶ月も経ってませんが。
どんだけディレクトリ掘ってんだ、という話ですか。
なにか憑いている可能性もあるな…。
Posts
WordPress on GKEチャレンジ その3(終)
WordPress on GKEチャレンジ その1
WordPress on GKEチャレンジ その2
結論からいうと、できたはできた。
が、最終的にできたのは、下記のkusanagiデプロイにGCPのロードバランサかぶせただけ、みたいなつまらない構成。
https://qiita.com/nagase/items/5525bd80196802b0a07a
※クッソ早いけど、さっきwp-config.php壊したのでこんなですwww
ロードバランサー、¥2,500/月でお高いんですよ。
知恵がないためにお金払わないとなんだなぁ。
結局のところ、サービスのロードバランサ使えば、GKEに対してのデプロイ自体は楽勝。厄介だったのは証明書の自動管理。正直あきらめた。
どこもLet’s Encryptなんだけど、クラウドのDNSをAPIで叩かなきゃいけなくて、それがなー。
あと、Google DomainでAPI叩けず、Cloud DNSに移行したんだけど、派手にドメイン名をtypoしとって、半日このサイト止まっとった。悲しい。
しんどいポイント コンテナでの証明書管理にcert-managerてのを使う。ただ、Webに書いてある情報はどれも古くて、今のcert-managerのバージョンに合ってない。
インストール、yamlの書き方で、最も信頼ができたのは結局公式サイト。
https://cert-manager.io/docs/installation/kubernetes/
https://cert-manager.io/docs/configuration/acme/dns01/
https://cert-manager.io/docs/configuration/acme/dns01/google/ 公式サイトを完璧にトレースしても証明書取得時にエラーが出るので、どうも未知の事象を踏んだっぽい。が、英語のフォーラムに参加する気力はない。 Kubenetesのレポジトリ管理にHelmつうアプリ入れるんだけど、v3とv2でコマンド体系が全く違ってた。基本公式サイトはv3。 Gitのやつがコケたのは、Helmのバージョンとレポジトリが古いから。証明書管理もkube-legoっていう、cert-managerの作者が以前作ってて放置したもののようで、トレースする気が失せた。
https://github.com/stcox/gke-wordpress ということで証明書運用の自動化は諦め気味…。 今回学んだこと 更新の早いコンポーネントは、ブログを頼りにせず、公式ドキュメントを見る。 Kusanagiクソ早い。別にGKEじゃなくても良いかも。 抽象化されるととても便利だが、行き過ぎるとワケわからなくなる。
Pod間、もといコンテナ間の通信はyamlベースに図を書いてみないと分からない 切り分けたくてもPodにツールが入ってない。入れるのメンドイ。 こういうのを管理するための構成管理ツール売れそうだなぁ、と思った。 PHPを7.0 → 7.3に上げた時は、ワンライナー、モノの10秒で終わって少し感動。 コンテナ間の通信にオーバーレイ技術使われとってワロタ。 結局のところガチの可用性を考慮したら物理を意識しないとダメっぽい。インフラ観点だと、ポッドの割当論理設定を可視化した上でテスト計画立てないと。項目すげー増えそう。 今後のこのサイトについて 当たり前かもだけど、個人サイトレベルでGKEはいらんと思う。 オートスケーラー実装したかったんだけど、どうせロードバランサー使うならGCEでもいいんじゃ。 というか、とりあえずkusanagi入れとけばn1-small1台で十分そう。
Posts
WordPress on GKEチャレンジ その1
将来的に間違えてアクセスが増えちゃった場合に備えて、GKEにWordPress載せるぞ! というチャレンジしてます。
GKEが何かというのは下記リンク参照。
要するに、Dockerをステキにコントロールできる、Googleさんのクールなエンジンなのです。
https://xtech.nikkei.com/atcl/learning/lecture/19/00095/00003/正直WordPressはコンテンツ更新がPersitentDiskとSQLだから、あまり意味ないと思うけど、何事も着手してみないと始まらない。
3年ほど前、GKEのインフラの抽象化度合いに驚き、ある程度自習やってたので、Dockerくらいは分かるだろーとたかをくくってましたが、全ッ然覚えてなくてワロタ。
いや、自分で思ったより脳がおっさんでワロエナイ。
ココで田中(゜p゜)はyaml使えると言ったな。
あれは嘘だ!
ということで、自分のpoorな技術力を噛み締めながら、予習を含めて段階的に学習していきます。
■ローカルにDocker環境構築
というか、これが一番大変だったんですが。
なんかJavaとかEclipse入ってて、環境変数腐ってる。あとぺぇそん(Python)が2.7のせいか、ライブラリのエラーでまくる。
Ubuntu 16.04だとdocker-compose動作せず。 Ubuntu 16.04 → 18.04 アップグレード。 その他色々ゴニョゴニョしてなんとかローカルでDocker動作させた ■Docker基本おさらい
田中(゜p゜)の環境と違うためか、一部手を加えなければならないところあった。
全然Dockerのコマンド覚えてない自分に幻滅。
https://qiita.com/hiyuzawa/items/81490020568417d85e86■WordPress on Local Docker
これはサンプルの通りやればよかったので楽勝。
基本おさらいのおかげで中身も読めてひと安心。
http://bashalog.c-brains.jp/19/08/15-120000.php
■WordPress on GKE予習
こちらもサンプル通りにやれば良いので楽勝。のはず。
https://cloud.google.com/kubernetes-engine/docs/tutorials/persistent-disk?hl=jaただ、検証用とはいえ費用が怖いので、ワーカーノード削ったり、preemptableマシンにしたりします。
https://blog.a-know.me/entry/2018/06/17/220222※2020/09/18 できました。が、90日で無料クレジットがなくなるので消えます。
http://wp-gke.tmp-net.biz/
←今ココ! ■Wordpress on GKE環境構築
まだ決めてないけど、常時SSL目指して、このあたりのレポジトリ利用を考えてます。
結局自分で書くんじゃないのかーい、というツッコミはなしでお願いしますよ。しんでしまいます。
https://github.com/stcox/gke-wordpress■CI/CD環境構築
できるか分からんけど、CI/CD基盤まで実装してみたい。
Posts
テンションを先に上げた奴は死あるのみ
北斗の拳 イチゴ味より。
アミバの解説。
引用:アニヲタWiki日常会話や記事中で知らず知らずしてテンションが上がってしまう田中(゜p゜)。
テンション下がれば実力者となれるような気がしなくもないないない。
Posts
「やべぇ」の正しい表記について
最近、記事、投稿等で「やべぇ」という言葉が気に入って頻繁に使っておりますが、正しくは「ヤベェ」でも「ヤベエ」でもなく、「やべェ」のようですね。
記事全てを更新するとしぬので、以後、気をつけます。
SQLでゴニョゴニョすれば一発置換できそうですが、怖くてできません。
ちなみに出自は「彼岸島」です。
原作は読んでませんが、Webでアウトラインは掴んでいて、響きが気に入って使ってます。
また、同じようにハイテンションな荒くれ者のことを「ヒャッハー」などと呼称することはありますが、原作の北斗の拳でヒャッハーされたことは一度もなく、正確には「ヒャッハッハッ」が該当するのではないか、とのことです。
・・・ヒャッハッハッ。
なんか急にリズム悪くなったんで、ヒャッハーでいいか…。
Posts
再読:嫌われる勇気
リアル本で読んだ気がしていて、Kilndleでも読みたいな、なんて探して購入しようとしたら、ライブラリにあってビックリした本。
たぶん田中(゜p゜)の中では良い本に入ると思う。
良い本は、見る度に自分の変化に合わせて違う印象を受け、新たな気付きを与えてくれるものだと思う。
ということで、今回の気づき、というか再認識は、
自分の主観によって幸福度、すなわち世界の見え方は違う 嫌われる勇気 = 自分と他人の課題を分離して自由になる より大きな共同体への所属意識を持ち、他者に貢献する かな。
この考え方って、ずいぶん前に京都の禅寺で宿望した時に聴いた、和尚さんの話と共通点が多いなぁ、などと思った。
ただ禅の教えだと「言葉」には限界があり、あくまでも田中(゜p゜)の主観でしかなくて、この書いてある言葉自体にも限界があるのだと思う。 ※禅問答なんてのは、まさに言葉の限界を知るための修行なんだと思います。
英文の原書があるようなので、どう書いてあるのか読んでみたい。