mysql集群怎么訪問,mysql怎么訪問數據庫

如何訪問k8s集群內部署的mysql服務

雖然 kubernetes 社區一直在努力使得有狀態應用成為一等公民,也推出了 statefulset 控制器支持 pod 的順序部署,穩定的域名訪問和存儲訪問。但鑒于 MySQL 部署運維的多樣性和復雜性,在 kubernetes 上部署 MySQL 仍然要面臨眾多挑戰。

邊壩ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為創新互聯建站的ssl證書銷售渠道,可以享受市場價格4-6折優惠!如果有意向歡迎電話聯系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!

1、業務流量入口的配置方式

傳統虛擬機環境下,我們通過虛IP的方式,讓業務應用都配置事先定義的一個虛IP為鏈接數據庫的地址,然后由高可用服務保證虛IP始終能被路由到master數據庫。在kubernetes中,出現了一層網絡插件屏蔽了底層網絡拓撲,高可用服務管理虛IP的方式需要隨之適應調整,比如通過service結合標簽完成虛IP的漂移,但service本身是kubernetes提供的一項功能,其可靠性和性能都取決于kubernetes服務的穩定。以性能來說,service是kubeproxy組件通過配置iptables實現的,當iptables規則較多時不可避免的會產生時延,需要我們針對性的解決。

2、容器隔離帶來的監控視野問題

在 kubernetes 中,如果將 MySQL 制作為 container 運行在一個 pod 中,container 會將 MySQL 進程和運行環境隔離在一個單獨的 namespace 中。監控組件在獲取 MySQL 的一些 metirc 時,可能不得不進入與 MySQL 同一個 namespace 中,在部署和設計監控組件時需要考慮到這些限制。

3、存儲在 kubernetes 中,支持配置各種不同的存儲。

如果使用本地存儲 local persistent volume,則需要綁定 MySQL 在一個固定的節點,這就完全浪費了 kubernetes 靈活調度的天然優勢;而如果使用遠程共享存儲,確實是將 MySQL 進程與其存儲完全解耦,使得 MySQL 進程可以在任意節點調度,然而考慮到高 I/O 吞吐量的情況,就不是那么美好了。設計時需要考量遠程存儲是否能夠滿足 MySQL 的帶寬要求。

4、高可用/備份恢復

kubernetes 提供的 statefulset 控制器只能提供最基本的部署,刪除功能,無法實現完善的 MySQL 集群高可用/備份恢復操作。對于有狀態應用的部署,仍需要定制開發,所以多數公司提供了定制的 operator 來完成應用容器的管理。比如 etcd operator,MySQL operator,后文將為大家詳述我測試使用 MySQL operator 的一些記錄。

MySQL大型分布式集群具體怎么做

1、主要解決針對大型網站架構中持久化部分中,大量數據存儲以及高并發訪問所帶來是數據讀寫問題。分布式是將一個業務拆分為多個子業務,部署在不同的服務器上。集群是同一個業務,部署在多個服務器上。

2、著重對數據切分做了細致豐富的講解,從數據切分的原理出發,一步一步深入理解數據的切分,通過深入理解各種切分策略來設計和優化我們的系統。這部分中我們還用到了數據庫中間件和客戶端組件來進行數據的切分,讓廣大網友能夠對數據的切分從理論到實戰都會有一個質的飛躍。

通過分布式+集群的方式來提高io的吞吐量,以及數據庫的主從復制,主主復制,負載均衡,高可用,分庫分表以及數據庫中間件的使用。

Docker的mysql集群節點可以正常創建,但無法正常連接到宿主機的mysql應該如何解決?

Ambari是Apache的開源項目,它幫助用戶在GUI頁面上簡單的部署、管理、監控Hadoop集群環境。Ambari支持的Hadoop組件包括HDFS、Hive、HBase、Spark、Yarn等,HortonWorks官方也是采用Ambari來完成自家HDP套件的安裝、管理及監控的。除了預置的組件之外,Ambari還支持自定義組件的安裝,同時,支持RESTful的API,繼而可以通過命令行等方式調用Ambari來完成一些自動化的任務。

本文共分為兩部分,第一部分介紹如何在Docker虛擬化環境中部署Ambari;第二部分介紹如何基于Ambari來部署和管理Hadoop集群。

### 環境信息

* Docker發行版:Docker for Mac

* Docker版本:17.06.2-ce

* Docker容器OS:Ubuntu 14.04

* Ambari版本:2.5.2.0

Docker環境準備

拉取Docker鏡像:在宿主機上執行命令docker pull ubuntu:14.04從遠端倉庫中獲取Ubuntu的鏡像,也可以獲取其他OS的鏡像,本文以Ubuntu為例

啟動Docker容器:執行如下命令,以ubuntu:14.04鏡像為基礎啟動容器:

docker run -itd --name ambari_new -p 8080:8080 -p 3306:3306 -v /Users/yuxiaolei/Workspace/dockerShared:/dockerShared ubuntu:14.04 /bin/bash

由于Ambari啟動Web程序的時候占用8080端口,因此要從Docker宿主機上訪問Ambari頁面,需要通過參數 -p 來制定端口映射;

作為新手,筆者在容器內部署好Ambari之后,才發現Web頁面的8080端口和MySQL的3306端口(可選)沒有暴露給Docker宿主機,也就沒法從宿主機上通過瀏覽器來登陸Ambari,因此必須想辦法在已有容器上開放端口。

有兩個方法:

1)如果宿主機為Linux系統,則修改iptables防火墻來指定端口映射規則;

2)如果是非Linux系統,可以將已裝Ambari的容器commit為新的鏡像,再基于該鏡像創建新的容器。此時,就可以在docker run命令中添加參數 -p 來指定端口映射了。

還有一個問題,Ambari將其數據存儲在數據庫中,支持MySQL、PostgreSQL等數據庫;容器內安裝MySQL之后,基于上一步創建的新容器里,會發現MySQL啟動不起來,執行命令/etc/init.d/mysql restart啟動失敗,在/var/log/mysql/error.log日志文件中打印有170802 14:02:59 [ERROR] Fatal error: Can't open and lock privilege tables: Got error 140 from storage engine的錯誤,經過網上查資料,需要在創建容器的時候添加參數-v /var/lib/mysql將MySQL數據存儲路徑聲明為數據卷,即可解決問題。

啟動容器之后,執行命令docker exec -it ambari /bin/bash進入容器內部。

Ambari安裝

配置Ubuntu的軟件倉庫源:

國內建議采用阿里云的軟件源,在root賬號下用vim打開/etc/apt/sources.list文件,刪除文件所有內容,粘貼如下內容:

deb trusty main restricted universe multiverse

deb trusty-security main restricted universe multiverse

deb trusty-updates main restricted universe multiverse

deb trusty-proposed main restricted universe multiverse

deb trusty-backports main restricted universe multiverse

deb-src trusty main restricted universe multiverse

deb-src trusty-security main restricted universe multiverse

deb-src trusty-updates main restricted universe multiverse

deb-src trusty-proposed main restricted universe multiverse

deb-src trusty-backports main restricted universe multiverse

執行命令apt-get update完成軟件列表更新

安裝Ambari所依賴的軟件

apt-get install software-properties-common

sudo add-apt-repository ppa:webupd8team/java

sudo apt-get update

sudo apt-get install oracle-java8-installer

sudo apt-get install oracle-java8-set-default

完成安裝之后,在 ~/.bashrc 文件末尾添加命令 `export JAVA_HOME=/usr/lib/jvm/java-8-oracle ` 以配置JAVA\_HOME 環境變量。

create database ambari;use ambari;GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root_password' WITH GRANT OPTION;FLUSH PRIVILEGES;exit;

由于Ambari的數據存儲在MySQL數據庫中,這里為Ambari單獨創建了database,并為其賦了完全控制權限;說明:假設MySQL數據庫root用戶的密碼為:root\_password

修改 `/etc/mysql/my.conf`,將`skip-external-locking`注釋掉,并確保 `bind-address = 0.0.0.0` 配置,以使MySQL可被遠程主機訪問。

執行命令`/etc/init.d/mysql restart`重啟MySQL 服務。

時間同步服務器ntp:執行命令apt-get install ntp安裝ntp時間同步服務器,以便于集群環境中各節點的時鐘一致;執行命令sudo service ntp restart重啟ntp服務。

MySQL:執行命令apt-get install mysql-server安裝MySQL服務器,安裝完成后執行命令mysql -uroot -proot進入MySQL客戶端,執行如下SQL代碼:

Oracle JDK:逐條執行如下命令,以添加WebUpd8團隊()提供的Oracle JDK倉庫源,并從該倉庫安裝JDK:

下載Ambari倉庫文件

進入cd /etc/apt/sources.list.d目錄,執行命令wget 從HortonWorks倉庫中下載Ambari源文件,下載后切勿修改list文件名;

執行命令apt-key adv --recv-keys --keyserver keyserver.ubuntu.com B9733A7A07513CAD以信任遠端倉庫的GPG簽名

執行命令apt-get update更新Ambari軟件源

執行命令apt-get install ambari安裝Ambari套件,由于軟件包較大(700多MB),這里情耐心等待,不過apt-get支持斷點下載,網絡終端后重新執行命令時不會從零開始下載

配置Ambari:

執行命令mysql -uroot -proot進入MySQL客戶端,執行命令source ambari進入ambari的數據庫,并執行命令source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql來完成Ambari的數據庫表初始化操作;

執行命令ambari-server setup啟動Ambari的引導式配置操作,根據指導做配置即可。需要注意的是,JDK不要選擇由Ambari從網絡下載,應該選擇自定義路徑,然后輸入/usr/lib/jvm/java-8-oracle即可;

啟動Ambari:執行命令ambari-server start,啟動日志存儲路徑為/var/log/ambari-server/ambari-server.log

啟動之后,由于我們之前做了Docker容器的端口映射,因此可以在宿主機上打開瀏覽器輸入即可訪問Ambari登陸頁面

登陸用戶名和密碼均為admin,登陸之后就可以看到Ambari的首頁了,如下圖:

{% asset_img

文章題目:mysql集群怎么訪問,mysql怎么訪問數據庫
本文地址:http://m.kartarina.com/article24/hegcce.html

成都網站建設公司_創新互聯,為您提供搜索引擎優化網站維護網站制作做網站小程序開發網站收錄

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都做網站
主站蜘蛛池模板: 亚洲AV无码1区2区久久| 国产精品久久无码一区二区三区网| 亚洲国产91精品无码专区| 久久精品无码一区二区app| 国精无码欧精品亚洲一区| 中日韩亚洲人成无码网站| 精品无码中文视频在线观看| 久久久久久久无码高潮| 亚洲?V无码成人精品区日韩| 无码国内精品久久人妻| 国产高新无码在线观看| 无码夫の前で人妻を侵犯| 2014AV天堂无码一区| 无码里番纯肉h在线网站| 国产精品无码久久久久久| 无码视频一区二区三区| 精品成在人线AV无码免费看| 丰满日韩放荡少妇无码视频| 国产福利无码一区在线| 国产成人无码AV麻豆| 亚洲AV无码1区2区久久| 国产AV无码专区亚洲AV漫画| 久久国产三级无码一区二区| 无码人妻精品一区二区蜜桃 | 欧洲人妻丰满av无码久久不卡 | 国产精品va无码一区二区 | 国产精品无码久久综合网| 国产乱妇无码大片在线观看| 久久无码av三级| 四虎影视无码永久免费| av无码a在线观看| 国产精品无码v在线观看| 天天看高清无码一区二区三区| 久久亚洲AV成人无码国产最大| 精品久久亚洲中文无码| 亚洲av午夜精品无码专区| 亚洲熟妇无码久久精品| 色欲A∨无码蜜臀AV免费播| 性无码免费一区二区三区在线| 无码无套少妇毛多18p| 久久久久亚洲av无码尤物|