Kubernetes
TL;DR 結論を先に書くとK3sデプロイ時に、以下のように--write-kubeconfig-modeオプションでモードを付与すればOK curl -sfL https://get.k3s.io | sh -s - --write-kubeconfig-mode 644 K3sのKUBECONFIGファイル K3sを特にオプションなしでデプロイした場合…
本記事は「エーピーコミュニケーションズ Advent Calendar 2022」の21日目のエントリです。 軽量Kubernetesディストリビューションの一つにk3sというものがあります。 以下のコマンドで簡単にクラスタをデプロイでき、少ないリソースで動作し、プラットフォ…
本記事は「Ansible Advent Calendar 2022」の8日目のエントリとなります。 AAP(旧Ansible Tower)のadminの初期パスワードはインストール時に使用するインベントリファイルで指定できるので簡単ですが、AWXのadminの初期パスワードはデフォルトではランダムな…
KustomizeにおけるConfigMapの管理おためし。 configMapGeneratorを使用する。 kubectl.docs.kubernetes.io ConfigMapリソースの作成 key=value形式をkusomization.yamlにインライン記述 key=value形式のファイル参照 ファイルそのものをConfigMap化 ConfigM…
Helmあるから別にいいかーと避けていたkustomize、仕事で触れる機会があったのでごくごく簡単にまとめ。 kubectl.docs.kubernetes.io ※ Kustomizeの用途でよくあるbaseとoverlayを使った環境(dev/stg/prd)ごとのパラメタセットの切り替えは本エントリではま…
デフォルトでは、ジョブの実行はAWXをデプロイしているKubernetesクラスタ上でpodがデプロイされて行われる。設定によって、podをデプロイするクラスタを、異なるクラスタ(AWXをデプロイしていないクラスタ)へ変更することができる。 本記事内では便宜上、AW…
ここのところKubernetes関連の情報をキャッチアップできておらず、今月作ったk8sクラスタで期待する動作をせずにプチハマりしたので、トークン取得に関連した確認した内容の備忘録。 qiita.com LegacyServiceAccountTokenNoAutoGeneration feature gateがベ…
AWXはamd64向けのイメージしか提供されてないので、Oracle CloudのAlways Free枠で使用できる4コア・RAM24GBのA1.FlexインスタンスのようなARMアーキテクチャの環境ではそのままでは利用できません。 イメージをARM環境でリビルドしてやれば動作するので、さ…
YAMLで複数行のテキストを記述しつつ、その先頭にインデントを設定するにはどうするか。 YAMLの複数行テキスト インデント設定 複数行表記で使用する記号の種類と効果 記号まとめ インデント量の指定 Ansibleの場合は YAMLの複数行テキスト --- data: sample…
任意のKubernetesクラスタでLoadBalancerタイプのServiceを使えるようにできるMetalLBが0.10.0からHelmを使ったインストールに対応してるようなので試してみた。 環境 MetalLBインストール with Helm リポジトリ追加 チャートとデフォルト値の確認 インスト…
コントロールノードでなくターゲットノードで(pipで追加パッケージが必要などの理由で)venvを使いたい場合の方法について。 といっても、venvの中にあるPythonインタプリタのパスをinterpreter_pythonなどで指定すればOK。 Python2/Python3の切り替えでイン…
「Kubernetes Novice Tokyo #9」で「kind on Podman」というタイトルでLTしたので、内容について振り返ります。 k8s-novice-jp.connpass.com 発表資料 speakerdeck.com 内容 Kubernetesのノードとして動作するDockerコンテナを使うことでDocker上でKubernete…
sshやdocker exec、kubectl execで、シェルを起動せずに直接コマンドを実行できるが、sshなどを実行するローカルの標準出力をリモートホストやコンテナの標準入力として処理する方法について。 SSHの場合 前提。 ローカルのhostnameはcloud-devで、リモート…
先日のContainer Runtime Meetup #3で「Podmanでkind動かせるよ」という話になり、どういうわけか「Podmanではkindは(まだ)動かせない」と思い込んでいたため、実際に試してみました。 ドキュメントは多分ないですが、 sudo KIND_EXPERIMENTAL_PROVIDER=podm…
明けましておめでとうございます。 年末に話題になった「KubernetesのコンテナランタイムでDocker(Dockershim)がv1.20で非推奨になる」にともない、CRIに「containerd」を指定したkubeadmを使ったクラスター新規構築を(お正月に)試してみたので簡単にまとめ…
SNMP Exporterをお試し。 環境は、SNMP ExporterもPrometheusもCentOS 7上で直接バイナリを実行している。(非K8s環境) SNMPエージェントについてはDockerで動作するArista EOSを使用。 Prometheusバージョンは2.23を使用。 実行用バイナリの入手 SNMP Export…
Kubernetes基本機能の一つであるConfigMapのおさらい。 ConfigMapを作る key=valueの形式をCLIから key=value形式のファイルから ファイルの埋め込み 指定ディレクトリ直下の全ファイルを指定 ハードタブを含むファイルの場合 バイナリファイルの場合 YAMLの…
というのをOracle Cloud Infrastructure #2 Advent Calendarの13日目の記事としてQiitaにアップしました! qiita.com qiita.com 夜中にちょっと遊んでたんだけど、k0sも簡単だったけど、K3sも簡単でした。 Oracle Cloud Always Free枠でk3sでcontrol plane +…
Rookと仲間たち、クラウドネイティブなストレージの Advent Calendar 2020の3日目のエントリをQiitaにアップしました。 (Qiitaに記事書いたのいつぶりだろw) 今年も来た!Rookといえば、 @AokiTenzen さんや @takutaka1220 さん、 @zaki_hmkc さんもいるし…
シングルバイナリで簡単・軽量で動くKubernetesディストリビューション「k0s」が出たということで、手元で試してみた。 新しい Kuberentes distro, #k0s が OSSで公開されました!軽量、ワンバイナリ、Intel/ARM対応、アップデートも簡単! チェックしてみて…
kubectl topやhpaを使うための準備。 Prometheus単体をデプロイするだけだと、metrics serverが存在しないのでこれらは使えない。 [zaki@cloud-dev helm-prometheus]$ kubectl describe apiservice v1beta1.metrics.k8s.io Error from server (NotFound): ap…
Helmチャートを使ってPrometheusをインストールする、その2 前回のはあまり前提を把握できてなく勢いでデプロイしたけど、「Helmを使ってPrometheus Operatorをデプロイ」していたので、今回はOperator無しのPrometheusをデプロイする。 zaki-hmkc.hatenablo…
AnsibleでHelm version3を操作する。 使用モジュール 旧helmモジュール 検証環境 playbook例 repository設定 helm repo update Helm chartのインストール カスタマイズYAML release_values (valuesもaliasで使用可能) values_files (注意点有り) サンプルコ…
helm installでchartをカスタマイズするには、helm show valuesの出力をベースにYAMLを作成する。 helm.sh ちなみにこのYAMLファイルの名称ってあるのかな。。 (K8sのリソースのYAMLファイルなら「マニフェスト」とか、Ansibleなら「プレイブック」みたいな…
〇 2021.02.20: APIトークンを指定した方法について追記 Ansibleのk8sモジュールを使って、Kubernetes上のリソースを操作してみる。 意外といままで試してなかった…というか実は5月頃に途中まで試したけど当時はPython2環境でpipから入れたりして文書化に手…
(11/14 追記) 記事作成時よくわかってなかったけど、本記事では「Helmを使ってPrometheus Operatorをデプロイ、デプロイされたPrometheus OperatorがPrometheusやGrafanaをデプロイしている」という構成でした。 これを踏まえてタイトル含め少し加筆修正。 …
昨日の素のPrometheusでGetting Startedを通して動かしたことで、Node Exporterを使ったメトリクス値の収集と、ルールの追加時のファイル作成・prometheus.ymlへの設定追加を完全にマスターしたので、同じことをPrometheus OperatorでデプロイしたK8s上のPro…
OpenShiftだと最初から入ってるけれど、いくつかのマネージドK8sを除いて、EKSやAKSを含めて素のK8sクラスタは初期状態だとメトリクスサーバーはデプロイされていない。 Prometheus Operatorを使うと、メトリクスサーバーとして動作する最近流行りのPromethe…
コンテキストなどの切り替えが楽になるやつ。 職場の環境は切り替えが大量に発生するので使ってるけど、個人環境では使ってなかったので入れておいた。 kubectxとfzfで何も困ってないマン— inductor (@_inductor_) 2020年6月11日 kubectx, kubens インストー…
helm.sh Getting Startedに沿ってやってみる。 ローカル上にあるChartファイルをパス指定してデプロイするまで。 Helm自体のGetting Startedやってから3か月も経っている件… 流れ ConfigMapのChart作成 テンプレート作成 テンプレート削除 ConfigMapのテンプ…