うさラボ

お勉強と備忘録

CMLでUbuntu触る時初期セットアップはEDIT CONFIGでcloud-initを使うと非常に楽

CMLで構築してるいるときにあった小ネタvol.3

cloud-initは画像赤枠のEDIT CONFIGから設定が可能です

EDIT CONFIGの変更には条件があるようです

  1. サーバが停止している
  2. サーバーが初期化されている

直接書き込むことで変更が可能です

変更後は忘れずに [ save ] を実施しましょう f:id:usage_automate:20210121215740p:plain

初期化はWIPE NODEをクリックすることで可能です。 f:id:usage_automate:20210121215757p:plain

cloud-initの記載方法は下記Qiitaを参考にさせていただきました! qiita.com

実際に作成したconfigは下記です。

#cloud-config
password: PASSWORD
chpasswd: { expire: False }
hostname: intenal-sv4
ssh_pwauth: True
ssh_authorized_keys:
   - your-ssh-pubkey-line-goes-here
timezone: Asia/Tokyo
locale: ja_JP.utf8
write_files:
 - path: /etc/netplan/50-cloud-init.yaml
   content: |
    network:
      ethernets:
        ens2:
          addresses:
            - 10.0.4.2/24
          gateway4: 10.0.4.1
          dhcp4: false
          nameservers:
            addresses:
              - 192.168.100.1
      version: 2
runcmd:
  - sudo netplan apply

UbuntuのIPaddressは/etc/netplan/50-cloud-init.yamlを変更することで設定が可能です。

cloud-initは起動の度に走るわけではなく、初回起動時にのみ動作するようで、

runcmdでip add add 10.0.4.2/24 dev ens2のように設定をしてしまうと、サーバを停止→起動すると設定が飛んでしまいます。

なので、/etc/netplan/50-cloud-init.yamlを変更するようにしました。