止まらないLinuxシステムを構築する!高信頼性クラスタ入門 クラウド、オンプレどちらの環境でも障害は不意にやってきます。 そんなときもサービスを継続提供するためのHAクラスタ。 今回は高信頼性を実現するクラスタの考え方の基本から、具体的にLinuxクラスタを設計/構築するコツについて解説します! こんな方にオススメ ・Linux初心者の方 ・Linuxが好きな方 ・高信頼性、高可用性クラスタに興味ある方
市販のネットワークルーターやスイッチに導入することで、元々のファームウェアでは実現できなかった高度な設定や最新のプロトコルが利用できる Linux ディストリビューションの OpenWrt は、2004年の登場から今年でちょうど20周年を迎えた。90年代の Linux ルーターという概念の勃興から、ルーター向け Linux ディストリビューションは DD-WRT や Tomato など複数生まれたが、現在もサポートと新機種の追加が続くほどの活気を保っているのは OpenWrt だけといっても過言ではない。 そんな記念すべき20周年を盛り上げるべく(?)久しぶりにルーター遊びをしたので紹介する。 (本記事は2024年4月26日に岡山理大で開催された Okayama Revengers LT 大会 #2「もう春じゃなぁ〜 LT大会でもするかぁ!」にて発表した以下のスライドを文章にしたものです。
Linux Daily Topics 2024年最初のカーネル「Linux 6.7」がリリース、新ファイルシステムBcachefsをサポート Linus Torvaldsは1月7日(米国時間)、事前の告知通りに「Linux 6.7」の正式リリースをアナウンスした。開発期間中に年末年始が含まれていたため、通常よりも1本多い8本のリリース候補版(RC)を経ての公開となる。サイズ的には過去のリリースの中でも最大の部類に入るものの、リリースに際しては大きなサイズのカーネルにありがちな大きな混乱や問題もなく、Linusが望んだように穏やかな年始めとなったようだ。 Linux 6.7 -Linus Torvalds Linux 6.7における最大のハイライトは、長年に渡って実装が期待されていたコピーオンライト(CoW)の新ファイルシステム「Bcachefs」のサポートで、現時点でも実験的な立ち
systemdの思想と機能 Linuxを支えるシステム管理のためのソフトウェアスイート Software Design plus 作者:森若 和雄技術評論社Amazon いつの間にかどのLinuxディストリビューションでも標準で使われるようになったsystemd。なんとなくsystemctlを叩いてサービスを立ち上げていたけど、いまいち「なんで必要なの?」とか、「いろいろ機能があるっぽいけど、何ができるの?」といったことをちゃんと勉強しないままここまで来てしまったので、この本でおさらい。 単なる機能紹介ではなく、「なぜsystemdはこんな広範囲な機能を扱うのか?」という機能が作られた背景から説明されているところがいいですね。 この本を読むまでcore dumpまで管理されるようになったことを知りませんでした。 本書を読めば、systemdはサービスが動く環境を用意するために必要な機能を備
Linux システムコールについて調べたことをまとめる。システムコールの仕組みを理解すると、 OS とアプリケーションがどのように連携して動いているのかを理解できるようになります。 システムコールは CPU に依存する処理が多いため、 x86_64 に絞ります。 検証環境]# cat /etc/redhat-release CentOS Linux release 8.0.1905 (Core) ]# uname -a Linux localhost.localdomain 4.18.0-80.11.2.el8_0.x86_64 #1 SMP Tue Sep 24 11:32:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux ]# cat /proc/cpuinfo | head processor : 0 vendor_id : GenuineInte
◆ Live配信スケジュール ◆ サイオステクノロジーでは、Microsoft MVPの武井による「わかりみの深いシリーズ」など、定期的なLive配信を行っています。 ⇒ 詳細スケジュールはこちらから ⇒ 見逃してしまった方はYoutubeチャンネルをご覧ください 【4/18開催】VSCode Dev Containersで楽々開発環境構築祭り〜Python/Reactなどなど〜 Visual Studio Codeの拡張機能であるDev Containersを使ってReactとかPythonとかSpring Bootとかの開発環境をラクチンで構築する方法を紹介するイベントです。 https://tech-lab.connpass.com/event/311864/ ■おさらい:journald って何だっけ?journald は、システム管理ソフトウェア systemd のコンポーネント
WebAssemblyをPOSIX対応に拡張した「WASIX」登場、bashやcurl、WebサーバなどLinuxアプリが実装可能に。Wasmerが発表 WebAssemblyランタイム「Wamer」の開発元であるWasmer社は、WebAssemblyでファイルやネットワーク、メモリなどのシステムリソースを抽象化する業界標準のAPI仕様である「WASI」(WebAssembly System Interface)を拡張してPOSIX対応にする新技術「WASIX」を発表しました。 WASIとPOSIX WebAssemblyはもともと、Webブラウザ上でネイティブコード並の実行速度でアプリケーションを実行することを目的に策定されたバイナリフォーマットです。 そのWebAssemblyを、LinuxやWindows、macOSなどのOS上でWebAssemblyランタイムを用いて直接実行する
Linuxディストリビューションにはサポート期間の長いものやローリングリリースを採用しているものなど多様な種類が存在しています。そんな数あるディストリビューションの中でも、システムのコア部分が編集不可能で不変性を担保している8つのディストリビューションが海外メディアのIt’s FOSSによって紹介されています。 8 Immutable Linux Distributions for Those Looking to Embrace the Future https://itsfoss.com/immutable-linux-distros/ 以下に挙げる8種類のディストリビューションは、コア部分を読み取り専用にすることでシステムの不変性を確保しています。不変性の確保には、「セキュリティ強化」というメリットの他、「どの環境でもシステム構成が同一なため、コンテナ技術を用いたアプリケーションの配
Red Hat でコンサルタントをしている菅原と申します。 この記事では、意外とあまり説明されていないような気がする Linux システムで発生するハングタスクについて少し説明したいと思います。現場のシステムでもハングタスク検知の設定がされていることが多いと思いますが、ハングタスクとは何なのかを正しくご理解いただくことで、ハングタスク検知を行う目的が明確になること、また、実際の障害事例もご紹介することで、通常あまりハングタスクと関連づけて考えないような設定でもハングタスク発生につながる場合があることを知っていただき、少しでもシステム管理や障害の理解、障害対応などのお役に立てれば幸いです。 なお、この記事では RHEL のみを対象に書いていますが、他の Linux ディストリビューションにも適用される内容と思います。 ハングタスク (hung tasks) とは ハングタスクとは読んで字のご
LinuxコンテナをFreeBSDで動かす「Linux containers on FreeBSD」、containerd 1.7.0で正式サポート コンテナランタイムのもっとも代表的な実装としてCloud Native Computing Foundation(CNCF)が開発を主導するのが「containerd」です。 その最新版として3月11日付でリリースされた「containerd 1.7.0」に「Linux containers on FreeBSD」が正式な機能として組み込まれました。 Linux containers on FreeBSDは、LinuxコンテナをFreeBSD上で実行する際に、FreeBSDのファイルシステムの代わりLinuxファイルシステムにマウントする機能だと説明されています。 FreeBSD上でLinuxコンテナを実行可能に FreeBSDには以前からシ
Linuxは、標準機能や膨大な数のフリーソフト、Linuxならではの多彩なコマンドラインツールを使うことで、より便利にカスタマイズできる。この特集では、そうした数々の「便利ワザ」を紹介する。それぞれの難度は、簡単に使いこなせる「Lev.1」からある程度の専門知識が必要な「Lev.3」の3段階のレベルで示している。 7 ファイル名をコマンドでまとめて変換する(Lv.2) コマンドでファイル名を変更する場合、通常はmvコマンドを使います。しかし、変更するファイルが多いと手間がかかります。「rename」コマンドを使うと、複数のファイルの名前を一括変換できます。 renameコマンドは次のコマンドでインストールします。
本記事は「Go Advent Calender」25 日目の投稿です。 Happy Holidays! EDIT (2022-01-03): There is an English version of this article. tl;dr いままでは Go プログラムを Nintendo Switch 上で動かすために WebAssembly に一度変換し、それを C++ に変換してコンパイルするということを行ってきました。今回、 Go の Nintendo Switch 向けネイティブコンパイルに成功し、実際に手元でゲームを動かすことができました。手法として、システムコール呼び出しを C の関数呼び出しに置き換えるように -overlay オプションを指定してビルドしました。また、 -overlay オプションに指定する JSON を生成するパッケージ Hitsumabushi を開
移行先として注目のUbuntu 世界市場では、企業の情報システムを支えるサーバ用OSとしてLinuxディストリビューションである「Ubuntu」の利用が近年急拡大している。しかし、日本企業の状況はやや異なり、「Red Hat Enterprise Linux」(RHEL)との互換性を備える「CentOS」などのLinuxディストリビューションがいまだに上位に存在する。 「日本は保守的なところがあり、欧米、特に米国でトレンドが出てきてから、その後追いをする傾向があります。そのため、日本でのUbuntu導入、利用はこれからますます拡大していくと想定しています」と話すのは、Linuxのシステム開発、サービス提供で長年の実績を持つSRAの石田敦士氏(産業第1事業部 営業係長)だ。 その発言を後押しするように、日本のUbuntu採用を加速させるかもしれない話題の一つがある。CentOSの最新バージョ
まえがき この動画を見てたら自分もcat作りたくなったのでやってみました. 普通に作っても二番煎じなので,別の方法でやります. この記事はLinuxその2 Advent Calendar 2020の15日目の記事です. 環境 vagrant@ubuntu-focal:~$ uname -a Linux ubuntu-focal 5.10.0-rc3+ #2 SMP Tue Dec 15 01:20:55 JST 2020 x86_64 x86_64 x86_64 GNU/Linux commit hashは652db3de96a630e8051ffa921286000bb9ee2727です. ここのカーネルをいい感じにビルドしてます. 一般的な環境では動作しません. cat catとは,concatの略称であり,本来はファイル同士を連結させる為のコマンドであるという話もよく聞きます. 別に
まえがき HDDやSSDはシステムの中でもボトルネックとなる一番データの転送速度が遅い記憶媒体だ。 オペレーティング・システムには記憶媒体による遅延を減らすためキャッシュを利用するなど I/Oアクセスを最小限に留める工夫が施されている。そんな中でもI/OスケジューラはI/Oリクエストの処理順を入れ替えたりリクエストを一つにまとめたりすることにより応答速度やスループットを向上させる機能だ。ディスク・スケジューリングとも呼ばれることがある。 数年前まではLinuxカーネルは cfq noop deadline と言ったI/Oスケジューラを搭載していたが、昨今のスケジューラはだいぶ変わっているようだ。 Linuxカーネル ver 3.13 からCPUの多コア化、SSDやPCIeなどの高速な記憶媒体の普及に対応するために旧来の単一キュー処理からマルチキュー処理をする Blk-mq(Multi-Qu
Linuxディレクトリ構造とファイルの種類 Linuxのディレクトリ構造もまともに把握できないまま開発をしていたのでこの機会に勉強してみました。 Linux入門者は、まずLinuxの構造について先に習得し、Linuxに適応するのに早いです。 Linuxファイルシステム構造 [全体構造図] 🚩me/はただのユーザー名の例として認識してください。 / (root) 最上のディレクトリであるルートディレクトリを意味。リナックスのすべてのディレクトリたちのスタート地点。すなわち、すべてのディレクトリを絶対経路で表記する際にこのディレクトリから始める必要がある。 /bin /binフォルダはBinary Folderの略で、OSの最小限の正常な駆動のため、すべてのユーザーが使用する実行ファイルが入っているフォルダ。 つまり、基本的なコマンドが保存されたディレクトリで、cat、chmod、chown
怒田さん*1のこの記事、「CとRustで一から作るマイクロカーネルOS」のおかげで、マイクロカーネルとRustが今ホットです。そこで、技術書典6, 7に出展したYabaitech.tokyoにて連載している、"Writing a (micro)kernel in Rust in 12 days"から、マイクロカーネルとL4についての話を書いた"1日目"の記事の一部冒頭を、いい機会なので再編集してご紹介します。「マイクロカーネルってタネンバウム教授とリーナスの論争のあれだよね?」とか、「L4ってなに?」って方に読んでいただいて、L4ファミリーとマイクロカーネルについて簡単にご紹介できればなと思います。 ちなみに抜粋元の上述の記事は、僕が怒田さんと同じようにRustでマイクロカーネルを書いてみよう、という趣旨の企画です。なので、Yabaitech.tokyoの方もよろしくお願いします!ただし、
マイクロカーネルは浪漫に溢れる非常に作りがいのあるソフトウェアです。この記事は,「マイクロカーネルベースのOSの一から作ってIaaSで動かす」ことを目標に作ったマイクロカーネルベースのOS Resea(りーせあ)の設計と実装について軽くまとめた物です。 ソースコードはGitHubにあります。 マイクロカーネルとは Linuxのようなモノリシックカーネルでは色んな機能がカーネル空間で動きますが,マイクロカーネルではユーザプロセスたちが互いに通信しながらOSを作り上げます。プロセス・スレッド・仮想メモリ管理,プロセス間通信,タイマーといった必要最低限の機能だけをカーネルが担います。デバイスドライバやファイルシステムといった残りの機能は,独立したユーザプロセスとして動きます。たとえデバイスドライバが暴走しても他のコンポーネントを壊すことはないのです。マイクロカーネルは信頼性が高く,疎結合で美しい
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く