ortの灰ログ

人狼のことや技術のことや日々雑感

Oracle Cloudでつよつよスペックの無料枠を獲得してkubernetesクラスタを構築したメモ

この記事は

他の記事を参考にしながら構築していったのでメモを残しておきます。

参考にしました

Oracle Cloudの無料枠でKubernetesクラスタを構築する(完全版) | blog.potproject.net
無料で自分だけのオンラインストレージを建てる(Oracle Cloud)

つよつよスペックの無料枠って?

Always Free Resources

2021/6現在、

  • VM.Standard.A1.Flexを4 OCPU/24 GBまで自由に割り当て可能
    • 2CPU12GB + 1CPU6GB + 1CPU6GB とか、2CPU12GB + 2CPU12GBとかもできる
  • Public IPアドレス3つまで(エフェメラル2+予約済み1)可能
  • Block Volume合計200GBまで(ただしVM1つにつき50GB使われる)可能

という太っ腹仕様。
VPS換算にすると数千円レベル。

ちなみにVM.Standard.A1.FlexはarmベースなのでM1 Macのように一部制約が出てきます。
(これはまた別の記事で)

Oracle Cloud SignUp

東京リージョンは激戦区らしいので大阪リージョンで。
Optional項目も埋めないとsubmitできない箇所があった。(どこかは覚えていない)

VMインスタンスを作る

上記を2つ(master用、worker用)にした。
なかなか取得できないが、他の作業しながら1時間に1回程度チャレンジしたらなんとかその日のうちに取得できた。
kubernetesクラスタを組みたいのでネットワークは同じものを選択。
(一度間違えて別にして作り直した)

Block Volumeを作る

無料枠は200GBまでで、VMインスタンス1つにつき50GBのboot volumeが確保されるらしいので、残りは100GB。
masterにattachするつもりで100GBのものを1つ作成した。

作成したBlock volumeをVM instanceにattach

master用にattach。
無料で自分だけのオンラインストレージを建てる(Oracle Cloud) の手順6までを参考にする。
このあたりの設定のやり方はほぼ忘れているのでありがたい...

kubenetes構築

Oracle Cloudの無料枠でKubernetesクラスタを構築する(完全版) | blog.potproject.netを参考にして構築。
手順通り進めると

sudo apt-get install -y kubelet kubeadm kubectl

のあたりで
Installing kubeadm · Issue #25174 · kubernetes/website · GitHub
と同じ問題が発生してコケた。(正確には、その前のsudo apt-get updateでコケてる)
これは、

sudo apt remove apt-transport-https
sudo curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl

のように一旦apt-transport-httpsをアンインストールすれば進められた。

あとは、参考にした記事の後の方に書いてあるが、
workerノードでkubeadm joinする前にOracle Cloudで10.0.0.0/16の全ての通信を許可しておかないとjoinできない。(当たり前体操)

おわり

これでkubeadmを利用したkubernetesクラスタ(といってもワーカー1つだけど)構築完了。

続き

oritone.hatenablog.com