1. 程式人生 > >DevOps之平臺架構

DevOps之平臺架構

actions zabb dhcp char 消息隊列 接收 管理程序 monit epp

嘮叨話

關於德語噢屁事的知識點,僅提供精華匯總,具體知識點細節,參考教程網址,如需幫助,請留言

DevOps平臺架構(Platform Architecture)

《基礎設施(Infrastructure)》
新建網絡Network
首先創建VxNet私有網絡,然後器創建SubNet子網,最後配置IP、開啟GW和DHCP、設置DNS、連接Router。

新建主機Instance
選擇主機配置;綁定公網IP(是否綁定負載均衡LB),綁定私網IP,綁定安全組;管理認證密鑰。

路由器;通訊網關,綁定公網和關聯私網的設備;端口轉發,通過IP|TCP|UDP協議,配置來源和目標的IP和Port;安全隧道,安全機制的認證和密鑰,封裝模式的隧道和傳輸。
網絡網關:啟用,禁用;綁定主機。
網絡端口:名稱,類型,子網,IP地址,安全組(規則,協議,目標對象);綁定主機。
網絡隧道:名稱,IKE策略、IPSec策略、VPN服務、遠端IP、認證密鑰、目標網絡;綁定主機。

新建磁盤Volume
選擇磁盤配置;綁定主機。

註:主機進入及退出SSH
[[email protected] ~]# fdisk -l # 查看硬盤
[[email protected] ~]# mkfs -t ext3 /dev/vdb1 # 格式化/dev/vdb1分區
[[email protected] ~]# mkdir /myos1 # 創建目錄準備掛載分區
[[email protected] ~]# mount /dev/vdb1 /myos1 # 將/dev/vdb1掛載到創建目錄
[[email protected] ~]# df -k # 驗證掛載
[[email protected] ~]# umount /dev/vdb1 # 取消掛載

《虛擬化(Virtualization)》


管理軟件:OpenStack、OpenNebula、OpenQRM、XenServer(Citrix)、CloudStack(Ctrix)、ConVirt(KVM)、Eucalyptus(HP)、OracleVM(Oracle)。
技術平臺:KVM、Xen、XenServer、VMWare、LXC、openVZ。

《OpenStack(虛擬化工具)》
Cloud雲:Deploy部署、Configure配置、Manage管理。
部署模式:私有雲(Private Cloud)、公有雲(Public Cloud)、混合雲(Hybrid Cloud)、社區雲(Community Cloud)。
服務模式:設施IaaS、平臺PaaS、軟件SaaS。
技術組件:虛擬化管理程序Hypervisor、虛擬化管理接口、資源交互API、消息列隊MQ、分布式存儲、容器、網絡虛擬化等。

OpenStack初始項目模塊
Nova(NASA開發的虛擬服務器部署和業務計算模塊),Swift(Rackspace開發的分布式存儲模塊)。
OpenStack現今項目模塊
https://www.openstack.org/software/

《Compute計算》
Nova虛擬機計算、Ironic裸機計算、Glance鏡像、Magnum容器部署、Zun容器管理、Storlets對象存儲計算
《Storage存儲》
Swift存儲、Cinder塊存儲、Karbor數據安保、Freezer備份恢復、Manila共享文件系統
《Networking網絡》
Neutron網絡、Designate域名解析、Octavia負載平衡器、Dragonflow網絡流、Kuryr網絡容器、Tacker網絡功能虛擬化、Tricircle多集群網絡部署
《Data數據》
Trove數據庫管理、Sahara數據分析、Searchlight數據搜索
《Security安全》
Keystone身份認證、Barbican密鑰管理、Congress策略管理、Mistral工作流
《Management管理》
Horizon網頁界面、Senlin集群、Rally性能測試與分析、Vitrage根源原因分析、Watcher優化、Openstack Client命令行界面
《Deployment部署》
Tripleo容器、Kolla容器部署、Openstack Charms、Openstack Ansible、Chef Openstack、Puppet Openstack
《Application應用》
Heat編排編制、Zaqar消息、Murano目錄、Solum生命周期
《Monitoring監控》
Ceilometer計量、Gnocchi時序計量、Aodh預警、Panko事件、Monasca監控、Cloudkitty計費

參考網站
http://www.qyjohn.net/?p=1247
http://blog.csdn.net/liuhong1123/article/details/7265716

OpenStack http://www.cnblogs.com/sammyliu/category/636967.html
OpenNebula http://cloud.51cto.com/art/201507/484072.htm
OpenQRM https://linux.cn/article-6089-1.html

XenServer(Ctrix)、CloudStack(Ctrix)
http://www.jb51.net/article/94073.htm
http://www.jb51.net/article/94066.htm

KVM(ConVirt)
http://koumm.blog.51cto.com/703525/1288795

《Zabbix(監視工具)》
監控組成部分
Zabbix Server必選,Zabbix Agent可選。

監控配置流程
Host groups(主機組)->Hosts(主機)->Applications(監控項組)->Items(監控項)->Triggers(觸發器)->Event(事件)->Actions(處理動作)->User groups(用戶組)->Users(用戶)->Medias(告警方式)->Audit(日誌審計)

監控采集方式:服務端(SNMP、IPMI、JMX),客戶端(Agent)。
監控數據展示:單維度(graph),多維度(screen)。
監控異常報警:email、sms、script、jabber。

監控采集方式
Zabbix Agent:HTTP FTP協議監控、VMWare Xen應用監控、SSH NTP系統服務監控。
SNMP Agent:監控主機、處理器、內存、硬盤、網絡設備、帶寬流量。
IPMI Agent:監控處理器和主板的溫度、電壓、風扇轉速。
JMX Agent:監控應用程序。
Agentless Monitoring:監控ping、telnet。
Web Monitoring:監控網頁正異常。
Database Monitoring:mysql內部監控數據庫,php外部監控腳本。
Internal Check:監控Zabbix Server進程狀態,進程啟動時間,主機數。
Calculated Monitoring:監控采集數據運算結果。
Custom Command Monitoring:監控自定義方式。

Zabbix API
功能:遠程管理及檢索配置,遠程檢索及瀏覽數據。
平臺:Alerta報警平臺,Slack溝通協作平臺。
Alerta告警平臺,劃分為二大部分:alerta-server,alerta-worker。
alerta-server:接收,zabbix的報警信息存入數據庫(MongoDB)。
alerta-worker:發送,取出數據庫(MongoDB)zabbix的告警信息。
Slack溝通協作平臺,溝通和協作的集成工具。

監控文件系統
Ceph分布式文件系統。

監控數據庫系統
MGR(基於Paxos協議的MySQL數據庫集群部署)、Gelera(基於Linux系統的MySQL數據庫集群部署)。

監控日誌系統
ELK(Elasticsearch + Logstash + Kibana)、EFK(Elasticsearch + Fluentd + Kibana)。
日誌記錄:Log4j、Syslog。
日誌采集:Logstash、Fluentd。
日誌索引:Elasticsearch。
日誌計量:Kibana。

監控可視化系統
InfluxDB + Telegraf|Collectd + Grafana。
InfluxDB,基於Go語言開發的一個分布式時序數據庫。
Telegraf,基於Go語言開發的一個系統性能采集工具。
Collectd,基於C語言開發的一個系統性能采集工具。
Grafana,基於Js語言開發的一個度量儀表盤和圖形編輯器工具。

監控集群部署
Pacemaker資源管理器
OpenStack管理平臺(Nova計算、Glance鏡像、Swift存儲、Cinder塊存儲、Heat編排編制、Zaqar消息、Keystone身份認證、Ceilometer計量、Gnocchi時序計量、Aodh預警、Panko事件)
Ceph文件系統、InfluxDB時序數據庫、Telegraf或Collectd數據采集、Grafana網頁可視化
Zabbix監控系統(Zabbix Server、Zabbix Agent)、Zabbix Agent
Neutron網絡組件(Neutron Server、Neutron Agent)、Neutron(DHCP、L3、Metadata、OpenvSwitch)Agent
Logging日誌(ElasticSearch索引、Logstash采集、Fluentd采集、Kibana計量)
Database數據庫(MySQL+MGR或MariaDB+Gelera)
Container容器(Docker或Rocket)
Network網絡(Keepalived、DNSmasq)
其他相關:Nagios + Cacti、Zabbix + Puppet|Saltstack、Ganglia、Smokeping、Pingdom、Piwik、Graphite。

附帶 《生態鏈(Ecological Chain)》

《Google(谷歌)》
Gfs,MapReduce,BigTable,Chubby;Caffeine,Pregel,Dremel;Spanner。

《Alibaba(阿裏巴巴)》
Dubbo,FastDFS,Tair。

《Apache Hadoop(海杜普)》
企業服務商:Cloudera,Hortonworks,MapR。

《Apache Hadoop》
結構體系:Common公共模塊包,arn資源管理器,Hdfs數據存儲系統,MapReduce數據計算框架。

《Apache Hadoop 項目》
Hadoop ZooKeeper,集群管理工具(協調系統)。
Hadoop Oozie,工作流(任務調度)。

Hadoop Ambari,集群管理工具,基於Web的系統部署及配置平臺。
Hadoop Whirr,集群管理工具,類庫。
Apache Kafka,消息隊列。
Apache Falcon,數據生命周期。
Aapche Ranger,安全管理。
Apache Knox Gateway,安全網關。

Hadoop Hdfs,分布式文件系統
Hadoop HBase,數據列式存儲系統。
Apache Kudu,數據列式存儲系統。
Hadoop Cassandra,數據鍵值存儲系統。
Hadoop Flume,日誌收集工具,參照FaceBook Scribe日誌收集系統。
Hadoop Sqoop,數據遷移工具,數據倉庫技術。

Hadoop Chukwa,數據采集、存儲、分析的監控系統。
Hadoop Avro,數據序列化,數據交換格式。

Hadoop Pig,數據編程語言,腳本式。
Hadoop Hive,數據倉庫系統,類似SQL。
Apache Impala,數據查詢系統,類似SQL,參照Google Dremel|Drill項目。
Apache Crunch,數據計算API接口,常見任務的模式庫。
Apache HCatalog,元數據管理服務統一平臺。

Hadoop Hue,基於Web-UI界面的數據管理工具。
Apache Zeppelin,基於網頁的數據分析工具。
Apache BigTop,基於項目打包、分發和測試的工具。

Hadoop Yarn,資源管理器
Hadoop Mesos,資源調度管理器。

Hadoop MapReduce,Batch模型計算。
Hadoop Tez,DAG模型計算。
Hadoop Spark,MM模型計算(DAG,流式,叠代式)。
Apache Spark(Graphx),圖計算。
Apache Spark(Mlib),機器學習。
Apache Spark(Streaming),流計算。
Hadoop Hama,BSP模型計算。
Apache Giraph,圖計算。
Apache Mahout,機器學習算法庫。

DevOps之平臺架構