GSS 技術部落格
在這個園地裡我們將從技術、專案管理、客戶對談面和大家分享我們多年的經驗,希望大家不管是喜歡或是有意見,都可以回饋給我們,讓我們有機會和大家對話並一起成長!
若有任何問題請來信:gss_crm@gss.com.tw
字體大小: +
4 分鐘閱讀時間 (737 個字)

Ansible # 3 - 安裝篇[Linux - Ubuntu]

shutterstock_198004562

 

  • 在上一篇我們在 CentOS 上安裝了 Ansible,這一篇的重點主要會是放在 Debian 系列的 Ubuntu
    • 只是單單比較差異有點太過敷衍,所以此篇一樣會從頭到尾操作一次,大家就耐心看吧
    • 此外,如果要在 Jenkins 的 Docker container 內安裝的話,它預設的作業系統是 LinuxKit,但似乎也是 Debian based 可參考此連結
  • 首先,我們假設各位已經先裝好 Ubuntu,這部份就不帶大家操作了,看要用前一篇提到的哪種方式都可以
    • 進到 Ubuntu 的畫面之後要做什麼呢?
      • 以我的 VMWare 開的 Ubuntu 20 來說,左下角會有一個 3x3 的圖示,點了之後可以在文字方塊中輸入 terminal,並開啟它,如下圖:
      • 進入 Terminal 的畫面大概如下:
      • 到這邊各位可以看要繼續用 Ubuntu 的 Terminal,還是透過自己本機的 shell ssh 連線至這台機器,我個人的習慣是 ssh 進來,所以我必須先知道它的 IP 如下:
    • 以我的 Ubuntu 20 的狀況,我在 ssh 的時候遇到了問題
      • 問題是在嘗試 ssh 連線時發生 connection refused
      • 仔細看了一下,推測是沒安裝 openssh-server,只要下以下指令就可以了
          sudo apt-get install openssh-server
      • 連線成功的畫面如下:
    • 既然連上了就開始安裝 ansible 吧
      • 首先要先裝 python,指令如下:
          sudo apt-get update && sudo apt-get -y install python3 python3-pip python3-dev
      • 實際下指令的畫面如下,會去下載一堆相關的套件
      • 接著就要透過 python3-pip 安裝 ansible 了
          pip3 install ansible
      • 如上圖,看起來是安裝成功了,那我們先看看它的版本資訊測看看是不是真的可以運作吧,指令如下:
          ansible --version
      • 見鬼了,我們不是才安裝完成了嗎?為什麼畫面上的指示告訴我們說找不到 ansible 這個指令?
        • 仔細 google 了一下,發現官方有人提問如連結
        • 看來是因為預設的安裝路徑是在 ~/.local 底下,而我們的 $PATH 不包含此路徑
        • 原本打算要設定路徑讓 $PATH 包含的,但發現 ~/.profile 底下已經有設定了,所以我們只要重新 ssh 登入就好了,成功確認 ansible 版本如下圖:
    • 安裝完 ansible,就要設定 hosts 了
      • hosts 的主要目的是定義一些群組及該群組所需的變數…等,指令如下:
          sudo mkdir -p /etc/ansible
          sudo vi /etc/ansible/hosts
      • 如上圖,可以看到我們設定了 4個群組,那接著我們來透過建立 ssh key,好讓 ansible 可以透過 key 直接登入,畫面如下:
      • key 建好了就來透過 ansible 的 ping module 試看看吧!
        • 看來是都通了,不過一樣 windows 的部份因為比較特殊,所以以後再提
  • 以上就是 Ubuntu 安裝 ansible 的方法,跟 CentOS 有一些小差異
    • 用的 package manager 不同
    • ansible 被安裝到的路徑也不同
    • Ubuntu 我是用自己的 user 操作的,所以要 sudo 才能操作喔,不像 CentOS 是直接用 root,這點很重要
  • 下一篇將說明 MAC 上如何安裝 ansible,敬請期待
×
Stay Informed

When you subscribe to the blog, we will send you an e-mail when there are new updates on the site so you wouldn't miss them.

本來測試跑得好好的,中文變亂碼了,怎麼辦
ASP.NET Core Model Binding 死活綁不上 - 1

相關文章

 

評論 2

Guest - 從零開始的Ansible粗學者 於 2023年7月27日 14:52, 星期四

想請教最後一步驟卡關連線window的部分該如何解決?
目前卡在這了@@

想請教最後一步驟卡關連線window的部分該如何解決? 目前卡在這了@@
David Chou (周彥江) 於 2024年6月03日 16:38, 星期一

可以確認一下往 Windows 的網路是否通暢、Windows 上的 SSH Service 是否安裝並正常服務中,帳號對應與授權是否正確且足夠,以及 Windows 本機的防火牆有沒有開放 Inbound TCP port 22。

可以確認一下往 Windows 的網路是否通暢、Windows 上的 SSH Service 是否安裝並正常服務中,帳號對應與授權是否正確且足夠,以及 Windows 本機的防火牆有沒有開放 Inbound TCP port 22。
已經注冊了? 這裡登入
2026年1月01日, 星期四

Captcha 圖像