1,はじめに
はじめてQiitaへ投稿するのですが、これ、マークダウン方式 で書かないといけないんですね。。。。mixiとはえらい違い。
ValKeyの記事が少なかったので、備忘録の意味も込めて書いていきます。
(開発に使うかもなのでそのメモ的な意味が大きい。。。笑)
2,ValKeyをUbutuにインストールするまで
概要
- ValKeyとは
- WindowsTerminalをインストール
- WSL2とValKey_WSL2とUbuntuをインストール
- ValKeyをインストール
- 動作確認(次回へ続く?)(
1.ValKeyとは
詳しい説明は参考ULRへ飛んでいただきたいので、ここではざっくりと説明します。
ValKeyはDBです。ただごく一般的に使用されているリレーショナルDBとは違い、KeyValue方式でメモリにデータを保持します。
このメモリにデータを保存させるDBをインメモリデータベースと言い、HDDやSDDへ書き込む普通のDBより高速で使えるというメリットがあります。
ここで1つ疑問が浮かぶと思います。
なんで便利なのに記事が少ないの?
はい。その理由は、
大人の事情です。。。
これ、冗談ではなく、ほんと。
もともとはRedisというインメモリDBを多くの企業が使用していたのですが、RedisはOSS(オープンソース・ソフトウェア)で開発・運用されていました。
ただAWSなどのクラウド企業がたくさん使うけど儲からない(真相はしりません)から、商用利用に制限かけるね!
とうことでRedisをライセンス制にしたのです。
それに怒ったAWSがLinux foundationという組織をそそのかしたか知りませんが、支援して、Redisをフォークし作られたのが「ValKey」です。
前置き長いですね。
長いついでに、「フォーク」という言葉ですが、GitHubで使用される、あれです。そうです、まるっとコピーです。ValKey調べ始めたときはフォークの意味を知らなかたのですが、たまたまgitについての本を読み始めたら、書いていました。豆でした。
(参考:OSSのRedisに代わるデータベース〜Valkey〜 )
WindowsTerminalをインストール
事前準備として、WindowsTerminalをインストールしましょう。
Windows ターミナルをインストールしてセットアップを開始する
WSL2とValKey_WSL2をインストール
記事を書いている段階ではWindowsだけではValKeyが動かないっぽい?のでUbuntuをかませることにしました。
Dockerデスクトップ使えばできそうですが、ここではWSL2を使用してみたいと思います。
まず、Windows PowerShell を管理者権限で起動してください。
起動したら、
wsl --install -d Ubuntu-22.04
でUbuntu-22.04がインストールされると思います。
Ubuntu-22.04はUbuntuのバージョンなので、公式を見つつ自分で選んでみてください。
最新版はバクありそうなので、2つ目に新しいのを選んだだけです。
インストールできなかった方は、Windowsの設定をいじらないといけない(仮想化を許可するとか)
***以下Germiniの回答***
Windowsで仮想化を許可するには、BIOS/UEFI設定で仮想化機能を有効にする必要があります。仮想化機能は、Hyper-Vなどの仮想環境ソフトウェアを使用するために必須です。
BIOS/UEFI設定での仮想化有効化手順
再起動:
コンピューターを再起動し、BIOS/UEFI設定画面に入るためのキーを押します。このキーは、お使いのPCのメーカーやモデルによって異なります(F2、Del、Escなどが一般的です)。
仮想化機能を探す:
BIOS/UEFI設定画面では、仮想化機能は「Virtualization」、「VT-x」、「AMD-V」などの名前で表示されていることがあります。これらの項目を探し、有効にします。
Intelプロセッサ: VT-x (Intel Virtualization Technology)
AMDプロセッサ: AMD-V (AMD Virtualization)
注意: BIOS/UEFIの設定は、誤った操作を行うとコンピューターが起動しなくなる可能性があります。慎重に行ってください。
保存して終了:
設定を変更したら、保存してBIOS/UEFI設定画面を終了します。
Windows機能でのHyper-Vの有効化
BIOS/UEFIで仮想化を有効にした後、Windowsの機能からHyper-Vを有効にします。
Windowsの検索ボックスに「Windowsの機能の有効化または無効化」と入力し、Enterキーを押します。
Windowsの機能のウィンドウで、「Hyper-V」にチェックを入れ、OKボタンをクリックします。
再起動: コンピューターを再起動します。
確認方法
Hyper-Vが正しく有効になっているか確認するには、以下の方法があります。
タスクマネージャー: タスクマネージャーを開き、「パフォーマンス」タブの「CPU」を確認します。仮想化が有効になっている場合、「仮想化」の項目が表示され、有効になっていることが確認できます。
PowerShell: PowerShellを開き、以下のコマンドを実行します。
PowerShell
Get-VMHost
コードは注意してご使用ください。
Hyper-Vが有効になっている場合、ホストの情報が表示されます
***ここまで***
たぶんこれやればWSLが動いてくれ、Ubuntuが立ち上がると思います。
※
もともとWSLを入れていてディストリビューションがない。というエラーが出る方は、WSLを更新しないと行けないようです。
WslRegisterDistribution failed with error: 0x800701bc
WSL 2のインストールと更新
Valkeyをインストール
のちのちDockerをUbuntuで使うのですが、その際、
「System has not been booted with systemd as init system (PID 1). Can't operate.」
というエラーが出てハマりました。
「System has not been booted with systemd as init system (PID 1). Can't operate.」のエラー解決
結論、wslをupdateすれば解決しました。
なので、ここで一応PowerShellからupdate
wsl --update
wsl --shutdown
その後、Windows ターミナルからUbuntuを選び、起動。
立ち上がったUbuntuへ
Dockerを入れていきます。
以下コピー貼付けで、いっぺんに動いてくれます。多分。
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list
sudo apt update
sudo apt install -y docker-ce docker-compose-plugin
Dockerのインストールが終わったので、起動させます。
sudo service docker start
確認のため、Hello,worldのイメージが動くか確認しましょう
sudo docker run hello-world
Docker Desktopを使わずにWindowsでDocker
そして、ついにvalkeyをインストールします。
公式から取ってきたpullコードを貼り付けます。
sudo docker pull valkey/valkey
起動
sudo docker run valkey/valkey
起動できましたでしょうか??
動作確認
現状やりたいことはEclipseからvalkeyへのデータ登録・取得がやりたいことなので、こちらは、別記事で書けたらなー。とか思っていますが、定かではありません。
出たばかりのvalkeyで記事が少なかったので書いてみました。
皆様の一助になれれば幸いです。