深入理解OpenStack Trove

深入理解OpenStack Trove
定價:474
NT $ 474
 

內容簡介

本書由Tesora團隊的CTO Amrith Kumar和研發副總裁Douglas Shelley聯合編寫,深入介紹並研究了Open Stack中Trove項目的架構及工作原理。

Trove項目作為一個DBaaS(數據庫即服務),可以方便地為用戶提供關系型和非關系型數據庫,並在數據庫生命周期內提供各種便捷的管理操作,例如復制、備份、擴容等。

本書首先介紹了Trove的相關概念,以及如何下載並安裝Trove;接着以實際操作為示例,講述了Trove的基礎架構和一些典型的操作方法,以及如何調試Trove並進行一系列故障排查;后介紹了如何構建Trove guest鏡像,以及在生產環境中操作Trove時需要注意的事項。

本書適用於對Open Stack生態圈有所了解,並對數據庫和開源事業有興趣的開發 者。

Amrith Kumar是Tesora公司的CTO和創辦者,這家公司擁有超過20年為專門從事企業存儲應用、高性能容錯系統和大規模並行數據庫的公司生產業界領先產品的經驗。Amrith kumar是Open Stack Trove(數據庫即服務項目)的活躍技術貢獻者,也是該項目核心審查團隊的一員。在那之前,他曾在Dataupia公司擔任技術副總裁和產品經理,也是Satori Data Warehousing平台的創辦者及Sepaton的董事長兼總經理,負責核心虛擬磁帶庫產品的開發。他擁有多項專利,這些專利涉及高性能數據庫和算法,在分布式計算中有着廣泛的適用性。

Douglas Shelley是Tesora的產品開發副總裁,也是第1名加入Tesora的員工。他組建了一支經驗豐富的企業級軟件專業團隊,致力於發布Tesora DBaaS平台,並且在Open Stack社區有着積極的貢獻。他在IT界和軟件產品開發領域工作超過20年,致力於應用交付、數據管理和集成,是Open Stack Trove項目的活躍技術貢獻者。在加入Tesora之前,他負責軟件的產品開發超過10年,並帶領各個團隊應對了有關數據同步、集成和轉換方面的挑戰。

在工作之余,他會經常趴在桌子上,刻苦鑽研他的樹莓派或NAS4Free盒子,或者寫詩歌和短篇小說。
 

目錄

第1章關於DBaaS的介紹
1.1什麼是DBaaS
1.1.1數據庫
1.1.2服務
1.1.3服務類別
1.1.4DBaaS的定義
1.2IT部門面對的數據庫挑戰
1.3DBaaS的特性
1.3.1管理平面和數據平面
1.3.2租賃
1.3.3服務位置
1.3.4服務vs平台
1.4DBaaS的好處
1.4.1易於提供
1.4.2一致性的配置
1.4.3自動化操作
1.4.4自動縮放
1.4.5提高開發的靈活性
1.4.6更好的資源利用和設計
1.4.7對於提供者或操作者簡化角色
1.5其他DBaaS的提供者
1.5.1亞馬遜RDS
1.5.2亞馬遜Redshift
1.5.3微軟Azure SQL Database
1.5.4GoogleCloud SQL
1.5.5亞馬遜DynamoDB
1.6OpenStack Trove
1.7Trove的一段簡要歷史
1.8OpenStackTrove中的租約
1.9OpenStack生態系統中的Trove
1.10總結
第2章下載和安裝OpenStackTrove
2.1部署一個單節點的開發環境
2.1.1配置Ubuntu環境
2.1.2安裝一些基礎包
2.1.3確認你的配置
2.1.4給「ubuntu」用戶賦予免密碼sudo權限
2.1.5使用devstack工具安裝OpenStack
2.1.6啟用默認的Trove公鑰
2.1.7系統認證
2.1.8創建你的第1個Trove數據庫實例
2.1.9在devstack中使用Neutron
2.1.10訪問Dashboard
2.2在多節點的OpenStack環境中部署Trove
2.2.1前提條件
2.2.2安裝必需包
2.2.3創建Trove用戶
2.2.4創建Trove操作的數據庫
2.2.5在OpenStack中配置Trove
2.2.6配置Trove服務
2.2.7初始化Trove操作的數據庫
2.2.8在Keystone中配置TroveEndpoint
2.2.9重啟Trove服務
2.2.10下載或構建一個TroveGuest鏡像
2.2.11配置數據庫類型及其版本
2.3總結
第3章基本的Trove操作
3.1使用curl命令和RESTful服務交互
3.1.1從Keystone中獲取Token
3.1.2使用Token和RESTful服務交互
3.2理解應用程序如何與OpenStack服務交互
3.3TroveCLI腳本編程
3.4展示實例列表
3.5啟動實例
3.6重啟實例
3.7刪除實例
3.8配置多個數據庫類型
3.8.1配置數據庫類型
3.8.2指定默認的數據庫類型
3.9創建用戶和數據庫
3.9.1啟用數據庫的root用戶
3.9.2數據庫操作
3.9.3用戶操作
3.10總結
第4章概念和架構
4.1Trove基礎架構
4.2Trove的概念
4.2.1Trove服務
4.2.2TroveGuestAgentAPI
4.2.3Trove策略
4.2.4Trove拓展
4.2.5Guest Agent的分類模型和策略
4.2.6Trove Guest鏡像
4.2.7Trove消息隊列和Trove內部的API
4.2.8Trove基礎設施數據庫
4.2.9Trove公共API
4.3OpenStackTrove的架構
4.4總結
第5章Trove的高級操作
5.1自定義flavor
5.2Trove的備份和恢復
5.3Trove的復制
5.3.1對復制的支持情況
5.3.2創建一個復制
5.3.3故障切換
5.4Trove集群
5.5配置組
5.6調整實例的大小
5.7終止實例
5.8總結
第6章調試與故障排除
6.1訪問Troveguest實例的命令行
6.1.1Open Stackguest鏡像
6.1.2Tesoraguest鏡像
6.2閱讀Trove錯誤日志
6.2.1Trove控制節點的錯誤日志
6.2.2關於guest實例的錯誤日志
6.2.3錯誤日志的一些實例
6.3理解Trove日志級別
6.4在Trove中使用Open Stack分析庫
6.4.1在開始和停止位置之間分析代碼
6.4.2使用Python結構分析一個代碼塊
6.4.3使用修飾器分析一個方法
6.4.4使用修飾器分析整個類
6.5總結
第7章構建Troveguest鏡像
7.1使用預先構建的Troveguest鏡像
7.1.1Troveguest鏡像組件
7.1.2注冊Troveguest鏡像
7.2使用磁盤鏡像生成器構建guest鏡像
7.2.1安裝磁盤鏡像生成器
7.2.2磁盤鏡像生成器組件
7.2.3使用Trove相關的組件構建guest鏡像
7.2.4使用redstack構建guest鏡像
7.3磁盤鏡像生成器的工作原理
7.3.1組件內的階段
7.3.2執行順序
7.4Trove涉及的組件
7.5使用guestagent代碼
7.5.1在運行時安裝guestagent代碼
7.5.2構建時安裝guestagent代碼
7.6不同的操作系統中的guest鏡像
7.7總結
第8章生產環境下Trove的運作
8.1Trove的基礎設施配置
8.1.1配置Trove使用專用基礎設施
8.1.2AMQP服務器上的安全配置
8.1.3為訪問AMQP服務器提供憑證
8.2guest安全
8.2.1在guest實例上使用SSH
8.2.2使用安全組和安全網絡
8.3Trove作為其他OpenStack服務的用戶端
8.3.1私有OpenStack結構中的消費服務
8.3.2使用隱藏租戶和服務租戶
8.4總結
附錄ATrove配置選項
A.1Trove配置文件
A.2Trove配置選項
A.3特定的數據庫配置選項
A.4總結
附錄BTrove命令行接口
B.1命令行接口
B.1.1trove命令
B.1.2trove—manage命令
B.2總結
附錄CTrove中的API
C.1TroveAPI服務的endpoint
C.2API的習慣用法
C.3列出API的版本
C.4實例API
C.4.1列出實例
C.4.2創建實例
C.4.3展示實例
C.4.4實例操作
C.4.5修改實例
C.4.6更新實例
C.4.7刪除實例
C.4.8備份列表
C.4.9實例配置列表
C.5數據庫類型的API
C.5.1數據庫類型列表
C.5.2數據庫類型版本列表
C.5.3顯示數據庫類型版本(通過數據庫類型和版本)
C.5.4顯示數據庫類型版本(通過UUID)
C.5.5數據庫類型版本配置項列表
C.5.6顯示數據庫類型版本配置項
C.5.7數據庫類型版本配置項列表
C.5.8顯示數據庫類型版本配置項
C.6實例類型API
C.6.1實例類型列表
C.6.2顯示實例類型
C.7限額API
C.8備份API
C.8.1備份列表
C.8.2顯示備份
C.8.3創建備份
C.8.4刪除備份
C.9數據庫擴展API
C.9.1獲取root用戶的激活狀態
C.9.2啟用root
C.9.3數據庫列表
C.9.4創建數據庫
C.9.5刪除數據庫
C.9.6創建用戶
C.9.7用戶列表
C.9.8查看用戶的權限
C.9.9刪除用戶
C.9.10用戶訪問授權
C.9.11顯示用戶的訪問權限
C.9.12解除用戶的訪問權限
C.10集群API
C.11集群列表
C.11.1集群詳情
C.11.2創建集群
C.11.3集群操作:添加實例
C.11.4刪除集群
C.12總結
 

作為流行的開源雲計算平台之一,OpenStack日漸成熟,為眾多行業參與者提供了強大的支撐。而在作為IT基礎資源之一的數據庫雲化管理方 面,OpenStack同樣給我們帶來了設計優雅的Trove作為其DBaaS服務。Trove是OpenStack的一部分,基於OpenStack的 核心基礎服務而構建,很好地詮釋了雲平台的強大能力。Trove所支持的底層數據庫非常廣泛,並且具有強大的擴展性。本書作為學習Trove的難得資料, 為你360°講述Trove的前世今生,帶你領略OpenStack DBaaS的精彩實踐。

綠星雲科技CTO及聯合創始人 黃明生

關於技術評論員
Nikhil Manchanda 是惠普雲的核心工程師之一。他從OpenStack Trove 的Juno、Kilo和Liberty 發布伊始就一直是該項目的技術負責人(PTL)。他設計並編寫了OpenStackTrove 項目的重要部分,並在項目開始時就成為Trove 的核心貢獻者之一。他的專長在OpenStack、Python 和數據庫領域,但也偶爾涉足C++ 和機器學習領域。他之前從事軟件更新智能、本地地理系統和移動應用相關工作。在工作之余,他會經常趴在桌子上,刻苦鑽研他的樹莓派或NAS4Free 盒子,或者寫詩歌和短篇小說。

鳴謝
我們要感謝整個OpenStack Trove社區,感謝社區成員對Trove版本的提交和貢獻,以使得OpenStack的數據庫服務成為現實。如果沒有這麼多開發者、審閱者和運營商在數年里對項目的貢獻,我們不會有如此豐富的話題進行寫作。
特別感謝Tesora的整個團隊,他們通過評論、回答技術問題和提供有創意的內容來支持本書。

感謝Apress團隊,Mark Powers、Louise Corrigan、Christine Ricketts和Lori Jacobs都很棒。

特別感謝Laurel Michaels,他在社區里做了很多改善Trove文檔的工作,在本書初稿完成后精心審閱了每個章節,並提供了寶貴的改進建議。
——Amrith & Doug
網路書店 類別 折扣 價格
  1. 新書
    $474