デフォルトで英語環境になっていてコンソールが使いづらい

vCenter Server Appliance 6.7 (以下、vCSA) の OS (VMware Photon) のロケール・キーマップはデフォルトで英語になっています。

OS 自体のキー配列が英語になっていても SSH クライアントを使えば普通に日本語キー (jp106) が打てたりしますが、SSH 接続できなくなったり、コンソール上で何か設定したい時 等、必ず コンソールを使わないといけない状況が発生します。

しかし、キーマップ設定が英語レイアウトになっているため、パスワードに特殊文字が混ざっていたりするとログインがうまく行かなかったり、コマンド入力をミスったり、ものすごく作業効率が低下します。

こういった問題を防ぐために、出来れば OS のロケール・キーマップ設定は、日本語環境に合わせて変更しておくことをオススメします。

Step 1. SSH ログイン

vCSA 6.7 インストール時に SSH 接続を有効にした場合には、普通に vCSA の OS へ SSH 接続できるはずです。

もし有効になってない場合には、vCSA 右クリック > コンソールを開く > Troubleshooting Mode Options > Enable BASH Shell を選択して、SSH 接続を有効にしてください。

または、https://vCSA-FQDN-or-IP:5480 (VAMI) へ接続 > アクセス > 編集 > SSH ログインの有効化 > OK をクリックして、SSH 接続を有効にしてください。

その後、TeraTerm のような SSH クライアントを使って、vCSA-FQDN or IP Address:22 (22番ポート) へ SSH ログインします。

  • 接続先 : vCSA-FQDN or IP Address (22番ポート)
  • ログイン ID : root
  • ログイン PW : vCSA 6.7 インストール時に設定した root パスワード

そうすると以下のようにコマンドプロンプト Command> が表示されます。

vCSA 6.7 へ SSH ログイン
1
2
3
4
5
6
7
Connected to service

    * List APIs: "help api list"
    * List Plugins: "help pi list"
    * Launch BASH: "shell"

Command>

Step 2. シェル切り替え前に API リスト出力

特に意味はないですが、せっかくなので、いつものようにシェルへ切り替える前に help api listhelp pi list を実行してみます。

help api と help pi を実行してみる
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Command> help api list
Supported API calls by this server:
com.vmware.appliance.health.applmgmt.get
com.vmware.appliance.health.databasestorage.get
com.vmware.appliance.health.load.get
com.vmware.appliance.health.mem.get
com.vmware.appliance.health.softwarepackages.get
com.vmware.appliance.health.storage.get
com.vmware.appliance.health.swap.get
com.vmware.appliance.health.system.get
com.vmware.appliance.health.system.lastcheck
com.vmware.appliance.monitoring.get
com.vmware.appliance.monitoring.list
com.vmware.appliance.monitoring.query
・・・

Command> help pi list
Available plugin API calls:
com.vmware.clear
com.vmware.cmsso-util
com.vmware.dcli
com.vmware.nslookup
com.vmware.pgrep
com.vmware.pgtop
com.vmware.ping
com.vmware.ping6
com.vmware.pnid-manager
com.vmware.portaccess
com.vmware.ps
com.vmware.rvc
com.vmware.service-control
com.vmware.shell
com.vmware.showlog
com.vmware.shutdown
com.vmware.software-packages
com.vmware.support-bundle
com.vmware.top
com.vmware.tracepath
com.vmware.tracepath6
com.vmware.updatemgr-util
com.vmware.vcenter-restore
com.vmware.vimtop

Step 3. シェル切り替え

シェルへの切り替えは、vCSA 6.0 / 6.5 と同じやり方で > shell を実行するとプロンプトが # に変わります。

シェル切り替え
1
2
3
4
5
Command> shell
Shell access is granted to root
#
#
#

Step 4. Locale、及び Keymap 設定

後は、localectl コマンドを使って、OS (VMware Photon) のロケールとキーマップを日本語環境に合わせて変更します。

Locale 設定
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# localectl status
   System Locale: LANG=en_US.UTF-8
       VC Keymap: n/a
      X11 Layout: n/a

# localectl list-locales
de_DE.utf8
en_US
en_US.iso88591
en_US.utf8
es_ES.utf8
fr_FR.utf8
ja_JP.utf8
ko_KR.utf8
zh_CN.utf8
zh_TW.utf8

# localectl set-locale LANG=ja_JP.utf8
※ 特に問題なければ、何も表示されない

# localectl status
   System Locale: LANG=ja_JP.utf8
       VC Keymap: n/a
      X11 Layout: n/a
Keymap 設定
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
# localectl status
   System Locale: LANG=ja_JP.utf8
       VC Keymap: n/a
      X11 Layout: n/a

# localectl list-keymaps | grep "jp"
jp106

# localectl set-keymap jp106
※ 特に問題なければ、何も表示されない

# localectl status
   System Locale: LANG=ja_JP.utf8
       VC Keymap: jp106
      X11 Layout: jp
       X11 Model: jp106
     X11 Options: terminate:ctrl_alt_bksp

これで、コンソール上でも日本語キーボードのまま文字入力ができるようになります。

vCSA 6.0 (SUSE Enterprise Linux) の場合には、設定ファイル修正後、設定を反映するために OS を再起動する必要がありましたが、localectl コマンドは即時反映されるため、再起動は不要です。

Step 5. root パスワード変更

ついでに、vCSA 6.7 インストール時に一時的に設定した root パスワードを変更したい方は、特殊文字を入れても構いませんので、このタイミングで変更してください。

root パスワード変更
1
2
3
4
# passwd
New password:           #### 新しい PW 設定
Retype new password:    #### 新しい PW 再入力 (確認用)
passwd: password updated successfully

Step 6. コンソール上での文字入力テスト

最後に、vCSA 6.7 のコンソールを開いて、コンソール上で日本語キーボードが打てることと特殊文字がキーボード通りに表示されることを確認してください。

日本語キー配列に変更後、コンソール上で文字入力テスト

コンソール画面が表示されたら Alt + F1Alt + F2 で画面切り替えができます。 コンソール上で特殊文字「@@@@@@」を入力し、ちゃんと表示されることを確認してください。

その他、色々コマンドを実行してみる

せっかくなので、軽く Linux コマンドを実行してみましょう。

uname、free、df 等を実行してみる

ざっくり色々実行して見る
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# uname -a
Linux vcsa.hogehoge.com 4.4.110-2.ph1 #1-photon SMP Wed Jan 10 23:27:15 UTC 2018 x86_64 GNU/Linux

# cat /etc/photon-release
VMware Photon Linux 1.0
PHOTON_BUILD_NUMBER=62c543d

# free -m
              total        used        free      shared  buff/cache   available
Mem:          16038        7729         805          97        7503        7929
Swap:         26615          17       26597

# df -hT
Filesystem                               Type      Size  Used Avail Use% Mounted on
devtmpfs                                 devtmpfs  7.9G     0  7.9G   0% /dev
tmpfs                                    tmpfs     7.9G  656K  7.9G   1% /dev/shm
tmpfs                                    tmpfs     7.9G  704K  7.9G   1% /run
tmpfs                                    tmpfs     7.9G     0  7.9G   0% /sys/fs/cgroup
/dev/sda3                                ext4       11G  5.3G  4.9G  53% /
tmpfs                                    tmpfs     7.9G  1.4M  7.9G   1% /tmp
/dev/sda1                                ext4      120M   28M   84M  25% /boot
/dev/mapper/core_vg-core                 ext4       50G   52M   47G   1% /storage/core
/dev/mapper/log_vg-log                   ext4      9.8G  344M  8.9G   4% /storage/log
/dev/mapper/db_vg-db                     ext4      9.8G  100M  9.1G   2% /storage/db
/dev/mapper/dblog_vg-dblog               ext4       15G   86M   14G   1% /storage/dblog
/dev/mapper/seat_vg-seat                 ext4       25G   76M   24G   1% /storage/seat
/dev/mapper/netdump_vg-netdump           ext4      985M  1.3M  916M   1% /storage/netdump
/dev/mapper/autodeploy_vg-autodeploy     ext4      9.8G   23M  9.2G   1% /storage/autodeploy
/dev/mapper/imagebuilder_vg-imagebuilder ext4      9.8G   23M  9.2G   1% /storage/imagebuilder
/dev/mapper/updatemgr_vg-updatemgr       ext4       99G   69M   94G   1% /storage/updatemgr
/dev/mapper/archive_vg-archive           ext4       50G   85M   47G   1% /storage/archive

# lsblk
NAME                           MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                              8:0    0   12G  0 disk
├sda1                           8:1    0  128M  0 part /boot
├sda2                           8:2    0    1G  0 part [SWAP]
├sda3                           8:3    0 10.9G  0 part /
└sda4                           8:4    0    3M  0 part
sdb                              8:16   0  1.9G  0 disk
sdc                              8:32   0   25G  0 disk
└swap_vg-swap1                252:0    0   25G  0 lvm  [SWAP]
sdd                              8:48   0   50G  0 disk
└core_vg-core                 252:1    0   50G  0 lvm  /storage/core
sde                              8:64   0   10G  0 disk
└log_vg-log                   252:2    0   10G  0 lvm  /storage/log
sdf                              8:80   0   10G  0 disk
└db_vg-db                     252:3    0   10G  0 lvm  /storage/db
sdg                              8:96   0   15G  0 disk
└dblog_vg-dblog               252:4    0   15G  0 lvm  /storage/dblog
sdh                              8:112  0   25G  0 disk
└seat_vg-seat                 252:5    0   25G  0 lvm  /storage/seat
sdi                              8:128  0    1G  0 disk
└netdump_vg-netdump           252:6    0 1016M  0 lvm  /storage/netdump
sdj                              8:144  0   10G  0 disk
└autodeploy_vg-autodeploy     252:7    0   10G  0 lvm  /storage/autodeploy
sdk                              8:160  0   10G  0 disk
└imagebuilder_vg-imagebuilder 252:8    0   10G  0 lvm  /storage/imagebuilder
sdl                              8:176  0  100G  0 disk
└updatemgr_vg-updatemgr       252:9    0  100G  0 lvm  /storage/updatemgr
sdm                              8:192  0   50G  0 disk
└archive_vg-archive           252:10   0   50G  0 lvm  /storage/archive
sr0                             11:0    1 1024M  0 rom

VMware RPM パッケージリスト確認

以下は、RPM パッケージを確認したときの出力結果ですが、PostgresvSphere Update Manager 等、色んなパッケージが入ってます。

VMware RPM リスト
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# rpm -qa | grep -i "vmware"
vmware-jre-1.8.0_151-fcs_b31.x86_64
vmware-studio-init-3.0.0.4-180501041008.noarch
VMware-visl-integration-6.7.0-8546234.x86_64
VMware-TlsReconfigurator-6.7.0-8546234.x86_64
VMware-jmemtool-6.7.0-8546234.x86_64
vmware-pyvmomi-6.7.0-0.0.8546290.noarch
vmware-lwis-6.2.0-7806829.x86_64
vmware-directory-client-6.7.0.2944-8403984.x86_64
vmware-ic-deploy-6.7.0.2436-8403985.x86_64
vmware-certificate-server-6.7.0.3673-8403992.x86_64
VMware-pod-6.7.0-8546234.x86_64
vmware-dns-server-1.0.0-8403990.x86_64
VMware-vmon-6.7.0-8546234.x86_64
VMware-analytics-6.7.0-8016741.x86_64
VMware-cis-license-6.7.0-8016740.x86_64
vmware-sca-6.5.0.281-7342416.noarch
VMware-applmon-cloudvm-6.7.0-8546234.x86_64
VMware-Postgres-osslibs-9.6.6.0-7698979.x86_64
VMware-Postgres-libs-9.6.6.0-7698979.x86_64
VMware-Postgres-server-9.6.6.0-7698979.x86_64
VMware-Postgres-extras-9.6.6.0-7698979.x86_64
VMware-Postgres-pg_top-9.6.6.0-7698979.x86_64
VMware-Postgres-contrib-9.6.6.0-7698979.x86_64
VMware-dbconfig-6.7.0-8546234.x86_64
VMware-vpxd-svcs-6.7.0-8546234.x86_64
VMware-vpxd-agents-eesx-6.7.0-8546234.x86_64
VMware-cloudvm-vimtop-6.7.0-8546234.x86_64
vmware-eam-6.7.0-8546234.x86_64
VMware-mbcs-6.7.0-8546234.x86_64
VMware-UpdateManager-6.7.0-8169861.x86_64
vmware-cam-6.7.0.476-8404962.x86_64
VMware-vsan-health-6.7.0-8546234.x86_64
vmware-vsm-6.7.0-8546234.x86_64
VMware-perfcharts-6.7.0-8546234.x86_64
vmware-studio-appliance-config-3.0.0.4-180501041008.noarch
vmware-studio-vami-tools-3.0.0.4-7927448.x86_64
vmware-studio-vami-lighttpd-3.0.0.4-7927448.x86_64
VMware-vc-support-6.7.0-8546234.x86_64
VMware-vapi-6.7.0-8546234.x86_64
VMware-commonjars-6.7.0-8546234.x86_64
vmware-snmp-1.2.3-1.x86_64
VMware-unixODBC-2.3.2.vmw.2-6.7.0.x86_64
vmware-afd-6.7.0.3517-8403983.x86_64
vmware-directory-6.7.0.2944-8403984.x86_64
vmware-certificate-client-6.7.0.3673-8403992.x86_64
vmware-identity-sts-6.7.0.3807-8403987.noarch
vmware-dns-client-1.0.0-8403990.x86_64
VMware-rhttpproxy-6.7.0-8546234.x86_64
vmware-cm-6.7.0-8546234.x86_64
vmware-psc-health-6.7.0.1200-8403986.x86_64
vmware-esx-netdumper-6.7.0-0.0.8546234.i386
VMware-Postgres-osslibs-server-9.6.6.0-7698979.x86_64
VMware-Postgres-9.6.6.0-7698979.x86_64
VMware-Postgres-pg_rewind-9.6.6.0-7698979.x86_64
VMware-Postgres-cis-visl-scripts-9.6.6.0-7698979.x86_64
VMware-Postgres-odbc-9.6.6.0-7698979.x86_64
VMware-Postgres-client-jdbc-9.6.6.0-7698979.noarch
VMware-Postgres-pg_archiver-9.6.6.0-7698979.x86_64
VMware-vpxd-6.7.0-8546234.x86_64
vmware-virgo-6.7.0-8546234.x86_64
VMware-content-library-6.7.0-8546234.x86_64
vmware-imagebuilder-6.7.0-8546234.x86_64
VMware-sps-6.7.0-8546234.x86_64
vmware-autodeploy-6.7.0-0.0.8546290.noarch
VMware-vcha-6.7.0-8546234.x86_64
VMware-vsan-dps-6.7.0-0.0.8546234.x86_64
VMware-vsanmgmt-6.7.0-0.1.8546234.x86_64

有効状態のサービスリスト確認

以下は、デフォルトで有効化状態 (enabled) のサービス一覧です。

systemctl 有効化されたサービス・リスト
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# systemctl list-unit-files | grep "enabled"
appliance-shutdown.service              enabled
auditd.service                          enabled
autovt@.service                         enabled
cloud-config.service                    enabled
cloud-final.service                     enabled
cloud-init-local.service                enabled
cloud-init.service                      enabled
cron.service                            enabled
crond.service                           enabled
dbus-org.freedesktop.network1.service   enabled
dbus-org.freedesktop.resolve1.service   enabled
dm-event.service                        enabled
dnsmasq.service                         enabled
getty@.service                          enabled
haveged.service                         enabled
irqbalance.service                      enabled
lvm2-activate.service                   enabled
lvm2-lvmetad.service                    enabled
lvm2-monitor.service                    enabled
ntpd.service                            enabled
rpcbind.service                         enabled
rsyslog.service                         enabled
saslauthd.service                       enabled
sendmail.service                        enabled
sshd-keygen.service                     enabled
sshd.service                            enabled
syslog.service                          enabled
sysstat.service                         enabled
systemd-networkd-wait-online.service    enabled
systemd-networkd.service                enabled
systemd-resolved.service                enabled
systemd-timesyncd.service               enabled
vami-lighttp.service                    enabled
vgauthd.service                         enabled
vmtoolsd.service                        enabled
vmware-firewall.service                 enabled
vmware-pod.service                      enabled
vmware-vmon.service                     enabled
xinetd.service                          enabled
atftpd.socket                           enabled
dm-event.socket                         enabled
rpcbind.socket                          enabled
systemd-networkd.socket                 enabled
remote-fs.target                        enabled

終わりに

Photon とは言え、サービス管理も systemctl なので、Ubuntu とか CentOS とか業務で普通に触ってる方なら無理なく使えるかなと思います。

ちなみに、vCSA 6.7 でさらに強化された VAMI の 新しい サービス メニューにて、vCenter Server 上の「全サービス一覧」と「各サービスのステータス確認、再起動・起動・停止」が簡単に出来るようになったので、vCSA OS へ SSH 接続する機会はその分減ると思いますが、場合によってはコマンドが便利なときもあるので。。

VAMI : vCenter サービス一覧

以上、vCenter Server Appliance 6.7 ロケール、及びキーマップ変更 でした。