-
1 # IT小明
-
2 # 網路圈
如果要把伺服器作業系統由Ubuntu改為CentOS、另外將WEB容器Apache改為Nginx,這就涉及了兩方面的工作,即:系統遷移、應用程式遷移,這兩方面涉及的工作各有重點,主要有以下:
1、伺服器作業系統更換
由於Ubuntu和CentOS都是Linux發行版本,兩者差異化並不大,所以這方面程式移植是沒問題的,我們要做的就是:
統計Ubuntu伺服器上哪些軟體包是必須安裝的,然後在CentOS上一樣安裝上,避免遷移後執行程式缺少依懶;
資料備份,如:網站程式、應用程式、資料庫備份、必要的日誌檔案等;
統計定時任務清單,要清楚哪些任務是要定時自動執行的;
確認開機啟動程式/服務有哪些;
統計伺服器上的使用者和群組,另外要清楚知道伺服器上目錄許可權的劃分;
2、WEB容器遷移
由於Apache和Nginx配置不同,所以遷移前要做好確認,主要注意事項是:
站點配置的方法不同;
URL Rewrite設定不同;
考慮到Nginx是專業的代理伺服器,所以我們建議遷移後依舊由Apache做為WEB容器,前面加上Nginx作為前端代理,這種模式更能適應高流量站點。
綜上,伺服器作業系統換成CentOS是非常正確的選擇,而WEB容器這塊建議是 Nginx+Apache這種模式。
-
3 # LetItGo40215641
你需要準備三樣東西,第一個是有領導簽字的執行單、第二是整合商和應用商的維保合同、第三是整合商和應用商的技術人員。
-
4 # 小椰子椰蓉椰葉耶
打包資料庫,12點停機,設定nginx 上傳web包
HA切換為備機主機修改配置,測試透過,切換vip
-
5 # 小王來一下
1、備份
2、測試環境測試
3、系統切換
4、應用及資料切換
可以直接選擇更換系統,或者使用容器技術
-
6 # 胖哥雜談之
感謝閱讀。
首先我分解下題主的問題,針對分解後的2個問題逐一進行詳細的回答,那麼拆解後的2個問題分別是:
作業系統的遷移:從Ubuntu遷移到CentOS;Web容器的遷移:Apache遷移到Nginx;
作業系統遷移第一點作業系統從Ubuntu遷移到CentOS,這一點可以很順利的遷移,因為Ubuntu和CentOS都是基於Linux的發行版本,底層系統原理大同小異,可以無縫遷移,但還是需要注意遷移的專案用到的作業系統功能,比如如果用了系統的防火牆功能、iptable使用者黑白名單和訪問攔截功能、crontab功能、安裝外掛、軟體源倉庫等等,這些配置項需要格外注意,因為系統間的差異是存在的,需要根據系統來適配最好的配置,但我強烈推薦使用CentOS做完伺服器,下面是二者的詳細不同點:
伺服器遷移相對於第一點的伺服器遷移,Apache遷移到Nginx就是個大工程了,因為二者的技術架構完全不同,配置規則也大不相同,所以在遷移過程中一定要仔細地把Apache的配置都用Nginx的方式重新配置一邊,而且一定要經過全面的測試,針對每個url,每個介面都要測試到才能正式替換。其實Apache和Nginx不存在誰替換誰的問題,他們各有所長,而且一般專案中都是前端nginx 抗併發,後端 apache 叢集抗壓,這樣混合著用更能提供整個服務的健壯性和可靠性。
Apache擁有豐富的模組元件支援,穩定性強,BUG少,動態內容處理強。
Nginx輕量級,佔用資源少,負載均衡,高併發處理強,靜態內容處理高效。
-
7 # 全棧碼農
不外乎就是備份資料庫,備份程式程式碼,然後從伺服器下載到本地來,重灌環境centos,在還原回去資料庫和程式,Apache或nginx都差不多程式花不了多少時間,比如php環境,要知道你的程式在哪個版本下才可以
-
8 # 懸鐘Mr
最簡單的辦法就是直接上nginx反向代理:
好處:
1、為以後網站叢集擴容做了一個好的鋪墊;
2、對源站apache做了一個隱藏,安全同時也提高了。
3、nginx反向代理對多網站(虛擬機器主機)的支援極佳。
步驟如下:
先把apache、資料庫相關資料備份,然後更換作業系統,centos最好使用7版本的,考慮以後程式依賴核心的問題,然後把apache相關資料還原回去。
另外,我的建議是,在apache前段加一個nginx即可,直接使用反向代理,如果你apache使用php等動態網站,沒必須花大量的時候去折騰更換網站架構。
nginx也要使用最新版的,避免老版本的漏洞問題
使用nginx反向代理的好處就是,以後網站叢集擴容,增加新的網站、二級域名是很方便的,而且不需要做很大的改動。
架構圖如下:
https://www.toutiao.com/c/user/5844231468/#mid=1634198915259405
-
9 # 添添Vlog
如果您準備把伺服器的作業系統從Ubuntu改成CentOS,伺服器程式由Apache改nginx,你需要做以下的準備:
首先我們來看看Ubuntu和Centos的區別其實,Ubuntu和Centos都是Linux,只是它們倆的發行版本不一樣,如下圖:
我個人建議生產環境用Centos是比較好,Centos安全穩定效能好,大型網際網路公司都使用;Ubuntu拓展包太多,顯得有點臃腫,經常性的升級導致效能不穩定,容易出bug
備份原Ubuntu伺服器資料1、備份資料庫資料,先把Ubuntu系統的資料庫資料匯出到本地或者其他伺服器
2、備份redis等nosql資料
3、備份好原伺服器程式檔案、host主機配置檔案等
4、備份記錄好拓展包以及一些必要外掛,以及開機定時任務、指令碼等
如果要想平滑改伺服器系統,不影響現有業務的情況下,需要新增臨時伺服器
改成Centos伺服器後,需要做1、安裝nginx,配置好檔案和程式檔案路徑、域名等
2、配置好防火牆規則
3、安裝業務程式必須用到的外掛、拓展包以及開啟對應的埠號
4、匯入原資料庫資料,保證資料沒丟失、損壞
5、測試新伺服器整體執行狀況,包括業務是否可以正常執行,伺服器CPU、記憶體等是否在正常範圍內
6、重新加入定時任務、指令碼,並進行測試
7、檢查伺服器網路是否暢通,是否會有阻塞,請求超時的現象
我的回答就寫到這裡,感謝閱讀!
-
10 # 滴水恆心
1、就目前來說,ubuntu 和 centos 作業系統都比較穩定,我公司也有很多產品跑在 ubuntu 上,也沒見出現過什麼問題。所以選擇 ubuntu 還是 centos 完全是看個人的想法,熟悉哪個就用那個便是。ubuntu 使用 apt-get 管理包,對非專業的系統管理員更加友好些,因為它可以在使用未安裝的命令時給出安裝提示;centos 使用 yum 或 rpm 管理包,是開源主流的伺服器選擇物件。
2、涉及遷移問題,思想很簡單,先備份資料和應用程式。作為運維人員,最穩妥的做法預先先做好安全備份,不然誤操作的話,就要準備好跑路了,哈哈。
3、在 centos 上安裝相同版本的所需軟體,比如 PHP、MySQL等,如果確認版本不會影響應用程式的執行,可以安裝最新版本即可。Nginx 是一個開源輕量大併發的代理中介軟體,處理靜態資源的效率很高,反向代理;Apache 在處理動態請求上比 nginx 有優勢,rewrite 強大,模組多。
4、方案:1). 直接使用 Nginx ----> PHP,配置好 location即可;2). Nginx + Apache ----> PHP,nginx proxy apache,讓 apache 去處理 PHP。但只要資源給夠,使用方案1就已經足夠。
5、安裝好需要先調式,調式通過後,恢復資料,測試驗收,最後開放上線。
-
11 # 肉肉的奶爸
1.將業務系統遷移到docker
2.Ubuntu系統更換centos
3.centos部署docker即可
-
12 # 咋鬧運維組
懷疑這種問題是來騙取關注的,能提出這種問題感覺就是對這塊兒知識點不太知道,直接讓別人操作即好,這種情況問了也很難做出來
-
13 # 積年程式開發老妖精
從你的問題上,老妖感覺你是個小白吧。你擔憂什麼,又有什麼可擔憂的呢?對生產環境做好備份。然後就在新環境中弄唄,測試穩定了就切換,centos又如何!nginx又能怎麼樣?多做幾次就熟練了。
回覆列表
首先,伺服器以前的作業系統需要備份,資料的備份,apache的備份,防止以後的查詢。
其次,就是準備新系統的映象,也就是centos的映象,Nginx的安裝包,還有資料庫等一系列資源。
再次,確定你會安裝這些軟體和配置,伺服器系統不要輕易的更改,後期遇見的問題,不是你可以想象的,各種問題。
總之,樓主想更換系統,希望你的運氣很好,不會出現任何問題。