一、OpenStack (開源云計算管理平臺)的核心服務組件及功能
計算服務(Compute - Nova)
- 功能:是 OpenStack 計算資源管理的核心組件,負責虛擬機實例全生命周期管理,像實例的創建、啟動、暫停、遷移、銷毀等操作。作為計算資源單位,它屏蔽 Hypervisor(虛擬機監控程序 )差異,讓上層無需關注底層虛擬化技術實現,默認用 KVM(基于內核的虛擬機),也支持其他虛擬化技術。還能橫向擴展,通過增加計算節點,輕松提升整體計算能力,應對業務增長。
- 應用場景:為各類業務系統提供虛擬機實例,比如企業搭建測試環境、部署 Web 應用服務器等,按需快速創建不同配置的虛擬機。
網絡服務(Network - Neutron)
- 功能:承擔虛擬網絡管理職責,為虛擬機實例構建網絡拓撲,實現租戶(比如不同企業用戶、企業內不同部門 )專屬網絡。租戶可自定義網絡結構(如子網、路由器、安全組等 ),且各租戶網絡隔離,互不干擾,保障網絡環境安全與靈活。
- 應用場景:企業多部門共用 OpenStack 云平臺時,各部門按需求搭建獨立網絡,開發部門測試環境網絡、財務部門業務系統網絡,既共享資源又保障數據安全。
身份認證服務(Identity - Keystone)
- 功能:類似 LDAP(輕量級目錄訪問協議 )服務,是 OpenStack 的 “門禁系統”。對用戶、租戶、角色、服務進行認證和授權,驗證用戶身份合法性,依據用戶角色(如管理員、普通用戶 )賦予不同操作權限,支持多種認證機制(如密碼認證、令牌認證等 ),保障平臺資源安全訪問。
- 應用場景:企業員工訪問云平臺資源,管理員可創建、刪除用戶,分配角色,控制普通員工只能訪問自己業務相關虛擬機、存儲等資源,管理員能進行系統配置、資源分配等操作。
控制面板服務(Dashboard - Horizon)
- 功能:提供 Web 圖形化管理界面,是用戶與 OpenStack 底層服務交互的 “窗口”。用戶無需通過命令行,就能直觀操作、管理 OpenStack 資源,像創建虛擬機、配置網絡、查看資源使用情況等,降低使用門檻,提升運維效率。
- 應用場景:企業運維人員日常管理云平臺,通過瀏覽器登錄 Horizon,快速查看各服務狀態、資源占用,進行簡單的資源調度和配置調整。
鏡像服務(Image Service - Glance)
- 功能:管理虛擬機鏡像模板,把制作好的操作系統(含預裝軟件等 )制作為鏡像,創建虛擬機時直接調用。支持多種鏡像格式(如 QCOW2、RAW 等 ),方便用戶根據需求選擇,加速虛擬機部署,統一鏡像管理也利于版本控制和維護。
- 應用場景:企業標準化部署業務系統,把裝好操作系統、中間件、業務程序的環境做成鏡像,新業務需求時,基于鏡像快速創建一致環境的虛擬機,減少重復部署工作。
塊存儲服務(Block Storage - Cinder)
- 功能:為運行中的虛擬機實例提供持久塊存儲,像給虛擬機掛載硬盤。可靈活擴展存儲容量,按需付費,支持多種后端存儲(如本地存儲、SAN、NAS 等 ),滿足不同性能、容量需求,保障數據持久化存儲,虛擬機重啟、遷移等不丟失塊存儲數據。
- 應用場景:數據庫業務部署在虛擬機上,需可靠持久存儲保存數據,用 Cinder 為數據庫虛擬機掛載塊存儲,保障數據安全,且隨業務增長,靈活擴容存儲。
對象存儲服務(Object Storage - Swift)
- 功能:為 OpenStack 提供基于云的彈性存儲,適合存儲非結構化數據(如圖片、視頻、文檔等 )。采用分布式架構,支持集群無單點故障,數據冗余存儲,保障高可用性和數據安全,能根據需求自動擴展存儲容量,應對海量數據存儲場景。
- 應用場景:互聯網企業存儲用戶上傳的圖片、視頻等資源,利用 Swift 彈性、高可用特性,保障用戶訪問,且數據量大時自動擴容,無需人工干預。
計量服務(Telemetry - Ceilometer)
- 功能:作為數據資源計量、監控和控制的集中來源,收集 OpenStack 各服務資源使用數據(如虛擬機 CPU 使用率、存儲使用量等 ),為用戶提供記賬依據,也輔助進行資源監控、優化,比如根據資源使用情況調整資源分配、發現異常資源占用等。
- 應用場景:云服務提供商按資源使用量計費,Ceilometer 收集用戶資源使用數據,生成賬單;企業內部云平臺,運維人員通過其監控資源,優化資源配置,降低成本。
二、創建云機
1、登錄
修改密碼:
2、創建網絡
2.1、用admin身份創建public網絡( 刪除路由、刪除網絡)
2.2、創建private網絡
2.3、創建路由
2.4、用demo身份為路由器添加私有接口
3、創建鏡像
4、創建實例
詳情
源
實例類型
網絡
安全組
配置
#!/bin/bash# 給 root 用戶設置密碼,通過 Here Document(EOF 作為輸入結束標記)的方式,
# 兩次輸入 aptech 分別作為新密碼和確認密碼
passwd root<<EOF
aptech
aptech
EOF# 給 centos 用戶設置密碼,同樣用 Here Document 方式,兩次輸入 aptech
passwd centos<<EOF
aptech
aptech
EOF# 使用 sed 命令修改 SSH 服務配置文件 /etc/ssh/sshd_config ,
# 將包含 "#PermitRootLogin yes" 的行(去掉注釋并確保值為 yes ),
# 這里實際替換邏輯有點冗余,原行如果是 #PermitRootLogin yes ,替換后還是 PermitRootLogin yes ,
# 目的一般是確保開啟 root 用戶通過 SSH 登錄的功能(去掉可能存在的注釋并設為允許)
sed -i 's/#PermitRootLogin yes/PermitRootLogin yes/g' /etc/ssh/sshd_config# 使用 sed 命令修改 /etc/ssh/sshd_config ,
# 將 "PasswordAuthentication no" 替換為 "PasswordAuthentication yes" ,
# 開啟 SSH 基于密碼的認證方式,這樣客戶端可以用密碼登錄服務器
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config# 向 /etc/ssh/sshd_config 文件末尾追加 "UseDNS no" 配置,
# 關閉 SSH 登錄時的 DNS 反向解析,可加快 SSH 登錄驗證速度
echo "UseDNS no" >> /etc/ssh/sshd_config##重啟服務##
systemctl restart sshd
5、綁定浮動IP(做DNAT轉換)
5.1、分配
5.2、關聯
6、添加規則
6.1、添加ICMP規則
ping 192.168.10.248
6.2、添加ssh規則
7、遠程登錄
7.1、遠程登錄1:無密碼登錄
ssh 192.168.10.248
aptech#無密碼登錄
ssh-copy-id 192.168.10.248
7.2、遠程登:2:創建秘鑰對
(1)創建密鑰對
“項目”→“計算”→“密鑰對”-->創建密鑰對(秘鑰名稱為my-auth,秘鑰類型為SSH秘鑰)
創建成功后會自動下載到本地
(2)在宿主機上創建 centos用戶并設置權限
useradd centos
mkdir /home/centos/.ssh
cd /home/centos/.ssh/
mv my-auth.pem id_rsa
chmod 700 /home/centos/.ssh
chown -R centos.centos /home/centos/.ssh
chmod 600 /home/centos/.ssh/id_rsa