
生物学や医学の分野は、人間の学者であれば達成までに50年から100年かかる進歩が、AIの活用によって5年から10年に圧縮可能であると、AI企業・Anthropicのダリオ・アモデイ氏が予想しました。アモデイ氏はこれを「圧縮された21世紀(compressed 21st century)」と表現しましたが、一方で、AI開発プラットフォーム・Hugging Faceの最高科学責任者であるトーマス・ウルフ氏は、AI開発が現状のまま進むと、生まれるのは単なる「サーバー上のイエスマン」であり、「圧縮された21世紀」はもたらされないのではないかと懸念を示しています。
AIの真のブレイクスルーはこのままでは訪れないとAI開発プラットフォーム・Hugging Faceの最高科学責任者が懸念 - GIGAZINE
ウルフ氏は、すでに「全人類の知識」を得ているはずのAIがブレイクスルーにつながらない理由を「人類がすでに知っていることの隙間を埋めているだけだから」と説明し、科学的ブレイクスルーを目指すのであれば、以下のようなことができるかどうかをテストするベンチマークに移行するべきだと述べました。
AIの真のブレイクスルーはこのままでは訪れないとAI開発プラットフォーム・Hugging Faceの最高科学責任者が懸念 - GIGAZINE
・自分自身のトレーニングデータの知識に挑む
・事実に反する大胆な手法を取る
・小さなヒントをもとに一般的な提案を行う
・新たな研究の道筋につながるような、自明ではない質問をする
AIの真のブレイクスルーはこのままでは訪れないとAI開発プラットフォーム・Hugging Faceの最高科学責任者が懸念 - GIGAZINE
⇧ う~む、どちらかというと、「AI」には「幻覚(ハルシネーション)」の抑制を頑張ってもらいたいのだが...
- 厳密なAIの研究・開発
- イノベーション的なAIの研究・開発
の両軸で並行して進めて欲しい気はしますな...
Ansibleの実行できる環境を構築してみる
前回、
⇧ Ansibleを実行する環境構築の話をしたので、実際に環境を構築してみます。
登場人物としては、

⇧ 上図のような感じ。
で、Ubuntuなのですが、
⇧ リリースとサポートの状況は上記のような感じなのだが、「24.xx」が動かず、「22.0x」も自分の環境だと駄目だったので、
⇧「Ubuntu 20.04. LTS Desktop」をダウンロードして利用する。

まずは、「名前」を適当に入力し、(「IOSイメージ」はまだ設定しない)

「自動インストール」は特に何もいじらず、

「ハードウェア」で「メモリ」と「CPU」を設定。

「仮想ハードディスク」は「50 GB」に増やしました。

「仮想マシン(VM:Virtual Machine)」が作成できたら、各種設定していきます。
「Desktop」版なので、「ディスプレイ」を「128 MB」にしておきます。「3Dアクセラレーションを有効化」のチェックボックスはチェックを入れずにおきます。

「ストレージ」で「デバイス」の「コントローラーIDE」で「光学ドライブの追加」を選択し、

「追加」選択。

ダウンロードしておいた「IOSイメージ」を選択し、「開く」ボタン押下。


続いて、「ネットワーク」を選択し、「アダプター2」タブを選択し、「ネットワークアダプターを有効化」のチェックボックスにチェックを入れ、「割り当て」で「ホストオンリーアダプター」を選択。

続いて、「アダプター3」タブを選択し、同じ要領で「内部ネットワーク」を割り当てる。

諸々の設定が済んでいることが確認できたら、起動する。


一旦、インストールをキャンセルして、画面上で右クリックし、「Display Settings」を選択。(解像度の問題で、インストールの選択が見切れるので)

変更する。

「Keep Changes」で。

「日本語」を選択し「続ける」ボタン押下。

「Japanese」を選択し「続ける」ボタン押下。

「最小インストール」を選択し「続ける」ボタン押下。

「インストール」ボタン押下。

「続ける」ボタン押下。

「続ける」ボタン押下。

適当に入力し「続ける」ボタン押下。

インストールされるのを待ちます。

「今すぐ再起動する」を選択。

「内部ネットワーク」の設定をします。(「VirtualBox」は「NAT」と「ホストオンリーアダプター」は良しなに設定されるっぽいのだが、「内部ネットワーク」は手動で設定が必要)


「Vagrantfile」の「内部ネットワーク」の「IPアドレス」と合わせた「IPアドレス」を設定しておきます。

と思ったら、「ホストオンリーアダプター」のネットワークが繋がらない...
一旦、「仮想マシン(VM:VirtualBox)」を停止。
「VirtualBox マネージャー」で「ネットワーク」の確認してみたところ、「DHCP」が無効になっていらっしゃる...

「有効」にしました。

して、「仮想マシン(VM:VirtualBox)」を再起動。

今度は大丈夫そうです。
「端末」を起動し、「ip a」で確認したところ、「ホストオンリーアダプター」に該当する「仮想NIC」に「IPアドレス」割り振られてました。

あとは、
⇧ 参考サイト様の通りに、必要なライブラリをインストールしていきます。
やることは、
- Ubuntu をアップデート
- Guest Additions をインストール
- sshpass、Python、Ansible をインストール
- Ansible をアップデート
- SSH系の設定
- 管理対象ノードのフィンガープリントを無視
- VS Codeのインストール
⇧ 上記の6つ。参考サイト様の通りの手順を実施すればOK。
「2. Guest Additions をインストール」のところで、
⇧ 上記サイトにありますように、「スケールモード」からの復帰が必要になってきますが...
「6. VS Codeのインストール」は、「ネットワークアダプター」で「NAT」が有効になっているはずなので、「ゲストOS」からインターネットにアクセスできるので問題ないはず。



で、諸々のインストールなどが完了したら、続いて、「Vagrant」で他2台の「仮想マシン(VM:Virtual Machine)」を作成します。
「Vagrantfile」を用意。
■Vagrantfile
#
# Common settings for all virtual machines
#
Vagrant.configure("2") do |config|
config.vm.provider "virtualbox" do |vb|
# vb.memory = "4096"
vb.memory = "1024"
# vb.cpus = 1
vb.cpus = 2
vb.gui = true
vb.customize [
"modifyvm", :id,
"--ioapic", "on",
"--graphicscontroller", "vmsvga",
"--nicpromisc2", "allow-all"
]
end
#
## CentOS 8 / marutamachi
##
# config.vm.define :marutamachi do |marutamachi|
# marutamachi.vm.box = "centos/8"
# marutamachi.vm.network "private_network", mac: "00006c000101", ip: "192.168.111.101", virtualbox__intnet: true
# marutamachi.vm.hostname = "marutamachi.example.jp"
# marutamachi.vm.provider "virtualbox" do |vb|
# vb.name = "marutamachi"
# end
# marutamachi.vm.provision "shell", inline: $remove_vmtools
# marutamachi.vm.provision "shell", inline: $common_provisioning
# marutamachi.vm.provision "shell", inline: $centos8_provisioning
# end
#
##
## CentOS 7 / takeyamachi
##
# config.vm.define :takeyamachi do |takeyamachi|
# takeyamachi.vm.box = "centos/7"
# takeyamachi.vm.network "private_network", mac: "00006c000102", ip: "192.168.111.102", virtualbox__intnet: true
# takeyamachi.vm.hostname = "takeyamachi.example.jp"
# takeyamachi.vm.provider "virtualbox" do |vb|
# vb.name = "takeyamachi"
# end
# takeyamachi.vm.provision "shell", inline: $remove_vmtools_yum
# takeyamachi.vm.provision "shell", inline: $common_provisioning
# takeyamachi.vm.provision "shell", inline: $centos7_provisioning
# end
#
# Ubuntu 20.04 LTS / ebisugawa
#
config.vm.define :ebisugawa do |ebisugawa|
ebisugawa.vm.box = "ubuntu/focal64"
# ebisugawa.vm.network "private_network", mac: "00006c000103", ip: "192.168.111.103", virtualbox__intnet: true
# ホストオンリーアダプター
ebisugawa.vm.network "private_network", ip: "192.168.56.103"
# 内部ネットワーク
ebisugawa.vm.network "private_network", ip: "192.168.111.103", virtualbox__intnet: true
ebisugawa.vm.hostname = "ebisugawa.example.jp"
ebisugawa.vm.provider "virtualbox" do |vb|
vb.name = "ebisugawa"
end
ebisugawa.vm.provision "shell", inline: $remove_vmtools_apt
ebisugawa.vm.provision "shell", inline: $common_provisioning
ebisugawa.vm.provision "shell", inline: $ubuntu_provisioning
end
#
# Ubuntu 18.04 LTS / nijyo
#
config.vm.define :nijyo do |nijyo|
nijyo.vm.box = "ubuntu/bionic64"
# nijyo.vm.network "private_network", mac: "00006c000104", ip: "192.168.111.104", virtualbox__intnet: true
# ホストオンリーアダプター
nijyo.vm.network "private_network", ip: "192.168.56.104"
# 内部ネットワーク
nijyo.vm.network "private_network", ip: "192.168.111.104", virtualbox__intnet: true
nijyo.vm.hostname = "nijyo.example.jp"
nijyo.vm.provider "virtualbox" do |vb|
vb.name = "nijyo"
end
nijyo.vm.provision "shell", inline: $remove_vmtools_apt
nijyo.vm.provision "shell", inline: $common_provisioning
nijyo.vm.provision "shell", inline: $ubuntu_provisioning
end
#
## Debian 10 / oshikoji
##
# config.vm.define :oshikoji do |oshikoji|
# oshikoji.vm.box = "debian/buster64"
# oshikoji.vm.network "private_network", mac: "00006c000105", ip: "192.168.111.105", virtualbox__intnet: true
# oshikoji.vm.hostname = "oshikoji.example.jp"
# oshikoji.vm.provider "virtualbox" do |vb|
# vb.name = "oshikoji"
# end
# oshikoji.vm.provision "shell", inline: $common_provisioning
# oshikoji.vm.provision "shell", inline: $set_vagrant_password
# oshikoji.vm.provision "shell", inline: $debian_provisioning
# end
#
##
## AlmaLinux 8 / oike
##
# config.vm.define :oike do |oike|
# oike.vm.box = "almalinux/8"
# oike.vm.network "private_network", mac: "00006c000106", ip: "192.168.111.106", virtualbox__intnet: true
# oike.vm.hostname = "oike.example.jp"
# oike.vm.provider "virtualbox" do |vb|
# vb.name = "oike"
# end
# oike.vm.provision "shell", inline: $common_provisioning
# oike.vm.provision "shell", inline: $centos8_provisioning
# end
end
#
# Common provisioning for all virtual machines
#
$common_provisioning = <<-'SCRIPT'
timedatectl set-timezone Asia/Tokyo
sed -e s/^'PasswordAuthentication no'/'PasswordAuthentication yes'/ /etc/ssh/sshd_config > /tmp/sshd_config
mv -f /tmp/sshd_config /etc/ssh/
chmod 0600 /etc/ssh/sshd_config
systemctl restart sshd.service
SCRIPT
#
# Remove open-vm-tools
#
$remove_vmtools = <<-'SCRIPT'
dnf -y remove open-vm-tools
SCRIPT
#
# Remove open-vm-tools (yum command)
#
$remove_vmtools_yum = <<-'SCRIPT'
yum -y remove open-vm-tools
SCRIPT
#
# Remove open-vm-tools (apt command)
#
$remove_vmtools_apt = <<-'SCRIPT'
apt -y remove open-vm-tools
SCRIPT
#
# Set the password for the account vagrant
#
$set_vagrant_password = <<-'SCRIPT'
echo 'vagrant' > pass.txt
echo 'vagrant' >> pass.txt
passwd vagrant < pass.txt
SCRIPT
#
## Provisioning for CentOS8
##
#$centos8_provisioning = <<-'SCRIPT'
#dnf -y update
#reboot
#SCRIPT
#
##
## Provisioning for CentOS7
##
#$centos7_provisioning = <<-'SCRIPT'
#yum -y update
#reboot
#SCRIPT
#
# Provisioning for Ubuntu
#
$ubuntu_provisioning = <<-'SCRIPT'
apt -y update
apt -y dist-upgrade
reboot
SCRIPT
#
## Provisioning for Debian
##
#$debian_provisioning = <<-'SCRIPT'
#apt -y update
#apt -y upgrade
#reboot
#SCRIPT
⇧ 参考サイト様のものを流用。
適当な場所に配置。

「コマンドプロンプト」などで、「Vagrantfile」の配置されてるディレクトリに移動し、以下のコマンドを実行。
■Vagrantfileの内容で仮想マシン構築、起動
vagrant up

起動されました。

で、「Ansible」のインストールされている「仮想マシン(VM:Virtual Machine)」に移動して、「Vagrant」で起ち上げた「仮想マシン(VM:Virtual Machine)」に対して、「ping」で疎通確認。

問題無く通信できていそうです。
「SSH」接続はというと、

⇧ 「Ubuntu 18.04 LTS」は「SSH」の「パスワード認証」が許可されていますが、「Ubuntu 20.04 LTS」の方は許可されていないので、「Ubuntu 20.04 LTS」の「仮想マシン(VM:Virtual Machine)」にログインします。

「/etc/ssh/sshd_config」を編集していきます。

以下の4か所がyesになっていればOK。

「sshd」サービスを再起動しておきます。

改めて、「SSH」接続を試して、無事、つながりました。

あとは、「VS Code」で「Ansible」の「Playbook」などを実行していけるかと。
次回は、「Ansible」の練習をしていけそうです。
毎度モヤモヤ感が半端ない…
今回はこのへんで。
NG集
ネットの情報を見てると、最新の「24.04 LTS」で不具合が多いと言う話が多かったので予想はしていたのだけど、
⇧ 上記サイトからダウンロード。
「VirtualBox」で「仮想マシン(VM:Virtual Machine)」を作成していくのだが、
⇧「推奨システム」の要件を満たすのが私のPCでは不可能なので、値は変えていきます。

起動でエラーなる。

『Vmwgfx seems to be running on an unsupported hypervisor』で検索すると、滅茶苦茶ヒットするんだが...




