Opensourcetechブログ

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

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

LinuCエヴァンジェリスト・Open Source Summit Japan 2022ボランティアリーダーの鯨井貴博@opensourcetechです。 はじめに 今回は、kubernetes 1.27の新機能(Feature Gate)として実装されたInPlacePodVerticalScalingを有効化して使ってみようと思います。 h…

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

LinuCエヴァンジェリスト・Open Source Summit Japan 2022ボランティアリーダーの鯨井貴博@opensourcetechです。 はじめに 今回はPrometheus・Grafana・各種Exporterによるモニタリング(監視)を使ってみようと思います。 概要とそれぞれの役割をざっくり説明…

KubernetesクラスターのUpgrade(1.26 to 1.27)

LinuCエヴァンジェリスト・Open Source Summit Japan 2022ボランティアリーダーの鯨井貴博@opensourcetechです。 はじめに 今回は、以前作成したDualStackのkubernetesクラスターを1.26から1.27にアップグレードします。 アップグレード方法 対象となるkuber…

sternを使った複数Podのログ出力(kubernetes)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、kubernetesのPodログ出力ツール、sternを使ってみます。 sternとは sternとは、kubernetesの複数Podのログを出力できるソフトウェアです。 https://github.com/stern/stern よくあ…

Deploymentの耐障害性(自動復旧)とオートスケーリング(kubernetes)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、kubernetesのDeploymentの耐障害性(自動復旧)とオートスケーリングを検証してみます。 なお、kubernetesは以下の記事で作成したクラスターを使っています。 DualStack(IPv4 & IPv6…

helmをインストールする(kubernetes)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、kubernetesへのパッケージ管理ツールであるhelmをインストールします。 なお、kubernetesは以下の記事で作成したクラスターを使っています。 DualStack(IPv4 & IPv6)のkubernetes…

Network Policyによるトラフィック制御(kubernetes)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、Network Policyを使ってPod間の通信制御をしてみます。 なお、kubernetesは以下の記事で作成したクラスターを使っています。 DualStack(IPv4 & IPv6)のkubernetesクラスター構築(v…

kubernetes dashboardを使う

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、kubernetes-dashboardを使ってみます。 なお、kubernetesは以下の記事で作成したクラスターを使っています。 DualStack(IPv4 & IPv6)のkubernetesクラスター構築(v1.26.00・ubuntu…

kube-proxyのmodeをiptablesからipvsに変更する

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 前回(kubernetesにおけるPodへの負荷分散状況の確認(Service/Deployment経由))の記事でトラフィックの分散をkube-proxyが担っていることが分かりました。 なので今回さらに深堀りというこ…

kubernetesでstatic podを起動させる

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、kubernetesでstatic podを起動させてみます。 なお、作業はこちらの記事で作成したkubernetesクラスター v1.26.00で実施します。 static podとは 通常のPod(コンテナ)は、yamlを適…

kubernetesにおけるPodへの負荷分散状況の確認(Service/Deployment経由)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、kubernetesでPod(コンテナ)へのアクセスってどのような分散がされるのか確認してみます。 具体的には、こんな環境で実施します。 環境構築 まず、以下の記事を参考に"Deployment1"…

kubectl topコマンドを実施する(metrics-serverの導入)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、kubernetes環境でkubectl topコマンドを実施できるようにします。 なお、作業はこちらの記事で作成したkubernetesクラスター v1.26.00で実施します。 kubectl topとは kubectl top…

nginxコンテナ(Pod)のコンテンツ(index.html)をConfigMapで提供・更新する(kubernetes)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、こちらの記事で作成したkubernetesクラスター v1.26.00で、 nginxコンテナ(Pod)のコンテンツファイル(index.html)をConfigMapを使って提供、またコンテンツファイルの更新をやって…

NGINX Ingress Controller + Ingressによるサービス公開(kubernetes v1.26)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、こちらの記事で作成したkubernetesクラスター v1.26.00で、 NGINX Ingress ControllerとIngressを使って外部クライアントへのサービス公開をやってみます。 なお、サービス公開はI…

MetalLBとService(type:LoadBalancer)による外部クライアントへのサービス公開(kubernetes v1.26.00 on ubuntu22.04)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、こちらの記事で作成したkubernetesクラスター v1.26.00で、 MetalLBとService(type:LoadBalancer)を使って外部クライアントへのサービス公開をやってみます。 なお、サービス公開…

Dual Stack環境のkubernetesにおけるServiceの挙動

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに Dual Stack環境のkubernetes(v1.26.0)におけるServiceの挙動(IPv4とIPv6のどっちが有効になるの?)に関するメモです。 なお、Dual Stack環境のkubernetesクラスターはこちらで構築したもの…

kubectlコマンドの補完やalias

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに kubectlコマンドの補完に関するメモです。 こちらを参考にしています。 Linuxのbashなどであればファイルパスなどtabキーで補完できますが、 同じようにkubectlも使えれば楽だよなぁってい…

DualStack(IPv4 & IPv6)のkubernetesクラスター構築(v1.26.00・ubuntu22.04)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、Kubernetes v1.26.00のDual Stack(IPv4 & IPv6の両方使える)構築を行っていきます。 ※kubernetesでは、v1.16からDual Stackが利用可能となっている。 構築する環境 ・Clusterの構…

kubectlで"error: You must be logged in to the server (Unauthorized)"となって認証されない場合の復旧方法

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 kubernetesでerror: You must be logged in to the server (Unauthorized)となって認証が通らなくなった際の復旧に関するメモです。 はじめに 具体的には、以下のようになった場合です。 そのままで…

kubernetesクラスター(api-server)にREST API(curlなど)でアクセスする

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 今回はkubernetesクラスターのapi-serverにREST API(curlなど)でアクセスしてみます。 はじめに kubernetesクラスターにおけるアクセスの認証では、通常configファイル($HOME/.kube/configなどにあ…

CLOUD NATIVE TRAIL MAPを読み解く!

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、CNCFが考える クラウド ネイティブへの移行を開始する企業向けの概要 である CLOUD NATIVE TRAIL MAP を読み解いてみます! CLOUD NATIVE TRAIL MAPとは クラウド ネイティブへの…

初めてのAKS(Azure Kubernetes Service) on Microsoft Azure

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、Qiita Advent Calendar2022のAzureの23日目として、 Microsoft Azureで初めてのAKS(Azure Kubernetes Service)を使ってみます! https://qiita.com/advent-calendar/2022/azure AK…

kubeadmで構築したkubernetesクラスターのアップグレード(v1.23 to v1.24)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに https://kubernetes.io/blog/2022/05/03/kubernetes-1-24-release-announcement/ 5/3にkubernetesの新バージョンStargazerがリリースされました。 なので手元にあるv1.23のKubernetesクラ…

kubenetesクラスター(v1.22.0)の構築(kubeadm) on Ubuntu Server 20.04.3 LTS

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 予め作成したKVM環境上のVM(Ubuntu Server 20.04.3 LTS×2台)にkubeadmでkubernetesクラスターを構築してみます。 KVMでのVM作成方法 virt-install --name kube_newmaster --ram 4096 --disk size=50…

helmを使ったkubernetesクラスターへのサービス展開

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、helmを使ってKubernetesのクラスターへサービスを展開してみます。 helmとは? そのままですが、kubernetes用のパッケージマネージャです。 分かりやすい例だと、RPM系におけるyum…

kubernetes APIリソース一覧とショートネームについて

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに kubernetesでkubectlのコマンド入力を省略形(ショートネーム)で行っている方をみかけたので、 ちょっと調べてみました。 例えば、以下のような使い方です。 kubeuser@kubemaster1:~$ kubec…

LENS(開発統合環境)でkubernetesクラスターを操作する

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、LENS(開発統合環境)でkubernetesクラスターを操作するメモです。 以下の記事で作成したkubernetesクラスターを追加対象としています。 kubenetesクラスターの構築(kubeadm) on Ubu…

kuernetes yamlファイルの書き方

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに 今回は、kubernetesを使う際に必要となるyamlファイルの書き方に関するメモです。 何となくこんな感じで書けばいいんだろうと、他の方が使っているファイルを真似ていますが、 「ルールっ…

Podが"Pending"のまま起動しない原因(kubernetes)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに KubernetesでPodが"Pending"のまま起動しない原因に関するメモです。 事象の発生 以下のように、Deployment(Pod)を含むをapplyします。 kubeuser@kubemaster1:~$ kubectl apply -f nginx.y…

"Terminating"のまま削除できないPodの強制削除(kubernetes)

LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。 はじめに KubernetesでPodが"Terminating"のまま、削除できない事象を回避するメモです。 事象の発生 以下のように、DeploymentとPodがあるので削除します。 kubeuser@kubemaster1:~$ kubectl get a…

Opensourcetech by Takahiro Kujirai