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
260
0
Share
Ansible 介紹
如何使用 Ansible 管理大量機器
williamwu
April 18, 2014
Other Decks in Technology
See All in Technology
FlutterでPiP再生を実装した話
s9a17
0
240
Kubernetesの「隠れメモリ消費」によるNode共倒れと、Request適正化という処方箋
g0xu
0
170
不確実性と戦いながら見積もりを作成するプロセス/mitsumori-process
hirodragon112
1
170
自分をひらくと次のチャレンジの敷居が下がる
sudoakiy
5
1.6k
CREがSLOを握ると 何が変わるのか
nekomaho
0
360
マルチモーダル非構造データとの闘い
shibuiwilliam
1
130
ThetaOS - A Mythical Machine comes Alive
aslander
0
230
PostgreSQL 18のNOT ENFORCEDな制約とDEFERRABLEの関係
yahonda
1
190
Amazon Qはアマコネで頑張っています〜 Amazon Q in Connectについて〜
yama3133
1
170
Move Fast and Break Things: 10 in 20
ramimac
0
110
スケーリングを封じられたEC2を救いたい
senseofunity129
0
130
OpenClawでPM業務を自動化
knishioka
2
360
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
280
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.5k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
170
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
780
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Producing Creativity
orderedlist
PRO
348
40k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
From π to Pie charts
rasagy
0
160
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
94
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
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?