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 介紹
Search
williamwu
April 18, 2014
Technology
0
260
Ansible 介紹
如何使用 Ansible 管理大量機器
williamwu
April 18, 2014
Tweet
Share
Other Decks in Technology
See All in Technology
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
480
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
160
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
250
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
2
200
CDK CLIで使ってたあの機能、CDK Toolkit Libraryではどうやるの?
smt7174
4
190
「Linux」という言葉が指すもの
sat
PRO
4
140
LLM時代のパフォーマンスチューニング:MongoDB運用で試したコンテキスト活用の工夫
ishikawa_pro
0
170
20250905_MeetUp_Ito-san_s_presentation.pdf
magicpod
1
100
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
1
960
メルカリIBISの紹介
0gm
0
330
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
120
はじめてのOSS開発からみえたGo言語の強み
shibukazu
3
990
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Statistics for Hackers
jakevdp
799
220k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
How GitHub (no longer) Works
holman
315
140k
Being A Developer After 40
akosma
90
590k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
It's Worth the Effort
3n
187
28k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Practical Orchestrator
shlominoach
190
11k
What's in a price? How to price your products and services
michaelherold
246
12k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Transcript
Ansible 簡介 吳佳寰 <
[email protected]
>
⾃自我揭露 • ⾃自由軟體愛好者 • 對於技術某些時候有點偏執 • 不認同請忽略,我講的也不⼀一定是對的
阿宅的⼀一天 • 修電腦 • 維護作業系統(安裝、升級) • 維護網站(安裝、升級) • 維護網路 •
資訊教學(推展、課程) • 設備採購
本次討論範圍 • 修電腦 • 維護作業系統(安裝、升級) • 維護網站(安裝、升級) • 維護網路 •
資訊教學(推展、課程) • 設備採購
分析⽇日常⼯工作 • 維護系統 • 安裝(耗時、⾮非急迫、重要) • 升級(耗時、急迫、重要) • 備份(不耗時、⾮非急迫、重要) •
還原(不耗時、急迫、重要)
分析⽇日常⼯工作 • 維護網站 • 安裝(耗時、⾮非急迫、重要) • 升級(耗時、急迫、重要、複雜) • 備份(不耗時、⾮非急迫、重要) •
還原(不耗時、急迫、重要)
如何減輕⼯工作負擔 1. ⾃自動化 2. ⾃自動化 3. ⾃自動化 4. ⾃自動化 5.
⾃自動化 6. ⾃自動化
Ansible是... • Configuration Management Software • 組態管理軟體 • 這可以吃嗎?
先不要管Ansible了,你 聽過安麗shell scripts嗎
⼈人⼯工安裝版 <安裝apache2> 1. ssh <yourname>@<remote_host> 2. sudo aptitude update &&
sudo aptitude install apache2 -y 3. <wait and see> 4. exit
半⾃自動安裝版 <安裝apache2> 1. <寫好script> 2. scp your_scripts.sh <your_name>@<remote_host> 3. ssh
<your_name>@<remote_host> 4. sudo ./your_script.sh 5. <wait and see> 6. exit
your_script.sh sudo aptitude update if [ ! $? -eq 0
]; then echo "Update error" exit 1 fi sudo aptitude install apache2 -y if [ ! $? -eq 0 ]; then echo "Install Apache2 error" exit 2 fi echo "Install completed."
Ansible版<安裝apache2> install_apache2.yml --- - hosts: all sudo: yes tasks: -
name: install apache2 apt: pkg=apache2 update_cache=yes
Ansible版 執⾏行安裝任務 • ansible-playbook install_apache2.yml • 結束
Live Demo <更新所有系統⾄至最新版>
安裝Ansible The Hard Way • aptitude update • aptitude install
python-dev python-virtualenv python-pip -y • virtualenv myvenv • source myvenv/bin/activate • pip install ansible
定義 /etc/ansible/hosts localhost ansible_connection=local [webservers] 192.168.1.1 192.168.1.2 [dnsservers] 192.168.1.3 192.168.1.4
使⽤用 ansible執⾏行簡單指令 ansible all —ask-pass —sudo -m shell -a “aptitude
update” ansible webservers —ask-pass —sudo -m shell -a “aptitude install apache2 -y” ansible dnsservers —sudo -m shell -a “reboot”
學會ansible命令 就可以上⼯工了 等你習慣了再來玩 playbook
Ansible Playbook 撰寫 yaml 檔案組織任務
playbook 範例 —- - hosts: all tasks: - name: run
my own script script: runmyscript.sh - name: reboot the system shell: reboot
更多進階討論請加⼊入 irc.freenode.net #osatfe
FAQ • Q: 所以學會了Ansible,就可以不⽤用懂shell script 是嗎? • Q: 所以學了Ansible,我就可以不⽤用懂套件管理 嗎?
• Q: 所以Ansible到底是要解決什麼問題?
Any questions?