Opensourcetechブログ

OpensourcetechによるNGINX/Kubernetes/Zabbix/Neo4j/Linuxなどオープンソース技術に関するブログです。

kubernetes の検索結果:

コンテナ環境で開発中のZabbix8.0(alpha2)を起動してみる

…ebフロントエンド)という環境にしましたが、公開されているコンテナイメージを変える事でDBにPostgresqlやApacheにすることも出来ます。 また、Zabbix8.0をまず触ってい見たいという場合には、気軽に構築できコンテナという選択肢は最適なのかなとやってみて感じました。 コンテナの良さである、軽量・すぐ起動出来るなどのメリットが受けられるからです。 なお、今回はDocker上で起動しましたが、同様のコンテナプラットフォーム(Kubernetesなど)でも可能です。

LF AI & DATA FOUNDATION Project一覧(2025/6/22版)

…プロジェクト概要: Kubernetes/Openshiftワークロードのデータアクセスを透過的かつ宣言的に可能にし、加速する。 プロジェクト名: DeepCausality プロジェクト概要: 高速で決定論的なコンテキスト認識型因果推論のための超幾何計算因果ライブラリ。 プロジェクト名: DeepRec プロジェクト概要: TensorFlow 1.15、Intel-TensorFlow、NVIDIA-TensorFlowに基づいた高性能な推薦ディープラーニングフレームワー…

KubernetesとLinuxの組み合わせで、最強のインフラエンジニアへ!

…techです。 1.Kubernetes(k8s)とは Kubernetes(k8s)とは、公式ドキュメントの言葉をかりれば、 「デプロイやスケーリングを自動化したり、コンテナ化されたアプリケーションを管理したりするための、オープンソースのシステム」です。 https://kubernetes.io/ja/ ざっくりいうと、コンテナアプリケーションを動かす土台です。 実は、身近なところでもKubernetesで運用されているシステムがたくさんあります。 なぜABEMAは「サッ…

GKE(Google Kubernetes Engine) on GCPの始め方

… メニュー(三)よりKubernetes Engine > Overviewと進みます。 "ENABLE"をクリックします。 そうすると、GKE(Kubernetes Engine)のメニューを操作できるようになります。 Clusterの作成 早速、Clusterを作成していきます。 今回は、Node管理もクラウド事業者側で行ってくれるAutoPilotを使います。 左側のメニュー"Cluster"を選択し、上部の"CREATE"をクリック クラスター名とリージョンの選択。 …

Cloud Native Community Japan -KubeCon採択スペシャル- に参加してきた

…ドネイティブ用語集やkubernetes本家サイトでも日本語化されたドキュメントが拡大中ですね♪ KubeConにProposalを送りたい人へのアドバイス(仮) CFPはただ提出すればいいだけでなく、 タイトル重要 kubernetes slackチャンネルなどでテーマを盛り上げる など必要という話。 また、CFP受理され登壇後には更なるプロダクトの盛り上がりがあったよとのことでした♪ KubeCon発表採択への道 ~コミュニティ開発者の場合~ CFPが受理されるかどうかに…

Podに環境変数を渡す方法(kubernetes)

…hです。 はじめに KubernetesのPodへ環境変数を渡す方法に関するメモです。 その1 env/valueで定義する root@rke2-1:~# kubectl explain pod.spec.containers.env KIND: Pod VERSION: v1 FIELD: env <[]EnvVar> DESCRIPTION: List of environment variables to set in the container. Cannot be …

hostPathによるPodへのデータ共有(kubernetes)

…hです。 はじめに Kubernetes volume機能のhostPathを使ったデータ共有に関するメモです。 やってみる 早速、やってみます。 root@rke2-1:~# cat pod10.yaml apiVersion: v1 kind: Pod metadata: name: testweb spec: containers: - name: testweb image: nginx volumeMounts: - mountPath: /tmp/aaa name…

LivenessProbe/ReadinessProbe/StartupProbeを使ってみる(kubernetes)

… はじめに 今回は、kubernetesでLivenessProbe・ReadinessProbe・StartupProbeを使ってみます。 それぞれの機能ですが、以下の通りとなります。 LivenessProbe:Pod内コンテナが期待されるサービス応答をするかどうか ReadinessProbe:Pod内コンテナのサービスレベルでの応答可否 StartupProbe:上記2つを開始させる前のコンテナ初回動作確認 本家ドキュメントは、こちら。 https://kuberne…

RKE2(Rancher Kubernetes Engine)のアップグレード

…2(Rancher Kubernetes Engine)の構築 アップグレード手順 以下に記載されています。 構築同様に、基本的にはスクリプトを実行すれば大丈夫です。 https://docs.rke2.io/upgrade/manual_upgrade Server Nodeのアップグレード root@rke2-1:~# curl -sfL https://get.rke2.io | INSTALL_RKE2_CHANNEL=latest sh - [INFO] findi…

RKE2(Rancher Kubernetes Engine)の構築

…回は、RKE2によるkubernetesクラスターの構築をしてみます。 RKE2とは RKE2とは、Rancherの次世代Kubernetes Engineです。 https://docs.rke2.io/ RKE1との違いでいうと、 RKE1ではDockerがCRI(Container Runtime Interface)ランタイムとなっていましたが、RKE2ではcontainerdとなりました。 RKE2構築の前提条件 前提条件は以下に載っており、 今回はUbuntu22…

CKAD対策 Q8&A8

…ntent.com/kubernetes/website/main/content/en/examples/pods/probe/exec-liveness.yamlからダウンロード可 apiVersion: v1 kind: Pod metadata: labels: test: liveness name: liveness-exec spec: containers: - name: liveness image: registry.k8s.io/busybox arg…

CKAD対策 Q7&A7

…ntent.com/kubernetes/website/main/content/en/examples/pods/probe/exec-liveness.yamlからダウンロード可 apiVersion: v1 kind: Pod metadata: labels: test: liveness name: liveness-exec spec: containers: - name: liveness image: registry.k8s.io/busybox arg…

CKAD対策 Q6&A6

…ntent.com/kubernetes/website/main/content/en/examples/pods/probe/exec-liveness.yamlからダウンロード可 apiVersion: v1 kind: Pod metadata: labels: test: liveness name: liveness-exec spec: containers: - name: liveness image: registry.k8s.io/busybox arg…

CKAD対策 Q5&A5

…tive 299d kubernetes-dashboard Active 286d metallb-system Active 298d orange Active 283d kubeuser@master01:~$ kubectl create sa testsa -n ckad serviceaccount/testsa created kubeuser@master01:~$ kubectl get sa -n ckad NAME SECRETS AGE defaul…

CKAD対策 Q4&A4

…tive 298d kubernetes-dashboard Active 284d metallb-system Active 297d orange Active 282d kubeuser@master01:~$ kubectl create ns ckad namespace/ckad created kubeuser@master01:~$ kubectl get ns NAME STATUS AGE blue Active 282d cadvisor Active…

CKAD対策 Q3&A3

…tive 297d kubernetes-dashboard Active 284d metallb-system Active 296d orange Active 281d kubeuser@master01:~$ kubectl create ns ckad namespace/ckad created kubeuser@master01:~$ kubectl get ns NAME STATUS AGE blue Active 281d cadvisor Active…

CKAD対策 Q2&A2

…t kubectl.kubernetes.io/default-container: secretpod kubectl.kubernetes.io/default-logs-container: secretpod kubectl.kubernetes.io/last-applied-configuration: | {"apiVersion":"v1","kind":"Pod","metadata":{"annotations":{},"labels":{"run":"s…

CKAD対策 Q1&A1

…tive 296d kubernetes-dashboard Active 283d metallb-system Active 296d orange Active 281d kubeuser@master01:~$ kubectl create ns ckad namespace/ckad created kubeuser@master01:~$ kubectl get ns NAME STATUS AGE blue Active 281d cadvisor Active…

クラウド環境(Azure/GCP/AWS)におけるkubernetesの永続ボリューム(ストレージ)利用

…GCP/AWS)上のkubernetesにおいて永続ボリューム(ストレージ)として何が使えるのか、調べてみました。 kubernetesにおけるストレージ利用 kubernetesでPodなどの永続的な(消えない)データ保続先を定義する場合、以下があります。 ①Pod → PVC(Persistent Volume Claim、ボリューム使用要求) → PV(Persistent Volume、ボリューム領域) ②Pod → PVC → Storage Class → CSI…

Cloud Native Community Japan Kickoff meetupに参加してきた!

…の動機づけと始め方(Kubernetes Upstream Training)の紹介がありました。 ・kubernetesなどへの貢献はしてみたいがどう始めればいいの? ・コミニケーションのコツ ・記述したコードのレビュー依頼 ・Upstream(開発) Training などの話がありました。 Keycloakの最新開発動向 日立 田畑義之さんから4月にCNCF incubating projectとなった認証・認可を担うOSS「Keycloak」の最新開発動向を紹介があり…

kubernetes環境における送信元IPアドレスの保持(externalTrafficPolicy: Local)

… はじめに 今回は、kubernetes環境における送信元IPアドレスの保持について確認してみます。 以下の記事にあるService(LoadBalancer)環境を使って確認していきます。 https://www.opensourcetech.tokyo/entry/20230316/1678966960 試験環境の構築 まず、試験用の環境構築。 namespace(名前空間)の作成。 kubeuser@master01:~/20231008$ cat ns.yaml ap…

Linux Kernel CapabilityをKubernetes Podで設定する

… はじめに 今回は、kubernetesのPodにLinux Kernel Capabilityを設定してみます。 Linux Kernel Capabilityとは LinuxカーネルのCapability(権限)は、プロセスの特権とアクセス権を制御するための仕組みです。Linuxはセキュリティとアクセス管理の観点から、プロセスが実行できる操作やリソースへのアクセスを制御するためにCapabilityを使用します。 通常、Linuxではスーパーユーザー権限(root権限)を…

kubernetesノードのリソース不足

… はじめに 今回は、kubernetesノードにおけるリソース(CPU/メモリー)不足に関するトピックです。 リソース不足になった場合 Podなどのデプロイでエラーが発生します。 例えば、CPUリソースが不足の場合以下のようなメッセージが出ます。 Warning FailedScheduling 11s (x3 over 5m18s) default-scheduler 0/2 nodes are available: 1 Insufficient cpu. preempti…

Node AffinityによるPod起動ノードの管理(kubernetes)

… はじめに 今回は、kubernetesにおけるNode Affinityを使ったPod起動ノートの制御をしてみます。 Node Affinityとは Node Affinityですが、ノードや既存Podに付与されたラベルを使用してPodを起動するノードを制御する方法です。 同じようなものとして、nodeSelectorがありますが、 それよりも柔軟・複雑な制御が可能です。 ※必須条件・オプション条件の指定や複数条件(OR/AND)の指定など https://kubernet…

nodeSelectorによるPod起動ノードの制御(kubernetes)

… はじめに 今回は、kubernetesにおけるnodeSelectorを使ったPod起動ノートの制御をしてみます。 nodeSelectorとは 仕組みとしてはシンプルで、 ノードに付与されたラベルを指定して、そのノード上にPodを起動するというものです。 https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ nodeSelectorを使ってみる では、実際にやってみましょう! まず…

kubernetesのラベルにbool型を指定する際には準拠するYAMLの仕様(version1.1)に気を付けた方がいい

…hです。 はじめに kubernetesのラベルでbool型を使ってちょっとはまったので、それに関するメモです。 やってみたこと kubernetesのノードに gpu: onというラベルを付与して、nodeSelectorを使うとPodを起動できなかったというものになります。 ラベルの付与。 kubeuser@master01:~/nodeSelector$ kubectl get nodes --show-labels NAME STATUS ROLES AGE VERS…

TaintとTolerationsによるPodの配置管理(kubernetes)

…。 はじめに 今回はkubernetesのPod(コンテナ)を特定のノードに配置しないようにTaintとTolerationを使ってみます。 TaintとTolerationsとは Taintは特定のノードにマーキング(Taintは汚れという意味)をして、 それを許容(Tolerarion)するPodのみ配置(スケジューリング)出来るようにするものです。 Taintをノードに付ける 早速、特定ノードにTaintを付けてみます。 まず、現在のノード状態を確認。 kubeuser…

kubernetesのPod(コンテナ)のパケットキャプチャを取得する方法

…。 はじめに 今回はkubernetesのPod(コンテナ)のパケットキャプチャを取得してみようと思います。 ※kubectlのプラグインksniffを使います。 ksniffとは ksniffは、kubernetesクラスター内の指定Podにおけるパケットキャプチャを可能にするkubectlのプラグインです。 ksniff Capture packets in Kubernetes with this open source tool 当然ですが、手元にkuberneteク…

Kubernetes 1.27の新機能(Feature Gate)を有効化し、InPlacePodVerticalScalingを試してみる

… はじめに 今回は、kubernetes 1.27の新機能(Feature Gate)として実装されたInPlacePodVerticalScalingを有効化して使ってみようと思います。 https://kubernetes.io/blog/2023/05/12/in-place-pod-resize-alpha/ Feature Gateとは KubernetesのFeature Gateは、今後正式機能となる候補の位置づけになります。 https://kubernete…

Prometheus・Grafana・各種Exporter(node-exporter・cAdvisor)によるモニタリング

…ちらの記事で作成したkubernetesクラスター(Ubuntu22.04)を利用しています。 ※注意:今回は主に/tmpで作業しているので、実際に環境構築する場合は/usr/localなど各種ソフトウェアを適した場所に配置ください。 ①Prometheusの構築 まずは、Prometheusのパッケージ入手、解凍などです。 Welcome to Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-67-generic x86_64) * Documen…

Opensourcetech by Takahiro Kujirai