見出し画像

開発日誌:LXD cloud-initコンテナ作成

昨日までに作成が完了したコンテナの作成が一部手動の部分があったのでcloud-initを使った構成管理に変更しました。

コンフィグ(LXDプロファイル)は以下の様になります。

config:
 security.nesting: "true"
 security.privileged: "true"
 user.user-data: |
   #cloud-config
   timezone: Asia/Tokyo
   locale: ja_JP.utf8
   package_upgrade: true
   users:
     - name: ubuntu
       uid: 1000
       sudo: ALL=(ALL) ALL
       passwd: <初期パスを設定しました使ったコマンドは「openssl passwd -6 syokipassword」>
       shell: /bin/bash
       ssh_authorized_keys:
         - <ホスト側で作った公開鍵ファイルの中身>
   packages:
     - openssh-server
     - gnupg
     - wget
     - xrdp
     - tigervnc-standalone-server 
     - ubuntu-desktop
     - language-pack-ja-base
     - language-pack-ja
     - virt-manager
     - qemu-system 
   write_files:
     - path: /etc/polkit-1/localauthority/50-local.d/xrdp-color-manager.pkla
       content: | 
         [Netowrkmanager]
         Identity=unix-user:*
         Action=org.freedesktop.color-manager.create-device
         ResultAny=no
         ResultInactive=no
         ResultActive=yes
     - path: /etc/skel/.xsessionrc
       content: | 
         export GNOME_SHELL_SESSION_MODE=ubuntu
         export XDG_CURRENT_DESKTOP=ubuntu:GNOME
         export XDG_DATA_DIRS=/usr/share/ubuntu:/usr/local/share:/usr/share:/var/lib/snapd/desktop
         export XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
   runcmd:
     - wget -q https://www.ubuntulinux.jp/ubuntu-ja-archive-keyring.gpg -O- | apt-key add -
     - wget -q https://www.ubuntulinux.jp/ubuntu-jp-ppa-keyring.gpg -O- | apt-key add -
     - wget https://www.ubuntulinux.jp/sources.list.d/focal.list -O /etc/apt/sources.list.d/ubuntu-ja.list
     - apt update -y
     - apt upgrade -y
     - apt install -y ubuntu-defaults-ja
     - virsh net-destroy default
     - virsh net-autostart default --disable
     - sed -e 's/^#Port 22/Port 41414/' -e 's/^#SyslogFacility AUTH/SyslogFacility AUTH/' -e 's/^#LogLevel INFO/LogLevel INFO/' -e 's/^#PermitRootLogin prohibit-password/PermitRootLogin prohibit-password/' -e 's/^#PermitEmptyPasswords no/PermitEmptyPasswords no/' -i /etc/ssh/sshd_config
     - sed -e 's/^new_cursors=true/new_cursors=false/g' -i /etc/xrdp/xrdp.ini
     - systemctl enable --now xrdp 
     - systemctl restart xrdp polkit
     - systemctl restart ssh
description: ""
devices: {}
name: vm-mana
used_by: []

昨日VNCでしたが今日はXRDPにもどしました。

理由は、VNCだとGNOMEデスクトップのサイドバーが表示されないからです(僕が設定方法をしらないだけかも?)。

画像1

こんな感じで無事接続できる様になりました。

最終的に手動で行う操作は、GUIの仮想マシンマネージャー接続用のSSH公開鍵作成だけになりました。

cloud-initの威力は、絶大ですね。

これでホストの仮想マシン管理用のLXDデスクトップコンテナの作成は一区切りです。

仮想化基盤にしているサーバーは、もう1つあるのでそちらにも同じコンテナを実装する必要がありますが、資材がもう出来ているので「ポチッと」するだけでOKです。

今日は、このくらいでしたそれではまた明日、お疲れ様です。

※Top画像に使わせていただいたコンテナ画像ありがとうございます。



この記事が気に入ったらサポートをしてみませんか?