tech
前夜まとめたDockerコンテナでデプロイした素のGuacamoleは、SSH接続しても日本語の表示や入力が文字化けする。 zaki-hmkc.hatenablog.com 今回はこの対応。 といっても先に結論を書くと、guacdコンテナに日本語フォントを追加すればOK 日本語フォント入りイ…
ネットワークの制限でwebアクセス(HTTP/HTTPS)しか許可されておらず、SSHアクセスが使えないような環境でリモートのLinuxサーバーのシェルへアクセスしたい場合、Apache Guacamoleを使うことでwebブラウザの画面でSSHログインを行う。(webページ内にSSHアク…
Ansible Galaxyと疎通がないとか、ローカル内でGit管理されているプライベート開発なコレクションのように、任意のGitリポジトリにあるコレクションをインストールする際のrequirements.ymlの記述例は以下の通り。 --- collections: - name: https://github.…
AWXはamd64向けのイメージしか提供されてないので、Oracle CloudのAlways Free枠で使用できる4コア・RAM24GBのA1.FlexインスタンスのようなARMアーキテクチャの環境ではそのままでは利用できません。 イメージをARM環境でリビルドしてやれば動作するので、さ…
プログラミングだとreturnやexit(0)などで、以降の処理が不要な場合に、その時点で処理を終了させることができる。 Ansibleのplaybookでも似たようなことができ、metaモジュールを使用し、任意のタイミングで処理を終了させるタスクを作成できる。 docs.ansi…
検証環境へアクセスするために踏み台サーバ―を経由しないとアクセスできないとか、踏み台サーバーを3つ経由しないと本番環境へアクセスできないとか、そんな場合でもsshで1コマンドでアクセスするためのオプション指定について、man sshを眺めていたらたまた…
本記事はAnsible Advent Calendar 2021の14日目のエントリです。 珍しくインプットが湧いてきた1ため2日連続です笑 adventar.org 環境その他もろもろは、以前Ansible Builderについて試したこの記事のときのものと同じです。 解決したい課題 回避策 executio…
最近アウトプットできてなかったけど、これはAnsible Advent Calendar 2021の13日目のエントリです。 adventar.org 個人的にあまりなじみがないfetchモジュールについての備忘録です。 このモジュールはcopyモジュールの逆で、マネージドノード上のファイル…
Oracle Cloudで無料で使えるA1.FlexシェイプのVM(arm64アーキテクチャ)でNetBoxをDockerでデプロイしてみました。 NetBoxのコンテナイメージはamd64版しか公開されていないため、arm64アーキテクチャでコンテナ版をデプロイするには、自前でビルドする必要が…
気が付いたらCompose v2がリリース版になってました。 github.com これまでのようにdocker-composeコマンド単体でなく、Docker Pluginとして利用する形式になっています。 あとv1系のときはx86_64のバイナリしかなかったけど、arm64やs390xのバイナリも配布…
Oracle CloudのA1.Flexのように、aarch64/arm64のアーキテクチャへのDocker本体のインストールは以下のとおり公式の手順で(ディストリビューションが対応してれば)インストールできる。 zaki-hmkc.hatenablog.com ただし、Docker Composeについては公式で配…
少し前に比べると、最大で4CPUs・RAM24GBまで無料で使用できるA1.Flexのコンピュートインスタンス(VM)を作成しやすくなったのでお試し。 結論から言うとVMのイメージはUbuntuであれば問題なし。 Oracle Linuxの場合はデフォルトの7.9より8の方が手間は無い。…
Debian10では依存パッケージのバージョンが古くてインストールできなかったルートレスDocker、先々週リリースされたDebian11ではパッケージバージョンが新しくなって全て要件を満たしていたので試してみた。 docs.docker.com Deiban10だとうまくいかないパタ…
roleの雛形の作り方と、雛形のカスタマイズ。 今回は試さなかったけどcollectionにも使えるはず。。 role雛形の作成 role雛形のカスタム 雛形のスケルトンを作る スケルトンからroleの雛形を作成 role名の埋め込み role名変換とJinja2テンプレートの書式を同…
playbookのリポジトリとroleのリポジトリを分けた場合に、どうやって別リポジトリのroleをplaybookから実行するかについて。半年以上前に情報として聞いてはいたけれど試してなかったので実際に動かしてみた。 roleのリポジトリ playbookのリポジトリ roleの…
Ansible Automation Platform 2.0 Early Access Homepage - Red Hat Customer Portal 巷で流行っている次期Ansible TowerになるAnsible Automation Platform (2.0 Early Access)を手元の環境へインストールしてみる。開発者ライセンスがあればOKの模様。 acc…
トキメk…じゃなくてAnsible RunnerやAnsible Builderの話で、Ansibleとコンテナ環境の話題がとても盛り上がってるところに乗り遅れつつある*1ので、マイペースに動作確認してみた作業ログ。 コンテナの中身寄り情報あり。 環境 Ansible Builder インストー…
Ansible NightでLT登壇しましたので、その振り返りブログです。(1年ぶり2回目) ansible-users.connpass.com 振り返りといっても、LTでも触れましたが、以前記事にしたものを再構築してLT登壇だったので、詳細は過去記事参照…ということで、主に資料のリンク…
YAMLで複数行のテキストを記述しつつ、その先頭にインデントを設定するにはどうするか。 YAMLの複数行テキスト インデント設定 複数行表記で使用する記号の種類と効果 記号まとめ インデント量の指定 Ansibleの場合は YAMLの複数行テキスト --- data: sample…
任意のKubernetesクラスタでLoadBalancerタイプのServiceを使えるようにできるMetalLBが0.10.0からHelmを使ったインストールに対応してるようなので試してみた。 環境 MetalLBインストール with Helm リポジトリ追加 チャートとデフォルト値の確認 インスト…
Ansibleのダイナミックインベントリを使ったEC2アクセスについて、以前試したような試してないような記憶がおぼろげで、メモも無かったので簡単にまとめてみた。 docs.ansible.com 必要パッケージ クラウド上のEC2状態 アクセスキー設定 インベントリファイ…
元ネタはこちら。 zaki-hmkc.hatenablog.com zaki-hmkc.hatenablog.com 元ネタではDocker(dockerコマンド)単体で制限設定を行ってましたが、同じことをDocker Compose (v3)で指定する場合はどうするかについて。 docs.docker.com cpu / memory deploy/resour…
取り込むというか単にcurlで取得できるよ、という小ネタ。 少し前からUbuntuのOSインストール時にGitHubに登録してるSSH公開鍵を設定できるようになってたりしてますが、GitHubの公開鍵は特定のURLで簡単に参照できるので、OSインストール後でも任意のタイミ…
指定が任意なオプション扱いのパラメタで、指定するパラメタが無い場合は未指定にしたいけど、ループ処理などで決まった型の辞書型変数のリストでキーが有ったり無かったりする場合の処理について。 って書いてもうまく伝わらない気もするのでサンプルコード…
KubernetesドキュメントサイトではHugoというサイトジェネレータを使ったのですが、似たようなツールにMkDocsというものがあり、試してみた。 (そのうちGitHub Pagesに置きたい) www.mkdocs.org 大まかな流れとしては、Markdown形式でドキュメントを指定のパ…
コントロールノードでなくターゲットノードで(pipで追加パッケージが必要などの理由で)venvを使いたい場合の方法について。 といっても、venvの中にあるPythonインタプリタのパスをinterpreter_pythonなどで指定すればOK。 Python2/Python3の切り替えでイン…
結論 VPCでEC2インスタンス作成する定義の場合は、security_groupsでなくvpc_security_group_idsでセキュリティグループを指定しましょう。 該当ドキュメントはこちら 実装例は以下。 github.com 事象 お題は以下のコード zaki-hmkc.hatenablog.com コード r…
countを使うことで簡単に同じリソースを複数作成できる。 learn.hashicorp.com countを使った個数指定 countの指定 インデックス値参照 for_eachを使ったリスト指定 リスト定義 for_eachの指定 残課題 つかいわけ 元ネタは以下で作成した定義ファイル。 zaki…
ハードコーディングしていた変数を別ファイルに定義してみる。 元の定義ファイル variableで変数定義 変数のセット terraform.tfvarsで変数セット コマンドライン引数でセット 環境変数でセット 変数参照の優先順位 環境 サンプルコード 記事中のCIDRが172.2…
Terraformがv0.15にアップデートされたので、手元の環境も更新してみた。 以前お試しで作ったv0.12で動いていたソースでプロバイダ設定を新しい書式に更新すれば動作した。 zaki-hmkc.hatenablog.com qiita.com サンプルレベルだとおそらくv0.14 -> v0.15固…