並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 61件

新着順 人気順

netnsの検索結果1 - 40 件 / 61件

  • 【連載】世界一わかりみが深いコンテナ & Docker入門 〜 その5:Dockerのネットワークってどうなってるの? 〜 | SIOS Tech. Lab

    こんにちは、サイオステクノロジー武井です。いよいよ佳境に入ってきた連載「世界一わかりみが深いコンテナ & Docker入門 」ですが、今回はDockerのネットワークです。 全7回シリーズでお届けする予定で、今回は第5回目となります。 その1:コンテナってなに? その2:Dockerってなに? その3:Dockerfileってなに? その4:docker-composeってなに? 今回はこちら → その5:Dockerのネットワークってどうなってるの? その6:Dockerのファイルシステムってどうなってるの? その7:実践!!Dockerでアプリケーション開発!!(執筆中) 今までDockerfileやdocker-composeでコンテナを作成した際、コンテナ間で通信できたり、コンテナから外部のネットワークへ通信できたりしましたが、今回はそのメカニズムについて説明します。 Docker

      【連載】世界一わかりみが深いコンテナ & Docker入門 〜 その5:Dockerのネットワークってどうなってるの? 〜 | SIOS Tech. Lab
    • メモ: 『Linuxで動かしながら学ぶTCP/IPネットワーク入門』

      3章 Network Namespace - 1 helloworld ip netns コマンドでNetworkNamespaceの作成や操作が可能になる 作成したNetworkNamespace内で独自のネットワークを構築できる $ ip netns add helloworld $ ip netns list helloworld $ ip netns exec helloworld ip addr show 1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 $ ip netns delete helloworld # NSを作成 $ ip netns add ns1 $ ip n

        メモ: 『Linuxで動かしながら学ぶTCP/IPネットワーク入門』
      • くらめその情シス:クラスメソッドの基幹ネットワーク構成を紹介します。 | DevelopersIO

        はじめに どうも、情シスの徳道@上越オフィスです。今回はネットワークネタです。 唐突ですが、会社を代表するグローバルIPアドレスって多くの場合は本社の固定グローバルIPアドレス(プロバイダに依存)ではないでしょうか。 ゼロトラストが叫ばれて久しいですが、弊社のようにお客さまの環境を保守するサービスを行っている場合、やはり境界防御として接続元のグローバルIPアドレスを指定して許可されることが多いです。 地方オフィスが増えてくると特定の環境への接続許可をしてもらうIPアドレスの登録も増えてきます。VPN接続で本社など特定拠点経由での接続を行っていたとしても、プロバイダに依存することになったり冗長化が大変だったりしますね。 弊社では数年前からAWSのElastic IP経由で変化しない&冗長化されたグローバルIPアドレスからAWSに接続する社内ネットワークを構築してきました。 今回はクラスメソッ

          くらめその情シス:クラスメソッドの基幹ネットワーク構成を紹介します。 | DevelopersIO
        • DockerとPodmanの比較 [Container Runtime Meetup #3]

          Container Runtime Meetup #3 発表資料 「DockerとPodmanの比較」PodmanとはPodmanは、Red Hat社を中心とするコミュニティが開発している、Docker互換のコンテナエンジンです。RHEL、CentOS、Fedora などの Linuxディストリビューションに標準で付属しています。 Podmanの使い方は、コマンド名が docker ではなく podman である点を除けば、Docker とほぼ同じです。(例: podman run -p 80:80 --name nginx docker.io/library/nginx ) “Podman”は “Pod Manager” を意味しますが、Podmanを用いてKubernetesのPodを管理することは、基本的にはできません。ただし、CRIランタイムとしてCRI-Oを用いている場合に限り、

            DockerとPodmanの比較 [Container Runtime Meetup #3]
          • BPFを利用し、Linuxカーネルのパラメータを継続的に自動チューニングする「bpftune」。オラクルがオープンソースで公開

            オラクルはLinuxカーネルのパラメータを、ワークロードに合わせて継続的に自動チューニングするツール「bpftune」をオープンソースで公開しました(GitHubのページ)。 bpftuneは「BPF」(Berkeley Packet Filter)と呼ばれる、Linuxカーネル内のさまざまな機能をフックして機能拡張が可能な仕組みを利用し、継続的にLinuxカーネルのきめこまなかレベルで監視を行い自動チューニングを実現しています。 オラクルはbpftuneを開発した背景として、クラウドに代表される大規模なサーバ展開が可能なインフラにおいて、以前よりも個々のサーバのチューニングについて注意が払われることがほとんどなくなったこと、チューニングされるとしても静的に適切な設定があると考えられることが一般的であることを挙げています。 bpftuneによる自動チューニング対象の項目 bpftuneは現

              BPFを利用し、Linuxカーネルのパラメータを継続的に自動チューニングする「bpftune」。オラクルがオープンソースで公開
            • Docker rootlessで研鯖運用 - drgripa1

              複数人で共有して使う研究室のサーバでは、rootfulなDockerを用いると権限周りでさまざまな問題が発生します。 Docker rootlessで権限関係の諸問題を解決し、最強の研究室サーバ環境を作りましょう。 筆者の研究室の環境 Docker rootlessとは Set Up 前提 管理者が一括で行うこと 必要なパッケージのインストール Dockerのインストール nvidia-docker2のインストール uidmapの設定 各ユーザで行うこと 運用上のtips data-rootの場所 DOCKER_HOST環境変数の一括設定 subuid/subgidの一括設定 セットアップの自動化 ファイルの所有権 さいごに Special Thanks 筆者の研究室の環境 筆者は東京大学 相澤・山肩・松井研、山﨑研で、院生鯖缶をしています。コンピュータビジョン・マルチメディアを主な研究分

                Docker rootlessで研鯖運用 - drgripa1
              • mount コマンドはもう古い? findmnt を使おう

                「このディレクトリって何のファイルシステム?」とか「マウントオプションは?」を確認するときに、手癖で mount コマンドを実行してるけど、 $ mount proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel) devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=4096k,nr_inodes=118922,mode=755) securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime) tmpfs on /dev/shm typ

                  mount コマンドはもう古い? findmnt を使おう
                • Kubernetesもどき、作ってみた! | cloud.config Tech Blog

                  この記事は FIXER Advent Calendar 2022 技術編 23日目の記事です こんにちは、毛利です。この記事では、最近趣味で自作し始めてしまったコンテナオーケストレーションシステム(+分散Key Value Store)の話をします。つまるところKubernetesのようなものを自作し始めた話です。 背景要約: 素のKubernetesは料金が高くなりそうだったので、趣味用に安く済むKubernetes環境が欲しかった。あと自作対象として興味がちょうどよかった。 みなさんは趣味用のサーバ等ありますでしょうか?自分は学生時代からConoHa VPS(コンビニ支払いできるのが学生にやさしい)、最近はAzureも使っています。管理方法ですが、最初のころはサービスをホストに直置き、途中からdocker-composeを使うようになり、しばらくそれで管理していました。最近は業務でKu

                    Kubernetesもどき、作ってみた! | cloud.config Tech Blog
                  • コンテナエンジンの作り方 ~ さくらの夕べ ヤンジェネバトル ~ - Speaker Deck

                    Transcript コンテナエンジンの作り方
 さくらの夕べ ~ ヤンジェネバトル ~
 さくらインターネット 株式会社 技術本部 大西 和貴 (C) Copyright 1996-2016 SAKURA Internet Inc 2019/10/08 自己紹介
 2
 大西 和貴 (@_k_onishi_)
 
 
 2017年度新卒
 SVOPチーム(運用) → レンタルサーバチーム(開発)
 
 サービスのコントロールパネルやメールソフトの
 バックエンドやフロントエンドを担当( Go / Typescript )
 
 
 Tech: 
 Linux / Unix / Kernel / File System / 仮想化 / コンテナ
 エミュレータ / バイナリ
 
 Lang: 
 C / Assembly / Perl
 
 Blog:
 レガシーガジェット研究所 Dock

                      コンテナエンジンの作り方 ~ さくらの夕べ ヤンジェネバトル ~ - Speaker Deck
                    • Amazon Linux 2023がGAされました | DevelopersIO

                      抜粋 : Release cadence - Amazon Linux 2023 メジャーリリースとマイナーリリースの内容は以下AWS公式ドキュメントに記載されています。メジャーリリース時には互換性があるか十分に検証した上でアップデートしましょう。 Major version release— Includes new features and improvements in security and performance across the stack. The improvements might include major changes to the kernel, toolchain, Glib C, OpenSSL, and any other system libraries and utilities. Major releases of Amazon Linux ar

                        Amazon Linux 2023がGAされました | DevelopersIO
                      • データセンター仮想化ツール Placemat v2の紹介 - Cybozu Inside Out | サイボウズエンジニアのブログ

                        こんにちは、Necoチームの鈴木です。 Necoチームでは仮想データセンター構築ツールPlacematを使って、データセンターを丸ごと仮想化し、その上でサーバーのプロビジョニングやKubernetesクラスタ構築、Kubernetes上で動作するアプリケーションのTest Suitesを実行しています。 Placematはプロジェクト初期に開発されたツールで、古いツールに依存していたり、実装方式や設計が洗練されていないなどの課題があっため、4ヶ月前からv2を開発開始し、先日リリースしました。 本記事ではその機能と使い方、今後のCI改善 Placemat on Kubernetesについて紹介します。 特徴 シンプルな構成 YAMLの設定ファイルで多彩なデータセンター環境を再現可能 多彩なVM設定 仮想BMC シンプルな構成 Placematはシングルバイナリで構成されています。 使い方もシ

                          データセンター仮想化ツール Placemat v2の紹介 - Cybozu Inside Out | サイボウズエンジニアのブログ
                        • 第804回 mininetでお手軽ネットワークテスト環境を構築する | gihyo.jp

                          3月も半ばになり、暖かい日も増えてきました。これだけ暖かくなってくると、ちょっとしたアプリで少し特殊なネットワークフレームを流したり、普段使わないネットワークプロトコルを試したくなりますよね。でも本番環境でそれをやってしまうと、変質者としてしかるべき場所に通報されてしまいます。そこで今回は他人に迷惑をかけずに隔離されたネットワークテスト環境を構築できる「mininet」を使って、お縄にかからないようにしてみましょう。 Open vSwitchとネットワーク名前空間で気軽にテスト環境を構築する Linuxカーネルには「ネットワーク名前空間(netns)」という機能があります。これはホストや他のコンテナから隔離された環境でネットワークインターフェースを作成し、操作できるようになる仕組みで、特にLinuxのコンテナ系ツールで使っている基礎技術のひとつです。 Ubuntuだと「ip netns」コ

                            第804回 mininetでお手軽ネットワークテスト環境を構築する | gihyo.jp
                          • Containers the hard way: Gocker: A mini Docker written in Go

                            They are popular and they are misunderstood. Containers have become the default way applications are packaged and run on servers, initially popularized by Docker. Now, Docker itself is misunderstood. It is the name of a company and a command (a suite of commands, rather) that allow you to manage containers (create, run, delete, network) easily. Containers themselves however, are created from a set

                              Containers the hard way: Gocker: A mini Docker written in Go
                            • インターンレポート: RootlessコンテナのTCP/IP高速化

                              はじめまして、インターン生の松本直樹と申します。 この記事では、私がNTT研究所におけるインターン「コンテナランタイムの実装と評価」のインターン期間中に取り組んだ「bypass4netns」について紹介させていただきます。 自己紹介私は京都大学 情報学研究科に所属し、 普段は次世代型ホームネットワークと称してホームネットワークとSDNの融合や計算処理オフロードに関する研究に取り組んでいます。 コンテナ技術やその周辺のネットワーク技術に関しては普段から興味があったものの、 時間をかけて取り組む機会がありませんでした。 その折に、今回のインターンの募集を見つけ、実装を中心に触れることができる良い機会だと思い応募させていただきました。 インターン期間中はRootlessコンテナとネットワーク周りにどっぷりと浸ることができ、 非常に貴重な体験ができました。 はじめに: Rootless コンテナに

                                インターンレポート: RootlessコンテナのTCP/IP高速化
                              • linuxのipコマンドでgretap を作って通信してみる - それマグで!

                                gretap を作る GRE Tap でイーサネット・フレームを転送するVPNを作ってみたい。 wg0 でL2-VPNはできると思う。 wg に L2-VPN機能がないので、 wg 上に ip bridge で gre tap を構成すればいい。 wireguardではL2はサポートされていなので、WG上にGRETAPでL2転送をかけてみたらいいと思う。ただし、iPhoneのiOSではgreを使えないので、どんな手段を用いてもリモートからGoogle Homeを呼び出しはできないと思う。iphoneでL2TPをするならwigreguardは使えない もっとかんたんに、L2トンネルを使うのなら、softether や OpenVPNを使うしかない。 GRE tap を体験するために、Linux仮想マシンを作る。 仮想マシンをつくると流石に重いので、LXCを使ってコンテナを使うことにする。 n

                                  linuxのipコマンドでgretap を作って通信してみる - それマグで!
                                • 2021年 SRv6 入門 - hiroportation

                                  SRv6について2021年までに取集した情報を整理して入門書を作りました。 とりあえずSRv6に触れたい方向けの内容になっています。 1. SRv6 概要 1.1. SRv6 とは 1.1.1. セグメントルーティング 1.1.2. IPv6 1.2. どういうところで使われているのか? 1.3. 今どういう状況? 2. SRv6 詳細 2.1. SRv6の仕組み 2.2. SRv6 Function 2.3. SRv6 Control Plane 2.4. Flex-Algo (Flexible Algorithm) 2.5. TI-LFA 2.6. SRv6 OAM (Operation, Administration, and Maintenance) 2.6. 今後のSRv6 3. SRv6を実際に使う 3.1. iproute2 【ハンズオンツール】 3.2. VPP 3.3.

                                    2021年 SRv6 入門 - hiroportation
                                  • Linux Kernel: rtnl_mutex を長時間 ロックして刺さった状態を観察する - hibomaの日記

                                    Linux Kernel で struct net_device や Routing Netlink の処理を排他制御する mutex である rtnl_mutex を任意の時間 ロックするカーネルモジュールを作成して、rtnl_mutex のロックがユーザランドのプロセスやカーネルスレッド等にどういった影響を及ぼすかを観察する ... というエントリです Linux カーネルの話や、strace, gdb, /proc/$pid/stack を使ったデバッグ方法に興味あるかた向けです 経緯 とあるサーバで動いてる大量のプロセスが rtnl_mutex をロックする箇所やそれに関連していそうな箇所で TASK_UNINTERRUPTIBLE でブロックしてしまい、障害を起こしているのに遭遇して原因を追いかけていたのでした 障害の再現が難しくて困っていたのだが、別のアプローチとして 「rtn

                                      Linux Kernel: rtnl_mutex を長時間 ロックして刺さった状態を観察する - hibomaの日記
                                    • RFC 準拠のコントローラー&プロトコルライブラリ開発の進め方 - NTT Communications Engineers' Blog

                                      イノベーションセンターの三島です。 本記事では、RFC や Internet-Draft に準拠したコントローラーやプロトコルライブラリの開発について、 NTT Com が公開中の Segment Routing (SR) 用のコントローラー、Pola PCE の開発経験を基にご紹介します。 商用機器と相互接続可能なコントローラー・プロトコルライブラリを開発してみたい方、SR をはじめとするネットワークを運用中で、機能拡張が可能なコントローラーを導入してみたい方は是非ご覧ください! 以降では、コントローラー開発手順の概要を Pola PCE の実装例を基に解説した後、プロトコルライブラリの作り方と機能追加の方法、相互接続試験と OSS へのマージまでの流れを解説します。 例として扱う Pola PCE 自体の詳細や活用例については解説しないため、詳細を知りたい方は下記の資料をご参照ください

                                        RFC 準拠のコントローラー&プロトコルライブラリ開発の進め方 - NTT Communications Engineers' Blog
                                      • 100台くらいスケールする“Kubernetesもどき”を自作してみた!

                                        この記事はFIXER Advent Calendar 2022 技術編 23日目の記事です こんにちは、毛利です。この記事では、最近趣味で自作し始めてしまったコンテナオーケストレーションシステム(+分散Key Value Store)の話をします。つまるところKubernetesのようなものを自作し始めた話です。 背景 要約:素のKubernetesは料金が高くなりそうだったので、趣味用に安く済むKubernetes環境が欲しかった。あと自作対象として興味がちょうどよかった。 みなさんは趣味用のサーバー等ありますでしょうか? 自分は学生時代からConoHa VPS(コンビニ支払いできるのが学生にやさしい)、最近はAzureも使っています。管理方法ですが、最初のころはサービスをホストに直置き、途中からdocker-composeを使うようになり、しばらくそれで管理していました。最近は業務でK

                                          100台くらいスケールする“Kubernetesもどき”を自作してみた!
                                        • Deepen Understanding of CNI by reading amazon-vpc-cni-k8s

                                          仕事で amazon EKS を運用していると、時たま network 周りのエラーに遭遇します。都度都度 on-demand に調査をしているのですが、一度全体感を抑えておいた方がいいなと感じたので amazon-vpc-cni-k8s のコードリーディングを通して k8s の network 周りの理解を深めることにしました。 CNICNI とは端的にまとめると、Container Runtime が用意する network namespace に対して network interface を ADD/DEL する操作を実装する interface です。 Container Runtime の仕様となる CRI が CNI に依存して実装されるので、具体的な Network 設計を抽象化して CRI(及びその client となる kubelet)から network resourc

                                            Deepen Understanding of CNI by reading amazon-vpc-cni-k8s
                                          • インターンシップ体験記 〜SRv6 機能を Pola PCE に実装してみた〜 - NTT Communications Engineers' Blog

                                            はじめに こんにちは、インターン生の 魏心宇 と申します。 2023 年 2 月 6 日から 2 週間にわたって、NTT Com の現場受け入れ型インターンシップに参加させていただきました。 普段は大学で SR (セグメントルーティング) を用いたトラフィックエンジニアリングについて研究しています。 今回のインターンシップでは「SR を用いたキャリアネットワークの開発」をテーマに、NTT Com 発の OSS である Pola PCE への SRv6 機能実装・検証に取り組みました。 この記事では、2 週間の開発体験をご紹介します! インターンシップに参加したモチベーション 私は学部 3 年の冬、NTT Com TechWorkshop 「プロのネットワークエンジニアと学ぶ!ISP ネットワークのつくりかた」 に参加したことがきっかけで、SR という斬新なネットワークアーキテクチャを知り、

                                              インターンシップ体験記 〜SRv6 機能を Pola PCE に実装してみた〜 - NTT Communications Engineers' Blog
                                            • Kubernetes Networking: Behind the scenes

                                              One of the things I love the most about Kelsey Hightower’s Kubernetes The Hard Way guide— other than it just works (even on AWS!)—is that it keeps networking clean and simple; a perfect opportunity to understand what the role of the Container Network Interface (CNI) is for example. Having said that, Kubernetes networking is not really very intuitive, especially for newcomers… and do not forget “th

                                                Kubernetes Networking: Behind the scenes
                                              • 疑似フレッツ光網内の通信を accel-ppp で再現できるか検証する(検討編) - BBSakura Networks Blog

                                                はじめに この記事は BBSakura Networks Advent Calendar 2023 の 12 日目の記事です。 adventar.org こんにちは、BBSakura Networks 株式会社の佐藤です。 「インターネット」をテーマに色々と調べていたら、登 大遊さんが書いた資料「230610 講演 第1部 (登) - 配布資料その1 - 秘密の NTT 電話局、フレッツ光、インターネット入門.pdf」を見つけました(こちらからダウンロードできます)。 資料の中ではフレッツ光の内部構成が紹介がされており、宅内 PC・ルータが PPP セッションを経由して ISP に接続するまでの通信フローの解説はとても興味深いものでした。 この記事では検討編と称してフレッツ光網内で PPP セッションが生成されるまでのフローを OSS の組み合わせで再現できるかを検証するために検討したこと

                                                  疑似フレッツ光網内の通信を accel-ppp で再現できるか検証する(検討編) - BBSakura Networks Blog
                                                • ip netnsコマンドで学ぶNetwork Namespace - Carpe Diem

                                                  概要 Linuxには名前空間(Namespace)というカーネルの機能が提供されています。 これは1つのプロセスが1つのリソースセットを参照し、別のプロセスが異なるリソースセットを参照するようにカーネルリソースを分割する機能です。 その中の1つであるネットワーク名前空間(Network Namespace)の機能を学んでみます。 環境 Ubuntu 18.04 ip netnsを使ってみる 初期状態 デフォルトのUbuntuでは以下のように2つのNICが存在します。 lo enp0s3 コマンドで確認します。 $ ip l 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:0

                                                    ip netnsコマンドで学ぶNetwork Namespace - Carpe Diem
                                                  • 鴨川🦆べりで今日から始めるCircleCI - (。・ω・。)ノ・☆':*;':*

                                                    この記事は川見てる Advent Calendar 2021およびMoney Forward Engineering Advent Calendar 2021 17日の記事です。 はじめに マネーフォワードでことし10月から京都や鴨川🦆の良さを社内にひたすら宣伝しながらGoやYAMLなどを書いているwalkureです。 入社時の部署自己紹介で「趣味は鴨川🦆です」と言ったりSlackの分報へ鴨川🦆の写真をひたすら貼り続けていたところ、カモグルイ*1とか呼ばれるようになりました。 殆どの仲間は東京にいるので、あづまの地に鴨川🦆の良さを広めるべくこれからも尽力してまいります。 朝の鴨川🦆 最近は天気がいいので朝起きたら鴨川🦆まで行ってラジオ体操してから就業するというドカタ時代のような生活。 現在*2は週一回出社しましょうということになっていて、勤務地が三条大橋西詰にあるので出社したと

                                                      鴨川🦆べりで今日から始めるCircleCI - (。・ω・。)ノ・☆':*;':*
                                                    • Dockerのネットワークの仕組み - sagantaf

                                                      はじめに 前回は、Docker/Kubernetesを扱う上で必要なネットワークの基礎知識ということで、 階層構造 プロトコルの詳細と通信の流れ MACアドレスとIPアドレス ネットワーク機器の種類 VLAN iptables network namespace について解説しました。 リンクは以下です。 sagantaf.hatenablog.com sagantaf.hatenablog.com 上記の項目を理解しておくことで、Dockerのネットワークの仕組みをスムーズに理解できると思います。特にiptablesとnetwork namespaceの理解は必須です。 本記事では、上記の内容を元に、Dockerのネットワークの仕組みを紐解いていきます。 Dockerのネットワークの概要 デフォルト設定 bridgeネットワークの詳細 コンテナ起動時のネットワーク構成 コンテナを起動して

                                                        Dockerのネットワークの仕組み - sagantaf
                                                      • BPFAgent: eBPF for Monitoring at DoorDash - DoorDash Engineering Blog

                                                        Patrick RogersPatrick Rogers is a software engineer at DoorDash since early 2019. Initially a member of the merchant integrations and order platform teams, he now works on the Observability team with a focus on leveraging eBPF and distributed tracing data to improve understanding & reliability of DoorDash's distributed systems. Author's Linkedin As DoorDash experienced rapid growth over the last f

                                                          BPFAgent: eBPF for Monitoring at DoorDash - DoorDash Engineering Blog
                                                        • Dockerの置き換えを目指す ルートレス&デーモンレスの Podman 入門 - Qiita

                                                          このことから、podman は Red Hat がオープンソース・プロジェクトとして、発展途上であると見なされ、dockerコマンドを置き換えるまでに熟成されるには、もう少し時間が必要と考えられる。 (3) OCIに準拠するコンテナイメージの開発、管理、および、コンテナとして実行 Docker Hubに登録されたコンテナを実行すること、podmanでビルドして、レジストリに登録したイメージを、dockerコマンドで実行することも可能であり、互換性に問題はないと見られる。 (4) デーモンレスのコンテナエンジン podman は、Dockerデーモンの様な root で動作するデーモンを必要としない。つまり、podman コマンドだけで、デーモンの助けを必要とせずにコンテナを実行できる。 (5) コンテナはルートレスモードで実行可能 ルートレスのコンテナは、それらを起動したユーザーよりも多く

                                                            Dockerの置き換えを目指す ルートレス&デーモンレスの Podman 入門 - Qiita
                                                          • Rustでコンテナを実装してみる(超シンプル編) | DevelopersIO

                                                            Introduction DockerやFinchなど、 いまや当たり前となったコンテナ技術ですが、 これは実行されるソフトウェアとそのOSの間で仮想化する、分離された実行環境です。 OS上のコンテナエンジンは個別に隔離&構成されたコンテナを作成し、 そのコンテナ内でソフトウェアを実行します。 もしそのコンテナがクラッシュしたりリソースを使い切ったとしても、 システム全体とその他のコンテナで実行されているサービスには影響はありません。 本稿ではコンテナを作成するための基礎と、 Rustで実際にコンテナを作成するためのCLIアプリを実装します。 Environment 今回試した環境は以下のとおりです。 MacBook Pro (13-inch, M1, 2020) OS : MacOS 12.4 UTM : 4.1.5 Rust : 1.67.0 ※UTMからubuntu 23.04を起動

                                                              Rustでコンテナを実装してみる(超シンプル編) | DevelopersIO
                                                            • ルートレスのPodmanはどのように動作しますか? - 赤帽エンジニアブログ

                                                              Podmanがどのようにしてユーザ名前空間を利用してルートレスモードで動作するのかを説明します。 この記事は How does rootless Podman work? | opensource.com を翻訳したものです。RHEL 7.8以降およびRHEL 8.1以降ではこの記事で紹介されているユーザ名前空間を活用した rootless container がフルサポートとなっていて、利用できます。 :::11 Feb 2019 Daniel J Walsh::: Image by: Opensource.com 前回のユーザ名前空間とPodmanについての記事では、Podmanコマンドを使って異なるユーザ名前空間で異なるコンテナを起動し、コンテナ間の分離を改善する方法について説明しました。Podmanはまた、ユーザ名前空間を利用してルートレスモードで実行できるようにしています。基本的

                                                                ルートレスのPodmanはどのように動作しますか? - 赤帽エンジニアブログ
                                                              • Dockerのソースコードを読む

                                                                ※本記事は2020年のアドベントカレンダーで書いた内容です。 技術的に誤った情報があった場合はコメント欄等で訂正入れていただけると助かります。 「私にどうか……Dockerを理解できる力をください」 私達が普段Dockerを初学者に教えたり教えてもらったりする場合、人にもよるかと思うが大半は抽象的な概念としてのコンテナ技術についてと実際にDockerを使う際のコマンドなどを教えるみたいなことが多いと思います。 また、実際にDockerを使う際にバグに当たったりしない限りはDockerのソースコードを読むことはないというのが実際だと思います。(気が触れたりしない限りは) 本記事では、実際にDockerがどうやってネットワークを作成しているのかを例として追ってみます。 「エンジニア君 これは命令です 今後は変なまとめブログではなく正しい情報を見るといいなさい」 まず、Dockerのソースコード

                                                                  Dockerのソースコードを読む
                                                                • Slirpの思い出

                                                                  1990年代、商用ISPが出現する前後の頃、私は大学生でした。 大学のネットワークが、在学中に UUCP -> 常時IP接続(64kbps -> 128kbps ->...)と変遷していく時期にありました。 この記事はインターネット老人会 Advent Calendar 2023 6日目の記事です。 電話回線接続の対応 ある日、学内の端末に接続できるような電話回線が使えるようになりました。とはいえ、つなげると単にUNIXマシンのコンソールにつながるだけのものです。シリアル回線の間に電話機が挟まっているような感じです。 とはいえ、当時ならttyで動作するソフトウェアも非常に多くありましたし、そのマシンを開始てさらに別の学内マシンにつなげることもできたので、それだけでもかなり嬉しくはありました。 Slirpとの出会い あるとき、Slirp ( Wikipediaの解説 )の存在を知ります。 こ

                                                                    Slirpの思い出
                                                                  • How Container Networking Works: a Docker Bridge Network From Scratch | iximiuz Labs

                                                                    How Container Networking Works: a Docker Bridge Network From Scratch Working with containers can feel like magic at times. In a good way for those who understand the internals and in a terrifying - for those who don't. Luckily, we've been looking under the hood of the containerization technology for quite some time already and even managed to uncover that containers are just isolated and restricte

                                                                      How Container Networking Works: a Docker Bridge Network From Scratch | iximiuz Labs
                                                                    • Linux の Network Namespace と Keepalived でルータの冗長化を試す - CUBE SUGAR CONTAINER

                                                                      今回は「Linuxで動かしながら学ぶTCP/IPネットワーク入門」に載せようか悩んで、結局は載せなかった内容のひとつを扱う。 Linux の Network Namespace を使って作った 2 台のルータを、Keepalived (VRRP) を使ってホットスタンバイで冗長化する構成を組んでみる。 つまり、2 台のうち 1 台のルータに障害が起きても、残りの 1 台が役務を引き継いで通信を継続できる状況を再現する。 使った環境は次のとおり。 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.4 LTS Release: 20.04 Codename: focal $ uname -srm Linux 5.4.0-107-generic aarch

                                                                        Linux の Network Namespace と Keepalived でルータの冗長化を試す - CUBE SUGAR CONTAINER
                                                                      • iproute2 の ip-netns(8) を使わずに Network Namespace を操作する - CUBE SUGAR CONTAINER

                                                                        今回は、iproute2 の ip-netns(8) を使わずに、Linux の Network Namespace を操作する方法について書いてみる。 目的は、namespaces(7) について、より深い理解を得ること。 使った環境は次のとおり。 $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=20.04 DISTRIB_CODENAME=focal DISTRIB_DESCRIPTION="Ubuntu 20.04.2 LTS" $ uname -r 5.4.0-1043-gcp もくじ もくじ 下準備 前提知識 unshare(1) / nsenter(1) / mount(8) を使って操作する unshare(2) / setns(2) / mount(2) を使って操作する 参考 下準備 あらかじめ、必要なパッ

                                                                          iproute2 の ip-netns(8) を使わずに Network Namespace を操作する - CUBE SUGAR CONTAINER
                                                                        • SRv6をもう少し深堀してみよう。

                                                                          はじめに 前回のコラムでは、「セグメントルーティング(Segment routing)」の基本的な概要について説明しました。今回のコラムでは、IPv6ネットワークの上で構成されるSRv6(Segment Routing IPv6)について、少し詳しく内容を解説します。 今回は、SRv6サービスを実現するパケットヘッダーについて、詳しく観察してみます。ここでは、簡単のため、Ubuntu上にNetwork Namespaceを用いてモデルネットワークを構成し、SRv6処理を行うノードにおいて、ネットワーク処理スタックにおけるさまざまなNetfilter hookポイントで、Python Scapyパッケージを用いて、疎通するパケットを取得、そのヘッダーについて、観察します。また、参考として、MPLS IPv6トンネルとの比較もします。 次に、SRv6を用いてVPNを構成するために必要な設定を実

                                                                            SRv6をもう少し深堀してみよう。
                                                                          • Docker/Kubernetesを扱う上で必要なネットワークの基礎知識(その2) - sagantaf

                                                                            はじめに DockerやKubernetesを使ってマイクロサービスなどを構築する時に必要になるネットワークの基礎知識まとめ、その2です。 その1は下記です。 sagantaf.hatenablog.com 今回のその2では、 VLAN network namespace iptables について記載しています。 VLAN ポートVLAN タグVLAN VXLAN Network Namespace NetworkNamespaceとは 独自netnsと外部とで通信するためには 実際にbridgeを作成し、独自ns間の通信を試してみる bridgeの作成 netnsの作成 vethペアの作成 bridge0にveth0_hostを割り当て netns0にveth0_containerを割り当て IPアドレスとデフォルトゲートウェイの設定 通信テスト iptables おわりに VLAN

                                                                              Docker/Kubernetesを扱う上で必要なネットワークの基礎知識(その2) - sagantaf
                                                                            • Oracle Net接続(1/4) リスナーとは - DBひとりでできるもん

                                                                              今回の連載Oracle Net接続について 初めまして。2014年に新卒で入社し、Oracle DBを中心にデータベース設計/構築を行っており、 最近では移行の設計等のお仕事をさせていただいております、技術チームの苅辺と申します。 今回はOracle Databaseを学びはじめた人がよく引っかかる Oracle Net接続について複数回に渡り連載させていただきます。 初回となる本稿では、Oracle Databaseについて学習する上でも 初期に躓きやすい(自身の経験上)『リスナー』の役割/概要についてと、 リスナーを構成し接続するところまでを実際の例を出しながらお伝えできればと思います。 本連載の最終目標としては、ロードバランス/フェイルオーバー、Oracleサービス等を含めて 接続構成の考え方や引っかかりやすいポイント等を含めて一緒に勉強し、お伝えできればと思っております。 どうぞ宜

                                                                                Oracle Net接続(1/4) リスナーとは - DBひとりでできるもん
                                                                              • [Docker] Rootless Docker を試してみた - Qiita

                                                                                Rootless Docker とは Rootless モード(Rootless mode)は Docker デーモンとコンテナを root 以外のユーザが実行できるようにするもので、デーモンやコンテナ・ランタイムにおける潜在的な脆弱性を回避します。 Docker 公式ドキュメント 今回の環境 Ubuntu Server 20.04 on VMware ESXi いざ挑戦 まずは事前準備 uidmap 導入 ホスト上に newuidmap と newgidmap のインストールが必要です。 とのことなので、インストールしておきます。 # Installing stable version 19.03.12 # Missing system requirements. Please run following commands to # install the requirements an

                                                                                  [Docker] Rootless Docker を試してみた - Qiita
                                                                                • faasd - lightweight Serverless for your Raspberry Pi

                                                                                  Kick the tires with faasd today, for a lightweight serverless experience that doesn't require Kubernetes. Instead it uses containerd and the existing OpenFaaS ecosystem. Last updated: 24th October 2020 - upgraded faasd & containerd versions. Added instructions for core components logs such as the gateway. You can run faasd anywhere, even on a Raspberry Pi, but why would you want to do that? faasd

                                                                                    faasd - lightweight Serverless for your Raspberry Pi