Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Podmanで推す OpenShift Kubernetes入門/Introduction t...

Podmanで推す OpenShift Kubernetes入門/Introduction to OpenShift and K8s by Podman

本資料はOpenShift.run 2024の発表資料です。

OpenShift.Run - 究極で最強のテックカンファレンス - connpass
https://openshift.connpass.com/event/310201/

Shion Tanaka

April 02, 2024
Tweet

More Decks by Shion Tanaka

Other Decks in Technology

Transcript

  1. • 田中 司恩(タナカ シオン) / @tnk4on ◦ https://tnk4on.github.io/ • Red

    Hatのソリューションアーキテクト。Red Hatへの転職と同時に福岡に移 住。 • 大阪芸術大学音楽工学コース卒。在学中よりメディア・アート、サウンド・アー ト作品の制作を行う。 • コンテナに興味を持ち、OpenShiftやPodmanに関する情報をブログ、雑誌/ 書籍に多数投稿。「Podmanイン・アクション」の著者の1人。 • 2020年頃よりPodmanコミュニティに参加、PR/Issue/翻訳などを行い、 Podmanの日本語情報発信を積極的に展開中。 • 最近はPodmanを推す人 • 音とテクノロジーが重なる領域が好物のデジタルクリエイター。 自己紹介
  2. インフラエンジニアBooks Podmanイン・アクション Part 4 Podman Advanced Pod-01:DockerからPodmanへの移行 Podmanイン・アクションの次の一冊にオススメ 「DockerからPodmanへの移行を」テーマに、移行に必要な考え方やツールの紹 介、Podman

    machine、Podman Desktopのアーキテクチャーについて解説 • 第1章:DockerからPodmanへ移行する時に必要な考え方、移行を助けるツール、 移行方法 • 第2章:Docker Composeの移行に使用するツールやコマンドの紹介、Podへの移 行方法 • 第3章:Podman Desktopの初期設定方法、各機能の紹介、WindowsとmacOSに おけるPodman machineの仕組み • 第4章:PodmanとDockerを同時に使えるテスト環境としてFedora CoreOSの紹 介、セットアップ方法 技術書典オンラインマーケット(推奨/PDF入手可) https://techbookfest.org/product/sCq1qpfKnLLNRzaKCEJTi9 Amazon Kindleストア https://www.amazon.co.jp/dp/B0CP8Y54CB 入手先👉
  3. Podmanとは https://www.redhat.com/ja/topics/containers/what-is-podman Podmanとは ▸ コンテナを構築、管理、実行する次世代のコンテナエンジン ▸ Open Container Initiative(OCI)を標準フォーマットとして採用 ▸

    Dockerとの互換性(コマンドライン、Dockerイメージ、Compose、 Docker互換API、など) ▸ Red Hatの開発チームを中心にOSSで開発 ▸ RHEL 8以降に標準搭載(RHEL 8以降はDocker非サポート) podman desktop
  4. PodmanおよびPodman Desktopがカバーする領域 OpenShift Local / Minikube / K3s / Kind

    Kubernetes Cluster Node Node Node Pod Pod Pod Managed Services Self-Managed (OCP) OpenShift Remote and Managed Services Container Docker-Compose Pod Podman Engine Ingress/Router (ROSA,ARO,OSD) Podmanの実行環境とPodman Desktop 共有の開発環境、 本番実⾏環境 開発者のローカル実⾏環境
  5. PodmanおよびPodman Desktopがカバーする領域 OpenShift Local / Minikube / K3s / Kind

    Kubernetes Cluster Node Node Node Pod Pod Pod Managed Services Self-Managed (OCP) OpenShift Remote and Managed Services Container Docker-Compose Pod Podman Engine Ingress/Router (ROSA,ARO,OSD) Podmanの実行環境とPodman Desktop 共有の開発環境、 本番実⾏環境 開発者のローカル実⾏環境
  6. ネクストステップ ▸ ローカルで開発したコンテナをOpenShift上に展開する ▸ ローカル環境からシームレスにOpenShift上でコンテナ開発を行う → Podman Desktopを使いシンプルで高度な開発環境を構築 OpenShift Local

    / Minikube / K3s / Kind Kubernetes Cluster Node Node Node Pod Pod Pod Managed Services Self-Managed (OCP) OpenShift Remote and Managed Services Container Docker-Compose Pod Podman Engine Ingress/Router (ROSA,ARO,OSD) 本資料の範囲
  7. OpenShiftにデプロイするまでの作業フロー ▸ アプリのソースコードを書く ▸ Podmanでコンテナイメージをビルド ▸ コンテナをPodman Podとして実行する ▸ Podman

    PodをOpenShiftにデプロイする → YAMLを書かずにGUIのみでできる(Podman Desktopの機能) 事前に作業済み 本資料の内容 本資料ではOpenShift環境はDeveloper Sandboxを使用。 (Podman Desktopでは通常のOpenShiftも使用可能)。
  8. • Kubernetes Services: ◦ Replace .hostPort exposure on containers by

    Services. It is the recommended way to expose ports, as a cluster policy may prevent to use hostPort. • Restricted Security Context: ◦ Update Kubernetes manifest to respect the Pod security restricted profile. • Expose Service Locally Using Kubernetes Ingress: ◦ Create an Ingress to get access to the local ports exposed, at the default Ingress Controller location. Example: On default kind cluster created with Podman Desktop, it will be accessible at 'localhost:9090'. Requirements: Your cluster must have an Ingress Controller. • Kubernetes Context: Deploy to Kubernetes画面に記載の内容