M2 Mac mini に Splunk 9.1 を導入する

 時間がかかりましたが、ようやくUCSQ 2023の豪華優勝賞品であるところの M2 Mac mini (メモリ 16GB, SSD 512GB) の、自宅環境内への展開が完了しましたので、宣言通りSplunkを導入してみます。

 作業着手前は、Mac mini (というかM1系のMac) へのSplunk導入に関する情報がそれなりにあるのではないか、という期待があったのですが、意外にも古い情報ばかりだったり、できることができない (これは環境依存かもしれませんが) とされている情報ばかりでした。このため、最新情報として本稿を書いてみることにしました。なお、特に難しい手順を踏む必要はなく、とても簡単に導入できます。

Mac向けの配布ファイルをダウンロードする

 本稿に辿り着くような、Mac miniにSplunkを入れようという物好きは、ある程度物事がわかっていると言う前提で、核心以外の部分は必要最小限の情報で流してゆきます。まずはsplunk.comのSplunk Enterpriseのダウンロードページにアクセスします。事前にアカウント登録が必要なので、持っていない方は登録も行いましょう。

 現在、Splunkはオンプレミス版とクラウド版があります。いずれも最初の60日間は試用という位置付けになるのですが、オンプレミス版は試用終了後もインデックスサイズが500MB / 1日以下 & 個人利用という条件のもとであれば無償で利用し続けることが可能ですのでこちらを選びましょう。もっとも、本稿を見ている時点でオンプレミス版一択だと思いますが。

 さて、Mac版の配布ファイルは2023/7/22時点で以下のようになっています。

 Intel版の、しかもOSX 10.14, 10.15にしか対応していないことになっています。これはコードネームで言うと、それぞれ Mojave (2018年9月リリース) と Catalina (2019年10月リリース) になります。この次のOSである Big Sar (MacOS 11) からARM (= M1系) のサポートが開始され、2020年5月に発売されたMacbook Proを最後にIntel系のCPUを搭載したMacは発売されていません。この最後のMacbook Proに搭載されていたOSがCatalinaだったので、Splunkのサポートもそこで止まっているものと思われます。

 別の言い方をすると、M1系のCPUをネイティブサポートしたSplunkは、本稿執筆時点でこの世に存在しないことになります。しかし、結論から書くと Rosetta2を利用すれば、tgzで配布されているIntel版Splunkが、M2 Mac miniでも正常に動きます。未確認ですが.dmg版もいけるはずです。ちなみにDocker版うまく動かないと言う報告があるようです。私はDockerには疎いので試していませんが…

 まず、上記の.tgz版の “Download Now” で落としたファイルを展開します。Splunk公式のMacへのインストール手順はこちらにありますので、併せて参照することをお勧めします (少し見つけづらい)。書かれている通りに、ダウンロードしたファイルの展開を行います。

% tar -zxvf splunk-9.1.0.1-77f73c9edb85-darwin-64.tgz

 そのまま Download に展開されてしまいましたが、まぁいいことにします。別ディレクトリを指定したい場合は、 “-C (展開先パス名)” を追加してください。解凍が完了すると、展開先パスにsplunkフォルダが作成され、そこにさまざまなディレクトリ・ファイルがあることがわかります。マニュアルに従い、おもむろに起動してみます。

Intel CPU向けSplunkをM2で起動してみる

% cd (install_path)/splunk/bin
% ./splunk start
zsh: bad CPU type in executable: ./splunk

 冷たい返事が返ってきますが、導入先のM2 Mac miniは限りなくまっさらに近い状態でRosetta2は未導入、もしくは利用できない状態だと思われます。Intel CPU向けの.dmgを導入すれば自動的に導入処理が動くようですが、今回はCLIで直接バイナリを起動しているので、その処理が起動されなかったものたと思われます。ググって手動での導入手順を確認し、それに従ってみます。

% /usr/sbin/softwareupdate --install-rosetta --agree-to-licenseBy using the agreetolicense option, you are agreeing that you have run this tool with the license only option and have read and agreed to the terms.
If you do not agree, press CTRL-C and cancel this process immediately.
2023-07-22 12:40:49.686 softwareupdate[16770:88577] Package Authoring Error: 042-01896: Package reference com.apple.pkg.RosettaUpdateAuto is missing installKBytes attribute
Install of Rosetta 2 finished successfully

 これでRosetta2の導入は完了です。ちなみにバイナリを落とすようなことはしていないためか、数秒で終わりました。何やらエラーは出ますが、実効上問題ないようです。

Rosetta2を入れて再チャレンジ

 理屈ではこれで動くはずなので、改めてSplunkの起動を試みてみます。

% ./splunk start
SPLUNK GENERAL TERMS

Last Updated: August 12, 2021

These Splunk General Terms ("General Terms") between Splunk Inc., a Delaware
corporation, with its principal place of business at 270 Brannan Street, San
Francisco, California 94107, U.S.A ("Splunk" or "we" or "us" or "our") and you
("Customer" or "you" or "your") apply to the purchase of licenses and
subscriptions for Splunk's Offerings. By clicking on the appropriate button,
or by downloading, installing, accessing or using the Offerings, you agree to
these General Terms. If you are entering into these General Terms on behalf of
Customer, you represent that you have the authority to bind Customer. If you
do not agree to these General Terms, or if you are not authorized to accept
the General Terms on behalf of the Customer, do not download, install, access,
or use any of the Offerings.

(以下略)

 前回とは異なり、今回はライセンス同意書が現れました。少なくとも起動自体には成功しているようです。最後にライセンスへの同意を求められ、同意すると初期設定が進みます。

Do you agree with this license? [y/n]: y

This appears to be your first time running this version of Splunk.

Splunk software must create an administrator account during startup. Otherwise, you cannot log in.
Create credentials for the administrator account.
Characters do not appear on the screen when you type in credentials.

Please enter an administrator username: starplatinum
Password must contain at least:
   * 8 total printable ASCII character(s).
Please enter a new password: 
Please confirm new password: 
Copying '/Users/starplatinum/Downloads/splunk/etc/openldap/ldap.conf.default' to '/Users/starplatinum/Downloads/splunk/etc/openldap/ldap.conf'.
Generating RSA private key, 2048 bit long modulus
......+++++
....................+++++
e is 65537 (0x10001)
writing RSA key

Generating RSA private key, 2048 bit long modulus
............................................+++++
.+++++
e is 65537 (0x10001)
writing RSA key

Moving '/Users/starplatinum/Downloads/splunk/share/splunk/search_mrsparkle/modules.new' to '/Users/starplatinum/Downloads/splunk/share/splunk/search_mrsparkle/modules'.

Splunk> Like an F-18, bro.

Checking prerequisites...
	Checking http port [8000]: open
	Checking mgmt port [8089]: open
	Checking appserver port [127.0.0.1:8065]: open
	Checking kvstore port [8191]: open
	Checking configuration... Done.
		Creating: /Users/starplatinum/Downloads/splunk/var/lib/splunk
		Creating: /Users/starplatinum/Downloads/splunk/var/run/splunk
		Creating: /Users/starplatinum/Downloads/splunk/var/run/splunk/appserver/i18n
		Creating: /Users/starplatinum/Downloads/splunk/var/run/splunk/appserver/modules/static/css
		Creating: /Users/starplatinum/Downloads/splunk/var/run/splunk/upload
		Creating: /Users/starplatinum/Downloads/splunk/var/run/splunk/search_telemetry
		Creating: /Users/starplatinum/Downloads/splunk/var/run/splunk/search_log
		Creating: /Users/starplatinum/Downloads/splunk/var/spool/splunk
		Creating: /Users/starplatinum/Downloads/splunk/var/spool/dirmoncache
		Creating: /Users/starplatinum/Downloads/splunk/var/lib/splunk/authDb
		Creating: /Users/starplatinum/Downloads/splunk/var/lib/splunk/hashDb
New certs have been generated in '/Users/starplatinum/Downloads/splunk/etc/auth'.
	Checking critical directories...	Done
	Checking indexes...
		Validated: _audit _configtracker _internal _introspection _metrics _metrics_rollup _telemetry _thefishbucket history main summary
	Done
	Checking filesystem compatibility...  Done
	Checking conf files for problems...
	Done
	Checking default conf files for edits...
	Validating installed files against hashes from '/Users/starplatinum/Downloads/splunk/splunk-9.1.0.1-77f73c9edb85-darwin-64-manifest'
	All installed files intact.
	Done
All preliminary checks passed.

Starting splunk server daemon (splunkd)...  
Generating a RSA private key
................................................+++++
...............................................................................................................+++++
writing new private key to 'privKeySecure.pem'
-----
Signature ok
subject=/CN=M2-mini.local/O=SplunkUser
Getting CA Private Key
writing RSA key
PYTHONHTTPSVERIFY is set to 0 in splunk-launch.conf disabling certificate validation for the httplib and urllib libraries shipped with the embedded Python interpreter; must be set to "1" for increased security
Done


Waiting for web server at http://127.0.0.1:8000 to be available........................ Done


If you get stuck, we're here to help.  
Look for answers here: http://docs.splunk.com

The Splunk web interface is at http://M2-mini.local:8000

 無事インストールが終了したようです。一番最後に現れたURLにアクセスしてみます (M2-miniは自分で設定した導入先Mac miniのホスト名で、.localはローカルホストにアクセスするときに必要とされるTLDのようなものです)。

 ログイン画面は省略しますが、無事にトップ画面にアクセスできました。Splunkは会社で日常的に利用しているのですが、それよりもバージョンが新しいためか、見慣れた部分もあればそうでない部分もありますね….会社では一般ユーザにすぎないのですがここでは当然管理者なので、色々面白いことができそうです。

コメントする