Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ansible_kumamoto_PyCon9ku
Search
koedoyoshida
January 22, 2022
Programming
1
200
ansible_kumamoto_PyCon9ku
インフラエンジニアの急激なansibleバージョンアップ対応/熊本温泉案内
koedoyoshida
January 22, 2022
Tweet
Share
More Decks by koedoyoshida
See All by koedoyoshida
CentOS 7サポート終了直前!次はどうする?
koedoyoshida
1
220
止まらないLinuxシステムを構築する_高信頼性クラスタ入門
koedoyoshida
3
2.7k
CentOS7サポート終了まで約半年 EoL後のOSを使い続けるとどうなる?
koedoyoshida
0
280
SSHで快適リモートワーク
koedoyoshida
0
210
SBOMってなんだ?~最近話題のSBOMを簡単に解説~
koedoyoshida
2
480
AlmaLinuxのパッケージはどこから来たんだろう
koedoyoshida
0
330
Home sshd DDOS measures
koedoyoshida
0
99
MIRACLE LINUXにSlackライクなチャットツール「Rocket.Chat」を構築してみた!
koedoyoshida
0
280
MIRACLE LINUXをコンテナで活用!
koedoyoshida
0
250
Other Decks in Programming
See All in Programming
[Kotlin Fest 2024] もっとKotlinを好きになる!K2時代のKotlin Compiler Plugin開発
kitakkun
2
2.4k
5分でわかるExplicitly Built Modules
giginet
PRO
0
170
Cloudless Computingの論文紹介
yuukit
1
250
K2のKotlin IDEプラグインの中を覗いてみよう♪
yanex
0
1.9k
凝集性から考えるLaravelのmiddleware、routingに書くか? Policyに書くか?
newnomad
1
170
開発トップのマネジメント: 採用からオンボーディングで始まる一貫した生産性向上戦略
haruki_maejima
PRO
1
140
Kotlin/Androidでテスト駆動開発をはじめよう
hiroaki404
1
250
Secure Development with PHP
dbrumann
2
180
JJUG CCC 2024 Spring自動アップグレードを夢見て、Amazon Q Developer使ってみた
toricky6
2
190
我々はなぜテストを書くのか / Why we write test codes
takaking22
6
700
エンジニアが開発生産性を上げるためにやる最初の一歩
ktchiroyah
0
130
デプロイ・QA・Four keys を自動化×見える化する freee の統合デリバリー基盤
akito0922
1
380
Featured
See All Featured
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.7k
Fashionably flexible responsive web design (full day workshop)
malarkey
399
65k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
119
18k
The Power of CSS Pseudo Elements
geoffreycrofte
63
5.1k
Bash Introduction
62gerente
606
210k
Docker and Python
trallard
36
2.8k
Why Our Code Smells
bkeepers
PRO
331
56k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
275
13k
For a Future-Friendly Web
brad_frost
173
9.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
42
4.7k
Gamification - CAS2011
davidbonilla
77
4.8k
The Language of Interfaces
destraynor
151
23k
Transcript
インフラエンジニアの急 激なansibleバージョン アップ対応/熊本温泉案内 Twitter:koedoyosihda #PyCon9ku
None
お前誰よ サイバートラスト株式会社 MIRACLE LINUX サポート/OSS委員長等 Python Software Foundation Managing members
2021- 一般社団法人PyCon JP Association 理事 PyCon JP 2021 会計 PyCon JP 2014(APAC)-2021 Staff PyCon JP 2017-2019 Chair Open Source Summit Japan (OSSJ,旧Linux Con)Staff 2008-
仕事と趣味 サイバートラスト株式会社 所属、MIRACLE LINUX の製品サポート などを行っている。 小江戸らぐ、東京エリアDebian勉強会 などの OSSコミュニティ活動にも参加している。 趣味は温泉巡り、OSCやカンファレンスに参加した際にもよく現地の
温泉に行く、2018年は蒲田黒湯、箱根温泉、埼玉宮沢湖温泉、長野 大柴温泉、名古屋三蔵温泉、大阪住之江温泉、石川湯涌温泉、松山道 後温泉、台湾北投温泉、シンガポール湯の森温泉などに訪問した。 twitter @koedoyoshida
温泉のおすすめ 熊本県は温泉が豊富です。 おすすめ,天草:湯楽亭 blog要チェック
平山温泉、山鹿温泉
ふもと旅館(日本秘湯を守る会)など黒川温泉
黒川温泉湯めぐり • 良い温泉が沢山ある高級温泉地 • 24軒以上の温泉宿、すべてめぐると • 湯めぐり達人認定(2013/11)
閑話休題
Pythonとの関わり python自体はzope(zwiki)で社内サイトを作ったあたりからの使用者 仕事はインフラエンジニア的な関わりがメイン ansibleでのインフラ構築や自動テストでymlを書く等 PyCon JP(2015あたり)でansibleを知って使い始めた
ansibleのバージョンアップが激しい 少し前までのansibleのバージョン 2.x 最新は?
ansibleのバージョンアップが激しい 少し前までのansibleのバージョン 2.x 最新はansible 5.2 https://pypi.org/project/ansible/#history どんどん以前の書き方がobsoleteになっていく 5.2.0 Jan 13,
2022 5.0.1 Dec 3, 2021 4.10.0 Dec 15, 2021 4.0.0 May 19, 2021 3.4.0 May 12, 2021 2.10.7 Feb 10, 2021 2.0.0 Sep 4, 2015
環境ごとに微妙に異なる実行環境 環境ごとに微妙に使用しているモジュールが違う ANSIBLE GALAXYなどから導入されるモジュール keywordの更新(obsoleteになるものと新規定義されるもの) 新旧どちらでも動くようにymlを管理するのは大変面倒 pip install ansible==2.10.7
以前に書いたansibleのymlを利用するには ansibleの実行環境を維持(再構築)しよう ansibleはpythonで作成され、pipでインストールできる つまり、pythonのバージョンとansibleのバージョンが同じなら その実行環境で以前に書いたansibleのymlが再利用できる OS標準のPythonやpipを使うとその環境の再現にはOS再インストー ルから必要になってしまう... おすすめはOS独立で環境を固定、再構築しやすくする->venv
OS独立で環境を固定、再構築しやすくする pythonのバージョンの固定 欲しいバージョン(ansible等の要件)の公式インストーラ pythonをダウンロード&ローカルでビルド 例:pypi.org/project/ansible/2.10.7/ $ sudo make altinstall ansibleのバージョンの固定
ビルドしたpythonで作ったvenv(サブディレクトリ)内にインストール $ python3.9 -m venv envpython3.9-ansible2.10.7 $ . envpython3.9-ansible2.10.7/bin/activate $ pip install ansible==2.10.7 pypiをみれば必要な情報が分かる envの名前で主要バージョンが分かるようにすると便利
OSとPythonの微妙な関係 OSパッケージのPythonを使わない理由 pythonに限った話ではなく、言語系パッケージに共通する話 • OSパッケージのPythonやpipを使うとその環境の再現にはOS再イ ンストールから必要になってしまう... • 他の(開発環境以外の)実行環境に持っていけなくなる • OSパッケージのpython等はOSに含まれるpython製のアプリケー
ションパッケージを動かすための環境。自作アプリ用ではない(私 見) • パッケージ提供の言語やpipバージョンが古いなど気に入らないと ころがあってそれを修正すると... • OS提供のパッケージの動作に問題がでる • システム設定系のモジュールがPythonで書かれていたりする...
OS付属のpython MIRACLE LINUX8/CentOS8/RockeyLinux8/AlmaLinux8/Red Hat Enterprise Linux 8 などインストール直後のデフォルト状態では "python" コマンドが存在しません。
• platform-python: OSに同梱の各種システムツールが利用するた めのPython。実行ファイルは /usr/libexec/platform-python に インストールされ、ユーザのプログラムで利用することは推奨され ない。 • python3: 8世代の標準的なPythonは3.x、xは随時変更されます。 • dnf --showduplicates list | grep python3 • python2:EOLだが、現状インストールは可能 • dnf --showduplicates list python2