動かざることバグの如し

近づきたいよ 君の理想に

2022-07-01から1ヶ月間の記事一覧

KubernetesにMariaDBをマスタースレーブ構成でデプロイする

環境 Kubernetes v1.24 やること MySQLサーバーをKubernetesで構築しようと思ったとき、練習用なら自分でYAML書いてデプロイ出来るが、永続化とかレプリケーションまで考えるとちょっと面倒すぎる。 そもそもKubernetesでMySQLのデプロイが向いているのかは…

CalicoのIP範囲設定を変更する

環境 Kubernetes 1.24 Calico v3.21.6 PodのIP範囲変えるの面倒くさい説 PodのIP範囲とはいわゆる --cluster-cidr を指す。PodのIPが足りなくなってきたので急遽既存のクラスタの cluster-cidrを変更することにした。 変更自体はマスターノードの /etc/kuber…

DockerのPHPは結局どのphp.ini使えばいいんだ問題

環境 PHP 7.4 どのphp.ini使えばいいんだ問題 DockerのPHPでは/usr/local/etc/php/php.iniがルートのphp.iniになっている root@e2459ffbe39f:/var/www/html# php -i|grep php.ini Configuration File (php.ini) Path => /usr/local/etc/php が、肝心の/usr/l…

UbuntuからReadyNASのホームディレクトリをNFSマウントできない問題

環境 ReadyNAS 102 問題 自宅のNASではネットギアのReadyNASを使用している。特に不満はないんだが、気づいたらネットギア自体がコンシューマ向けNAS事業から撤退したので購入後しばらくしたら廃盤になってた( NETGEAR ReadyNAS 102 3年保証 2ベイ Diskless…

Kubernetesにnfs-subdir-external-provisionerをインストール

環境 Kubernetes 1.24 Kubernetesのデータ永続化にNFSを使ってみる。 github.com NFSサーバーの構築 Kubernetesクラスタ以外のサーバーにインストールすること sudo apt-get install -y nfs-kernel-server /etc/exports に以下追記 *は流石に不味いので 172.…

KubernetesのServiceリソースとは

環境 Kubernetes 1.24 KubernetesのServiceリソースとは 難しい。公式ドキュメントだと Podの集合で実行されているアプリケーションをネットワークサービスとして公開する抽象的な方法 としか書かれていない。自分としては「複数のPodに共通のIPアドレス提供…

KubernetesでCIDRNotAvailableエラーでうまく接続できない問題

問題 なんかMySQL構築して、サービスリソース作ってCulsterIP振ってもアクセスできない問題が発生した 設定何も間違ってないんだが???と思ってふとnodeのイベントログ見てると「CIDRNotAvailable」の文字が沢山。。。 ❯ kubectl get events LAST SEEN TYP…

Kubernetesクラスタを完全に初期化する方法

環境 Ubuntu 20.04 Kubernetes v1.24 Kubernetesの設定にミスった、istioがうまく動かなくなった。。。etc等で泣く泣く初期化するも、そもそも正常に初期化できておらず再インストール後もつまずくケースが多い。 実は 「kubeadm reset」だけだとうまく初期…

Kubernetes Dashboardをインストールする

環境 Kubernetes 1.24 先にmetrics-serverをインストールして kubectl top node コマンドが使えるようにしておく必要がある(Dashboardはただのビューアーなので やりたいこと 自分のクラスタ上でダッシュボードを見てニヤニヤしたい github.com インストー…

10回以上再インストールを余儀なくされた男のKubernetes構築手順Part2

前編 10回以上再インストールを余儀なくされた男のKubernetes構築手順 - 動かざることバグの如し nfs-subdir-external-provisionerkube thr3a.hatenablog.com metrics-server thr3a.hatenablog.com kubernetes-dashboard thr3a.hatenablog.com ArgoCD 一発で…

Kubernetesでmetrics-serverをインストールする方法

環境 Kubernetes 1.24 なぜ必要なのか kubernetes-dashboardをインストールするにあたってメトリクスを取る必要があるため kubectl top nodesコマンドが使えるようになりたい。 # kubectl top nodes error: Metrics API not available インストール方法 公式…

Dockerが勝手にiptablesを設定しないようにする

Dockerが勝手にiptablesを作成する apt install -y docker-ce でDockerをインストールすると自動的にiptablesが追加される。 通常 # iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target pro…

インテルNUC「NUC11ATK」を購入してUbuntuインストールまで

インテルのNUCを買った 最近ハマってる、おうちKubernetesのコントロールプレーン用物理サーバーがほしいなと思い、安いNUCを探していたところこんな記事を発見 akiba-pc.watch.impress.co.jp NUC11ATKは11世代のIntelCPUのベアボーンNUCで、簡単なスペック…

ArgoCDへのアクセスをIstio経由で出来るようにする

環境 Kubernetes 1.24 ArgoCDをistio経由でアクセスできるようにしたい LoadBalancerも悪くないけどIP1つ消費してしまうしせっかくならistioに統合させたかったのでメモ 手順 オレオレ証明書の準備 ArgoCDはhttps通信必須なのでSSL証明書が必要 今回はオレ…

istio動作確認まとめ

https://github.com/thr3a/kubernetes-manifests/blob/master/httpbin1/README.md

Kubernetesでコントロールプレーンとワーカーノードを分けたい

環境 Kubernetes 1.24 やりたいこと たくさんノードがある中でコントロールプレーンとワーカーノードを分けたい 昔はコントロールプレーンのことマスターって言ってたらしい コントロールプレーンにさせたい 結局の所ラベルで管理してるだけなのでkubecrlで…

Macbook M1構築メモ

mac

# 全ての拡張子のファイルを表示する defaults write NSGlobalDomain AppleShowAllExtensions -bool true # USB やネットワークストレージに .DS_Store ファイルを作成しない defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true…

WireGuardで「resolvconf: command not found」エラー

環境 Ubuntu 20.04 WireGuard 問題 WireGuardのクライアント側の設定をして再起動しようとしたらエラーになる /usr/bin/wg-quick: line 31: resolvconf: command not found resolvconf?????????あるが???? 解決策 resolvconf自体は最初からUbun…

FFmpegを依存ライブラリなしで1ファイルで実行する

FFmpegのインストール重い問題 自分でビルドする 色々ライブラリインストールしなきゃいけない 公式パッケージからビルド済みのバイナリをapt installする 依存ライブラリも一緒にインストールされてしまう もっとシンプルに1ファイルで実行できんのか 可能 …

CPUのスペックを一発比較できる「PassMark CPU Comparison」が強い

CPUのスペックを比較したい CPUが多すぎて同じインテルでもどっちがスペックいいのか型番だけでは判別がつかない。 二昔前は周波数、一昔前は発売された年月を見ればおおよその比較ができたが、最近だとブランドが乱立しててひと目では判断できない PCはなん…

ArgoCD構築メモ

環境 Kubernetes 1.24 ArgoCDで何ができるとかは他の記事に腐るほど書いてあるので、ここではArgoCDの構築メモ インストール 公式サイトを見ましょう argo-cd.readthedocs.io kubectl create namespace argocd kubectl apply -n argocd -f https://raw.githu…

UbuntuにnerdctlをインストールしてDockerコマンドっぽく使う

環境 Ubuntu 20.04 containerd v1.6.6 Dockerコマンドの代わりにnerdctlを使いたい 自宅サーバーにUbuntuを入れてKubernetesを構築しているのだが、現状Kubernetesとdocker-ceのパッケージの相性悪い。 いや、Kubernetesがすでにcontainerdに切り替えている…

オレオレ証明書をワンライナーで作成する

もっと爆速にオレオレ証明書を作成したい 過去に爆速でオレオレ証明書を作成する方法ってタイトルで記事を書いたことがある。 thr3a.hatenablog.com あれから月日が経ち、ワンライナーで作成できることを知った コマンド *.turai.workの証明書を10年分で作成…

MySQL公式のKubernetesパッケージ「mysql-operator」をインストール

環境 Kubernetes 1.24 mysql-operatorとは Kubernetes上でデータベースを動かすのは結構難しいらしく、独自のCRD実装したオペレーターでインストールすることが一般的っぽい。 そこでMySQL公式がMySQL Operatorを出しているのだが、2022年5月についにGAにな…

Kubernatesでstorageclass.storage.k8s.io "standard" not foundエラー

PersistentVolumeを作成したらエラーになる 公式チュートリアルでPersistentVolumeを使ったWordPressのデプロイをやっていたところ kubernetes.io いつまで経ってもPVCがPendingのまま。。。 kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STOR…

kubectxで楽にネームスペースを切り替えする

Kubernetesのnamespaceうつの面倒くさい問題 kubectl get pods -n hogehoge いちいち打ってられるかよ ってことでアプリで解決 kubectlのcontextとnamespace周りの操作をkubectxとkubensでちょっと楽する | DevelopersIOの記事見てたらkubectxとkubensってコ…

MetalLB v0.13以降はConfigmapでの設定ができない

環境 Ubuntu 20.04 Kubernetes v1.24 MetalLB v0.13.3 インストール kubeadmでKubernetesインストールしてLoadBalancer使いたいからMetalLBもインストールするぞい kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.13.3/config/mani…

10回以上再インストールを余儀なくされた男のKubernetes構築手順

環境 Ubuntu 20.04 Kubernetes v1.24 事前設定 cat > /etc/modules-load.d/containerd.conf <<EOF overlay br_netfilter EOF modprobe overlay modprobe br_netfilter cat <<EOF > /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward = 1 EOF sysctl -…</eof>

zshの「nyae」を完全に殺す

zsh

環境 zsh やりたいこと これウザいから機能止めたい ❯ ruby -v zsh: correct 'ruby' to '_ruby' [nyae]? n zsh: command not found: ruby やり方 なんかググっても最初に出てくる記事がてんで使い物にならないのでメモ .zshrcにて setopt nocorrect でおk