Proxmoxのクラスター構築からライブマイグレーションまで(未完成)

- ## 動作環境
Proxmox VE 8.2 Graphical
 iSCSI
クラスター2台

:::note info
別にiSCSIじゃなくてもライブマイグレーションに対応したプロトコルであれば大丈夫です。
:::
例 NFS,Ceph
- ## 1.Proxmoxのインストール
- <dl>
  <dt>Proxmoxのisoのダウンロード</dt>
  <dl>
  
  https://www.proxmox.com/en/downloads/proxmox-virtual-environment/iso
現時点では最新バージョンがProxmox VE 8.2なので、それをダウンロードします。
- ダウンロードが完了したらRufusなどを使用してインストールUSBの作成を行ってください。
- インストーラーの手順に沿ってインストールして下さい。ちなみに私はGUIがあった方がいいのでGraphicalにしました。別に計算ノードであればGUIなくても良いかもです。本人の判断に委ねます。
詳しいことはここに書かれてます。
https://qiita.com/C_Kenta/items/70ecb32495fce9e1de52
:::note alert
インストール先のデータは全て削除されます
大事なデータがある場合はバックアップを取っておいてください。
:::
いやぁね、私もインストールする時パーティションの指定ができると思ってたんですよ。それができないとはね。くれぐれも皆さん注意して下さい。
その後起動します。んで、起動するとターミナルが出てきてこん感じのやつが出てくると思います。
```[インストール時に入力したユーザー名] login:```
初期のユーザー名はrootになっているのでrootと入力します。
その後パスワードを聞かれるのでそのパスワードはインストール時に入力したパスワードを入力してください。
これでとりあえずログインできました。ログに
```192.168.x.xx:8006```
ってやつが出てくると思うのでLAN内に接続されているデバイスのwebでアクセスしてみてください。そうするとまた同じようにユーザー名パスワード聞かれるので入力します。
それでとりあえずWebGUIは使えるようになりました。
- ## 2.クラスターの作成
この画像をご覧ください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742490/c4e80612-ed6c-e01e-ffb4-2f61d91df394.png)
クラスタ作成という所をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742490/2be0b56c-24b4-7482-76be-54333b0bcbbf.png)
引用 https://qiita.com/yuuri23/items/7d3bc77b441728f8621b
こんな風な画面が出てくると思います。基本的には何もいじらなくて結構です。Cluster NetworkはそのProxmoxを実行しているローカルipにしておけば良いでしょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3742490/05026732-29b9-b669-5fb1-b3c24d189fe8.png)このカーソルの所にあるJoin情報をクリックして情報をコピーなりメモなりして下さい。
その次に、別のProxmoxをインストールしたパソコンのWebGUIからクラスタに参加をクリックします。そこに多分FingerPrintとipアドレスを手動で打つやつとjoin情報を打つだけの奴があるはずです。私の場合はjoin情報でやります。
後はクラスターに追加します。
- ## 3.iSCSIストレージサーバーの構築
iSCSIサーバーの構築について、私はtargetcliを使いました。とりあえずインストールしましょう。
```bash:bash
apt update && apt install targetcli-fb
```
- ## 4.バックエンドストレージ(LUN)の作成
- iSCSIターゲットに与えるLUNを作成します。
LUNはIQNのストレージを識別するためのものです。
```bash:bash
targetcli /backstores/block create LUN名 /dev/sd[x] 
# /dev/sd[x]は提供するストレージに置き換えてください。
# LUN名は好きな名前にしてください。
```
- ## 5.iSCSIターゲットの作成
iSCSIターゲットの作成、IQNの作成を行います。
 iSCSIターゲットとは？多分だけどこいつが共有ストレージとして使えるようにしてるヤツです。
IQNとは、多分だけどどこのターゲットに接続しているかを判別するためにあるんじゃないかなと思います。
```bash:bash
/iscsi create iqn.[2024-04].[local.gretard]:target1
# target1の名前は別に何でも良いです。
# 2024-04については作成した年月を書いたら良いと思います。
# local.gretardの部分はgretard.localというドメインだった場合、.の位置を目処にして逆にします。この場合、local.gretardです。
```
勿論のこと[]外してくださいね？
- ## 6.LUNの追加
  さっきのiSCSIターゲットにLUNを追したいと思います。
```bash:bash
/iscsi/iqn.[2024-04].[local.gretard]:target1/tpg1/ luns create /backstores/block/[LUN名]
# さっき入力したLUN名
# 2024-04については作成した年月を書いたら良いと思います。
# local.gretardの部分はgretard.localというドメインだった場合、.の位置を目処にして逆にします。この場合、local.gretardです。
```
- ## 7.ポータルの追加
ポータルとは？ ポータルとは、iSCSIターゲットに接続するためのルートのことです。
```bash:bash
/iscsi/iqn.2024-04.local.gretard;target1/tpg1/portals create 192.168.x.xx 3260
# 192.168.x.xxはそのストレージのあるパソコンのipアドレスにしてください。
# 3260はポート番号 別に3260じゃなくても良いけど基本的にiSCSIは3260です。(だったはず)
# あなたの入力したIQNとiSCSIターゲットを入れ替えます。
```
- ## 8.アクセス制御についての設定
したい所ですが私は別にLAN内でそんなん必要ないんで説明省きます。

- ## 9.まとめ
私が今回proxmoxを触ったのはただ単にライブマイグレーションに興味を持ったという理由だけなんですね。けど絶対に障害を受けてはいけないサーバーとかだったらHAができるのでとても良いと思いました。未定ですがKubernetesもまた今度やるかもしれません。
ご視聴ありがとうございました。