Awesome
k8s-hands-on
ディレクトリ構造
- manifests: 各種アプリケーションのマニフェスト
- todo: サンプルのTODOアプリ
事前準備
このハンズオンはLinux, WSL2(Ubuntu), macOS(Intel Chip)で動作します。 事前に下記のソフトウェアをインストールしておいてください。
- Goのインストール
- Dockerのインストール
- make, curl, unzipなどのコマンドのインストール
- macOSの場合は、Command Line Tools for Xcodeのインストールが必要です。
- aquaのインストール
利用方法
ツールのセットアップ
このハンズオンで利用しているCLIツールはaqauで管理しています。 以下のコマンドでCLIツールのセットアップをおこなってください。
aqua policy allow aqua-policy.yaml
aqua i -l
Kubernetesクラスタの立ち上げ
kindでKubernetesクラスタを起動します。
make launch-k8s
アプリケーションのデプロイ
Argo CDをデプロイします。
make deploy-argocd
ApplicationがすべてSyncedになるまで待ちます。
make sync-applications
数分待つとアプリケーションのデプロイが完了します。
メトリクスを見る方法
メトリクスを閲覧するために以下の4つのツールが利用できます。
Grafana
ブラウザを開いて http://localhost:33000 にアクセスしてください。
下記のコマンドでパスワードを確認し、Grafanaの左下のメニューからSign Inをクリックし、Username: admin でログインします。
make grafana-password
PromLens
ブラウザを開いて http://localhost:9090 にアクセスしてください。
promql-cli
以下のようにコマンドを実行すると、CLIから任意のクエリを実行することができます。
promql 'sum(up) by (job)'
Prometheus Web UI
ブラウザを開いて http://localhost:38080 にアクセスしてください。
Argo CDの利用
Argo CDのWeb UIの利用
ブラウザを開いて http://localhost:30080 にアクセスしてください。
下記のコマンドでパスワードを確認し、Username: admin でログインします。
make argocd-password
argocd cliの使い方
コマンドラインでArgo CDにデプロイします。
make login-argocd
ログインに成功すると、argocd app list
などのコマンドが実行できるようになります。
Lokiの利用
Grafanaでログを見る
ブラウザを開いて http://localhost:33000 にアクセスしてください。
下記のコマンドでパスワードを確認し、Grafanaの左下のメニューからSign Inをクリックし、Username: admin でログインします。
make grafana-password
Explore画面を開き、データソースとしてLoki
を選択してください。
logcliの使い方
以下のようにコマンドを実行すると、CLIからログを確認することができます。
logcli query '{namespace="argocd"}'
Kubernetesクラスタの終了
ハンズオンを終えたいときや環境を最初から作り直したいときはKubernetesクラスタを削除できます。
make shutdown-k8s