Skip to content

Linux

検証用 Amazon Linux2023 初期設定メモ (2024/01/04 版)

以前に以下のメモを書きました。

今回は Amazon Linux2023 ベースで改めて検証用の初期設定手順をメモしておきます。 必ずしもセキュリティには十分な配慮をしておらず、あくまで「検証用途」の設定です。

検証用 Ubuntu 24.04 初期セットアップスクリプト

以前に「検証用 Ubuntu 22.04LTS 初期セットアップスクリプト」を用意し、Linux でよく使うコマンドのチートシート に実行方法をメモしておきました。 内容は殆ど変わりませんが、検証用 Ubuntu 24.04 の初期セットアップスクリプトを作成したので改めてメモしておきます。 以下のコマンドラインで実行出来ます。

1
curl -sL https://raw.githubusercontent.com/sig9org/init-linux/master/init-ubuntu24.sh | bash -s

journalctl で見切れるログを折り返して表示する

Linux でデーモン関連のトラブルシューティングを実施する場合、journalctl を使います。 しかし、journalctl はデフォルトでログ表示が見切れてしまい、全文が表示されません。 ログの全文を表示するには --no-pager オプションを指定します。

Amazon Linux 2023 で cron を利用出来るようにする

Amazon Linux 2023 には cron が含まれておらず、スケジュール実行機能を利用したい場合は systemd を使う必要があります。 この仕様については AWS re:PostAmazon Linux 2023 does not contain /etc/cron.d folder という投稿がされており、以下のように記載されています。

Amazon Linux 2023 does not contain "/etc/cron.d" folder. Our application need to add few services installed in this folder. It was supported in Linux 1 and 2. I am running the below command to create the "cron.d" folder in Amazon Linux 2023. "sudo yum install cronie -y" Is this an acceptable workaround? Will this folder no longer be part of any future releases? Please suggest. Thanks Arahanth

他にも GitHubhttps://github.com/amazonlinux/amazon-linux-2023/issues/300 という同様の投稿がされています。 今後はスケジュール実行機能も systemd へ移行する方が好ましいのかも知れませんが、今回は「古いアプリケーションとの互換性も考えて敢えて Amazon Linux 2023 へ cron をインストールする」手順をメモしておきます。

Mojo をインストールする

高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性 で言及されていますが、Mojo という新言語がリリースされたそうです。 記事では Mojo について以下のように記載されています。

MojoはAI処理を高速に実行するための言語だと説明されています。Pythonとの互換性によって既存のTensorFlowやPyTorchなどをそのまま利用可能で、PythonよりもTensorFlowで最大3倍、PyTorchで最大25倍などの高速な処理を実現することで、AI処理の開発や実行のコスト削減などを実現するとしました。

さらにPythonのようなモダンなプログラミング言語の構文を用意しつつ、スタティックなメタプログラミングの能力も持ち、Rustのようなオーナーシップとライフタイムの仕組みを、より分かりやすく提供するとしました。

開発元のModular社は、コンパイラ基盤として広く使われているLLVM、Swift言語、GoogleがAI処理のために設計したCloud TPUなどの開発に関わってきたChris Lattner氏が共同創業者兼CEOを務めています。

今回は Ubuntu 22.04LTS に Mojo をインストールします。 尚、後述しますが現時点では Ubuntu22.04 へ Mojo をインストールすることは出来ませんでした。

CML 上で Linux を使う際の Cloud Init 設定例

Cisco CML には Reference Platform に Ubuntu 22 が含まれるようになりました。 私の場合、この Reference Platform に含まれている Ubuntu 22 イメージは利用せず、日々更新されている Ubuntu Cloud Images を利用しています。 これらのイメージを CML で利用する手順は cmlutils を使い、CLI から CML へ新規イメージを登録する で書きました。

尚、Ubuntu のバージョンごとに付けられたコードネームは Wikipedia に書かれています。

Ubuntu Cloud Images に登録されているイメージには Cloud Init が含まれている為、初期コンフィグを指定することが出来ます。 今回は以下の 3 パターンの Cloud Init 用コンフィグ例をメモしておきます。 尚、いずれのパターンもログイン情報は「ユーザ名は root、パスワードは password」にしています。

  1. NIC x 1 枚構成
  2. NIC x 2 枚構成 (NIC #1 側が Default Route)
  3. NIC x 2 枚構成 (NIC #1 側が Default Route、NIC #2 側には Static Route)

Ubuntu 24.04LTS イメージを CML へ登録する

Cisco CML には Ubuntu が同梱されており、最新の Reference Platform には Ubuntu 22.04LTS が収録されています。 現在は Ubuntu 24.04LTS が開発中であり、Ubuntu Cloud Images 24.04 LTS Daily Build でイメージが CML 上で利用可能な qcow2 イメージも公開されています。 qcow2 ファイルを CML へ登録する手順は以前に cmlutils を使い、CLI から CML へ新規イメージを登録する というメモに記載しました。

ノード定義・イメージ定義ファイルのサンプルを以下にアップロードしておきました。

上記ファイルの内容もメモしておきます。