Welcome to English Planet openSUSE

This is a feed aggregator that collects what the contributors to the openSUSE Project are writing on their respective blogs
To have your blog added to this aggregator, please read the instructions

Mon, Dec 25, 2023

2023年の活動ふりかえり

この記事は openSUSE Advent Calendar 2023の最終日です。

4月

オープンソースカンファレンス2023 Tokyo/Spring に出展しました2020年大阪以来のオフライン OSC でした。

7月

OSC 京都のオンライン、オフラインともに出展しました。オンラインでは川上さんが「ちょっと作ってDNS Resolverの気持ちになってみよう」というDNSサーバーを実装するハンズオンセミナーを行いました。

8月

コミックマーケットC103において、Geeko Magazine 2023 夏号を頒布しました。

オープンデベロッパーズカンファレンス(ODC)には、XDDC (Cross Distro Developers Camp) として参加し、openSUSE の開発について話しました。

10月

openSUSE.Asia Summit が重慶で開催されました。日本からは武山橋本(修太)さんが参加しました。

11月

関西オープンフォーラムにブース出展しました。

オープンソースカンファレンス2023 Niigata では、「マスコットのかわいいLinuxディストリビューションopenSUSEのご案内」というタイトルで、橋本(鹿)さんが発表しました。

12月

コミックマーケット C103 で Geeko Magazine 2023冬号を頒布予定です。

2024年の活動は?

2023年はオフラインの活動が半分程度になり、コミュニケーションの機会が増えたのもあって、はじめましてな openSUSE ユーザに出会うといったこともありました。openSUSEユーザ会としてのイベント、特に mini Summit やリリースパーティは全く開催できませんでした。

1月には OSC 大阪への出展を皮切りに、今年以上にオフラインイベントに参加していきたいと思います。また openSUSE の関係者は XDDC としてもくもく会を開催して集まっていますので、開発や翻訳、ドキュメントに参加してみたい方はご参加ください。

Wed, Dec 20, 2023

alpのgrafana workloadを制御してみる

さて、毎度ながらの説明ですが、ALP (Adaptive Linux Platform)は、SUSEとopenSUSEで開発している次世代OSのベースです。イミュータブルで軽量な仕様となっています。

この冬発売のGeeko MagazineにインストールとCockpitというブラウザから管理できるアプリの体験記を書いていますので、ぜひ皆さん試してみてください。

今日は19日の記事の続きで、alpで動かしたgrafana workloadの制御コマンドを見てみたいと思います。

grafana-container-manage.sh create

grafanaコンテナを作成します。

grafana-container-manage.sh install

grafanaコンテナを動かすのに必要なファイル類をホストの/usr/local/binや/etcにインストールします。

スクリプト内の処理は、ホストのルートをマウントして、label-installというスクリプトを実行していました。

grafana-container-manage.sh start

grafanaコンテナをスタートします。

grafana-container-manage.sh uninstall

installコマンドでインストールしたファイル類などを削除します。こちらもスクリプト内の処理はホストのルートをマウントして、label-uninstallというスクリプトを実行していました。

grafana-container-manage.sh stop

grafanaコンテナをストップします。

grafana-container-manage.sh rm

grafanaコンテナを削除します。

grafana-container-manage.sh rmcache

garfanaイメージを削除します。内部で実行されるコマンドは、podman rmiです。

grafana-conatiner-manage.sh run

grafanaコンテナを実行します。

grafana-container-manage.sh bash

grafanaコンテナ内のbashを実行します。

grafana-container-manage.sh logs

grafanaコンテナのログを表示します。

コンテナのライフサイクルがわかっていれば、各コマンドの意味がわかるかと思います。

uninstallを実行すると、当然grafana-container-manage.shも削除されます。再び使うためには、19日の方法でイメージのinstallラベルを実行します。

# podman container runlabel install registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/grafana:latest

また、rmcacheでイメージを削除後、createをしようとするとイメージのpullが始まります。まぁ当然ですね。

実行時、runだとgrafanaのコンテナの中のシェルが動いたため、cerateからstartを実行する方法が安全そうでした。

基本的にはpodmanコマンドのラップですが、installなど一部処理を簡単に実行できるようになっているので、ぜひ試してみてください。

Mon, Dec 18, 2023

alpでgrafana workloadを動かしてみる

さて、毎度ながらの説明ですが、ALP (Adaptive Linux Platform)は、SUSEとopenSUSEで開発している次世代OSのベースです。イミュータブルで軽量な仕様となっています。

この冬発売のGeeko MagazineにインストールとCockpitというブラウザから管理できるアプリの体験記を書いていますので、ぜひ皆さん試してみてください。

ここ何回かalpについて記事を書いていて、やっとわかってきました。SUSE/openSUSEは、ホストとの連携が必要などの単に動かすだけでない処理が必要なアプリのインストールや準備処理を、コンテナに内包して、workloadとして動かす、という戦略をとってるものがります。その時に利用するのが、podmanのlabel付け(実行コマンドにlabelをつける)と、そのlabel名で呼び出すrunlabelオプションです。

今回はgrafanaをマニュアルに従って動かしてみます。

grafanaサーバーのセットアップ

まず、workload内包コンテナを探します。

# podman search grafana

あれ?一覧にworkloadのコンテナが出てきません。直接レジストリ名を指定してみます。

# podman search registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/grafana

表示されました。

では、イメージをpullしてワークロードを実行します。

# podman container runlabel install 
registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/grafana:latest

容量があり1分ほど時間がかかりましたが、準備が完了しました。

grafanaのworkloadは、grafana-container-manage.shというスクリプトを用意してくれ、これを使ってコンテナの作成や実行などを行います。

まずは、コンテナを作成します。

# grafana-container-manage.sh create

すぐにコンテナが作成されました。

では、コンテナをgrafanaのサーバーと共に実行します。

# grafana-container-manage.sh start

今は指示通りコマンドを叩いてるだけですが、それぞれが何をしているかを見てみるのも楽しそうですね。

grafanaクライアントのセットアップ

今回はalpを動かしているホストをクライアントにしようと思います。

クライアントには、以下の2つのパッケージをインストールし、サービスを再起動します。

パッケージのインストール

  • golang-github-prometheus-node_exporter
  • golang-github-prometheus-prometheus

サービスの再起動

  • systemctl restart prometheus-node_exporter.service
  • systemctl restart prometheus

grafanaでの表示

では、grafanaを設定していきます。

ブラウザからgrafanaにアクセスします。

http://[ALP_HOST_IP]:3000

ログイン画面が表示されるので、ログインします。初期設定は両方ともadminとなっています。ログイン後、パスワード変更画面になりますので新しいパスワードを設定します。

ログイン後画面

ログインしたら、ホストのprometheusからデータを取得します。

上段の真ん中にある「DATA SOURCES」をクリックし、種類の一覧が表示されるので一番上の「Prometheus」を選択します。

Prometheus server URLに、Prometheusを動かしているマシンのurlを指定します。デフォルトでポートは9090です。僕の場合、alpを動かしているホストなのでhttp://192.168.122.1:9090となりました。

ホストのlibvirtのゾーンで9090を開放し、画面下部の「Save & test」ボタンをおすと、Successfullyと出てきました。

サンプルで用意されているDashboardsを読み込んでみます。マニュアルはバージョンが古いようで、僕が試した時は以下の手順になりました。

  1. 左上のハンバーガーメニューから、Dashboardsを選択する
  2. 右側にある「New」のボタンをクリックして出てくるドロップダウンから、Importを選択する
  3. Import via grafana.comに、405と入力して「Load」をクリックする
  4. prometheusをクリックして、データソースを選択する 手順通りだと一つのため、それを選択する
  5. 設定が読み込まれるので、下の「Import」をクリックする

無事、グラフが表示されました。

Grafanaダッシュボード

grafanaを制御するスクリプトには他にもアンインストールやキャッシュ削除などのオプションがありますので、追って紹介しようと思います。

Geeko Magazine Special Edition 2023冬号を発行します

この投稿は openSUSE Advent Calendar の18日目です。

今年もこの時期がやってきました。12月31日に開催されるコミックマーケットC103において、Geeko Magazine Special Edition 2023冬 を発行します。

今回の内容は次のとおりです。

  • 「最先端OS ALPを体感」開発中の Adaptive Linux Platform を実際にインストールして、Cockpit による管理や、GNOME を試してみました。
  • 「Ignition で自動設定、Cockpit で管理―openSUSE Leap Micro を使ってみよう」コンテナホスト向け Leap の Leap Micro の簡単な使い方です。Ignition でインストールを自動化し、Cockpit で Redmine をデプロイする方法を紹介します。
  • 「openSUSEでCephを使ってみる」「GlusterFSを使ってみる」2大分散ファイルシステムについて、16ページを使って紹介します。それぞれ、基本的なアーキテクチャ、インストール、マウント、故障が発生した場合の挙動について解説します。
  • エーデル・シュティメ 〜とあるカメレオンのタリナイモノとネガウモノ〜」親に男子として育てられた女子高生とAIで動くカメレオン型ぬいぐるみのお話。
  • 「Kritaを使ってライブ生成AIなお絵描きしてみよう」Krita上で適当な絵を描くと、その絵を元にAIが絵を生成。

Thu, Dec 14, 2023

alpのCockpitでpodmanを制御してみる

さて、毎度ながらの説明ですが、ALP (Adaptive Linux Platform)は、SUSEとopenSUSEで開発している次世代OSのベースです。イミュータブルで軽量な仕様となっています。

この冬発売のGeeko MagazineにインストールとCockpitというブラウザから管理できるアプリの体験記を書いていますので、ぜひ皆さん試してみてください。

今日はalpで動かしているCockpitから、podmanを制御してみたいと思います。

まず、左側に「Podmanコンテナー」というメニューがあるので、そこを選択します。

すると、画面にPodmanサービスを有効化というボタンが表示されるので、クリックして有効化します。(すみません、スクショを撮り損ねてしまいました)

すると、イメージやコンテナーなどを制御できる画面が表示されます。

Podmanコンテナーの画面

かなり直感的な操作ができそうです。

では、コンテナーを作成してみます。右下にある「コンテナーの作成」をクリックすると、コンテナー作成ダイアログが表示されます。

試しでnginxを作成してみます。

コンテナーの作成ダイアログ

イメージの所にnginxと入れると、候補が表示されて、そこから選ぶことができました。

また、ポートマッピングもしておきます。「インテグレーション」タブで設定できました。

コンテナーのポートマッピング

左下の「作成して実行する」をクリックします。すると、イメージのダウンロードが始まりました。

イメージダウンロード中

少しすると、無事実行中になりました。

コンテナー実行中

ホストのブラウザからアクセスすると、nginxが起動していることが確認できました。

停止や削除などの操作も一通り画面から行えました。Podman、というかコンテナーの基礎知識は必要だなとは思いましたが、かなり直感的で使いやすかったです。

Tue, Dec 12, 2023

alpでfirewalldをpodmanで動かしてみる

ALP (Adaptive Linux Platform)は、SUSEとopenSUSEで開発している次世代OSのベースです。イミュータブルで軽量な仕様となっています。

この冬発売のGeeko MagazineにインストールとCockpitというブラウザから管理できるアプリの体験記を書いていますので、ぜひ皆さん試してみてください。

さて、今日は公式ドキュメントにある、firewolldをpodmanで動かす手順をやってみようと思います。

まず、alpにログインし、alp用のfirewalldのコンテナを特定します。

# podman search firewalld

そうすると、ドキュメントにも乗っているalp用ワークロードが搭載された registry.opensuse.org/suse/alp/workloads/tumbleweed_images/suse/alp/workloads/firewalld のイメージが見つかります。

次に、手順の通り、alpからパッケージとしてのfirewalldを削除します。alpはイミュータブルなため、通常のzypperコマンドではなく、専用のtransactional-updateコマンドで暫定的な削除を行い、リブートすることでそれがシステムに適用されます。

# transactional-update pkg remove firewalld
# reboot

では、イメージのワークロードを実行します。

# podman container runlabel install \
registry.opensuse.org/suse/alp/workloads/tumbleweed_images/suse/alp/workloads/firewalld

他のイメージの実行時にも触れましたが、podmanは実行コマンドにラベルを貼ることができ、runlabel コマンドでそのラベルを指定して実行することができます。一連のalpワークロード用イメージは、installといったラベルにホストの設定などの処理を持たせています。

ドキュメントによると、firewalldはpolkitやsystemdなどの準備をしてくれているようです。

そう言えば、冒頭にdbusとpolkitの設定ファイルが必要、と書いてあったのですが、特に用意はせず、、、さて、どうなるでしょうか。

インストールが終わったので実行します。

# podman container runlabel run \
registry.opensuse.org/suse/alp/workloads/tumbleweed_images/suse/alp/workloads/firewalld

コンテナが実行されました。ではコンテナ経由でfirewall-cmdを実行してみます。

# podman exec firewalld firewall-cmd --list-all-zones

すると、zoneが表示され、firewall-cmdが実行可能なことがわかりました。

なお、firewalldのコンテナはホストを制御する関係上、privilegedで動いています。また、podmanを使っている場合、systemdとも統合されていて、systemctlコマンドで制御することが可能です。例えば、コンテナの起動は以下のコマンドで代替できます。

# systemctl start firewalld

なお、firewalldやfirewall-cmdのマニュアルをコンテナ経由で見る方法もドキュメントに書かれていました。

firewalldならば、

# podman run -i --rm \
registry.opensuse.org/suse/alp/workloads/tumbleweed_images/suse/alp/workloads/firewalld \
man firewalld

firewall-cmdならば、

# podman run -i --rm \
registry.opensuse.org/suse/alp/workloads/tumbleweed_images/suse/alp/workloads/firewalld \
man firewall-cmd

で参照可能です。 manコマンドをコンテナの中で呼び出しているわけですね。

個人的に、firewalldをコンテナで実行する利点欠点が見えていない所があり、そのあたりも追って調査考察してみたいと思います。

Mon, Dec 11, 2023

スクリーンロックが固まったときは?

この投稿は openSUSE Advent Calendar の 11日目です。そろそろ折返しです。

まれにスクリーンロックが固まってしまい、パスワードの入力画面が表示されいことがあります。このようなときに、ロックを解除する方法があります。使用するのは systemd に含まれているコマンド、loginctl です。

ロック画面が固まってしまったら、まず行うのが仮想コンソールでのログインです。Ctrl+Alt+F1を押すとログインプロンプトが表示されるので、ユーザー名とパスワードを入力してログインしてください。

つぎに、loginctl を実行すると、セッションの一覧が表示されます。

$ loginctl
SESSION  UID USER  SEAT  TTY
     22 1000 geeko seat0 tty1
      3 1000 geeko seat0 

2 sessions listed.

セッション 22 は、TTY が tty1 なので、現在操作している仮想コンソールです。固まっているのはセッション 3 です。

ロックを解除するには、以下のコマンドを実行します:

$ loginctl unlock-session 3

これでロックが解除できました。操作している仮想コンソールを Ctrl+D で抜けて、Ctrl+Alt+F7 を押すと、デスクトップに戻ることができます。

Sun, Dec 10, 2023

Linux Foundationのレポートが続々日本語化

openSUSEに直接関係は無いのですが、オープンソース関係ということで一ネタ投稿させて頂きます。

Linux Foundationは数多くのレポートを出しています。OSPOについてや、Kubenetesの現状、日本でのオープンソースの展開状況など、とても興味深く面白いレポートばかりです。ですが、英語で出版されているため、なかなか日本語圏の私達には疎遠になりがち、、、、だったのですが、ここの所、続々と日本語版が出版されています。

日本語版は日本語版Linux Foundationの出版物のサイトからダウンロード可能です。

いくつかピックアップしてみますと、

Japan Spotlight 2023

日本でのオープンソースの展開状況について調査結果の数値に基づいた考察をしています。

オープンソースメンテナーズ

有名なオープンソースのメンテナーについて、その現状、課題、ベストプラクティスなどが書かれています。オープンソースのメンテナンスに関わる人必見のレポートです。コミュニティのマネジメントにも有用な内容が沢山です。

Kubernetesプロジェクトジャーニーレポート

Kubernetesのコントリビュートや教育、イベントなどについての数値や考察が書かれています。

その他、LF Energy(エネルギー)関連や、AkrainoなどLF Edge関連のレポートなど、多岐に渡っています。ちょっと眺めてみるだけでもかなり面白いです。

Sat, Dec 09, 2023

alpで動かしたcockpitを眺めてみる

ALP (Adaptive Linux Platform)は、SUSEとopenSUSEで開発している次世代OSのベースです。イミュータブルで軽量な仕様となっています。

この冬発売のGeeko MagazineにインストールとCockpitというブラウザから管理できるアプリの体験記を書いていますので、ぜひ皆さん試してみてください。

さて、今日はCockpitの「概要」というメニューを見てみたいと思います。

トップ画面です。システム情報、使用率などが表示されてます。

画面にある「メトリックスおよび履歴の表示」のような青い文字の所は、クリックすればメニューが出たりその画面に移動したりします。

ためしに、「メトリックスおよび履歴の表示」をクリックしてみます。

CPUやメモリなどが表示される画面に移動します。下に「メトリックス履歴に、パッケージcockpit-pcpがありません」と表示がありますが、今の私の環境ではcockpit-pcpというパッケージを見つけられませんでした。

メニューの所にある「ハードウェアの詳細の表示」をクリックしてみます。

下の方にはメモリも表示されてました。色々と設定が表示されています。

メニューの所にある「ホスト名」の右にある「編集」をクリックしてみます。

変更画面が出てきました。ここで設定することで、alpのホスト名を変更することができました。

閲覧、変更、と、色々と管理できるようです。別のメニューもどんどん見ていきたいと思います。

Fri, Dec 08, 2023

omegat-textra-plugin の公式サイトが代わっていた

この記事は openSUSE Advent Calendar 2023 の8日目です。

前回の記事 で、omegat-textra-plugin の最新版(v2022.2.2)が動かない、と詳解したのですが、実は、omegat-textra-plugin の公式サイトは github から codeberg に引っ越していたのでした。そちらの方では引き続き開発が行われていて、最新版は v2023.2.0 になっていたのでした。このバージョンをインストールすると正常に動きました。

coreberg への引越は、少なくとも2022年7月以降と思われます。そのため、各所に散在している omegat-textra-plugin の説明資料には古い開発サイトへのリンクしかないので、新しいサイトがあることに気がつきませんでした。