Docker安裝使用Rancher及說明
1. 下載鏡像
Rancher是一個(gè)企業(yè)級(jí)Kubernetes管理平臺(tái),同時(shí)滿足了使用Kubernetes部署應(yīng)用程序的DevOps團(tuán)隊(duì)和交付企業(yè)關(guān)鍵服務(wù)的IT人員的需求
# 1. 拉取rancher 鏡像 docker pull rancher/server # 2. 啟動(dòng)rancher docker run -id --name rancher -p 9090:8080 rancher/server
# 配置 Rancher1.6 啟動(dòng)參數(shù)
rancher:
image: rancher/server
container_name: rancher
restart: always
ports:
- "9090:8080"
volumes:
- /soft/rancher/cattle:/var/lib/cattle
- /soft/rancher/mysql:/var/lib/mysql
- /soft/rancher/log/mysql:/var/log/mysql
environment:
java_opts: "-Xmx1024m"

1.1 添加環(huán)境 default-===> 環(huán)境管理 (測(cè)試環(huán)境、生產(chǎn)環(huán)境)


1.2 添加主機(jī) 基礎(chǔ)架構(gòu)===>主機(jī) (添加主機(jī))

保存


運(yùn)行完成以后 關(guān)閉 界面,會(huì)顯示新增主機(jī)的信息

1.3 添加應(yīng)用
點(diǎn)擊應(yīng)用===>全部(或用戶) 點(diǎn)擊添加按鈕

1.4 應(yīng)用部署 添加服務(wù)

配置mysql:



配置RabbitMq 部署
- 鏡像:docker pull rabbitmq:3.7.7-management (management 帶圖形化界面)
- 端口:5671,5672,4369,15671,15672,25672
添加環(huán)境變量: 用戶名,密碼
RABBITMQ_DEFAULT_USER=admin RABBITMQ_DEFAULT_PASS=admin

訪問:http://192.168.220.132:15672/

2. 部署微服務(wù)應(yīng)用
192.168.220.132:5000/com.xiaoming/wang

查看服務(wù)狀態(tài),已經(jīng)可以訪問

3. 擴(kuò)容和縮容
3.1 在Rancher 將創(chuàng)建的 base-service微服務(wù)刪除
3.2 重新建立 base-service不配置端口映射

3.3 添加接收器
API===>Webhooks===>添加接收器


通過post請(qǐng)求可以觸發(fā)擴(kuò)容:
http://192.168.220.132:9090/v1-webhooks/endpoint?key=4JstTkFyihUmB1bSoMxOjPgz7KiHBIys0Ke1ltxW&projectId=1a5

3.4 配置負(fù)載均衡 是外部 可以訪問到應(yīng)用
添加服務(wù)===>> 添加負(fù)載均衡


啟動(dòng)完成后可以正常訪問

4. influxDB
InfluxDB(時(shí)序數(shù)據(jù)庫),常用的一種使用場(chǎng)景:監(jiān)控?cái)?shù)據(jù)統(tǒng)計(jì)。每毫秒記錄一下電腦內(nèi)存的使用情況,根據(jù)統(tǒng)計(jì)的數(shù)據(jù),利用圖形化界面(InfluxDB V1一般配合Grafana)制作內(nèi)存使用情況的折線圖
4.1 influxDB 安裝
# 1. 拉取鏡像 docker pull tutum/influxdb # 2. 運(yùn)行 docker run -di -p 8083:8083 -p 8086:8086 --expose 8090 --expose 8099 --name influxsrv tutum/influxdb
端口 8083 web 訪問端口, 8086 數(shù)據(jù)寫入端口

4.2 influxDB 常用操作
4.2.1 創(chuàng)建數(shù)據(jù)庫
CREATE DATABASE "cadvisor"

4.2.2 創(chuàng)建用戶名, 并授權(quán)
# 1. CREATE USER "username" WITH PASSWORD 'password' WITH ALL PRIVILEGES # 2. 用戶信息查看 SHOW USERS # 3. 授權(quán) GRANT ALL PRIVILEGES ON cadvisor to cadvisor grant write on cadvisor to cadvisor grant read on cadvisor to cad cadvisor
4.2.3 查看采集數(shù)據(jù)
SHOW MEASUREMENTS
5. cadvisor
docker stats的問題(存儲(chǔ)、展示),谷歌開源的cadvisor誕生了,cadvisor不僅可以搜集一臺(tái)機(jī)器上所有運(yùn)行的容器信息,還提供基礎(chǔ)查詢界面和http接口,方便其他組件如Prometheus進(jìn)行數(shù)據(jù)抓取,cadvisor + influxdb + grafna使用
5.1 安裝
# 1. 拉取鏡像
docker pull google/cadvisor
# 2. 運(yùn)行容器
docker run \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:ro \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--volume=/dev/disk/:/dev/disk:ro \
--publish=8088:8080 \
--detach=true \
--link influxsrv:influxsrv \
--name=cadvisor \
google/cadvisor \
--storage_driver=influxdb \
--storage_driver_db=cadvisor \
--storage_driver_db=nfluxsrv:8086
5.2 訪問
http://192.168.220.132:8088/containers/

可以查看數(shù)據(jù)

6. Grafana
Grafana是一個(gè)跨平臺(tái)的開源的度量分析和可視化工具,可以通過將采集的數(shù)據(jù)查詢?nèi)缓罂梢暬恼故?,并及時(shí)通知。主要特點(diǎn):
- 展示方式:快速靈活的客戶端圖表,面板插件有許多不同方式的可視化指標(biāo)和日志,官方庫中具有豐富的儀表盤插件,比如熱圖、折線圖、圖表等多種展示方式;
- 數(shù)據(jù)源:Graphite,InfluxDB,OpenTSDB,Prometheus,Elasticsearch,CloudWatch和KairosDB等;
- 通知提醒:以可視方式定義最重要指標(biāo)的警報(bào)規(guī)則,Grafana將不斷計(jì)算并發(fā)送通知,在數(shù)據(jù)達(dá)到閾值時(shí)通過Slack、PagerDuty等獲得通知;
- 混合展示:在同一圖表中混合使用不同的數(shù)據(jù)源,可以基于每個(gè)查詢指定數(shù)據(jù)源,甚至自定義數(shù)據(jù)源;
- 注釋:使用來自不同數(shù)據(jù)源的豐富事件注釋圖表,將鼠標(biāo)懸停在事件上會(huì)顯示完整的事件元數(shù)據(jù)和標(biāo)記;
- 過濾器:Ad-hoc過濾器允許動(dòng)態(tài)創(chuàng)建新的鍵/值過濾器,這些過濾器會(huì)自動(dòng)應(yīng)用于使用該數(shù)據(jù)源的所有查詢。
6.1 安裝
# 1. 下載鏡像 docker pull grafana/grafana
6.2 創(chuàng)建容器 用戶名密碼:admin
docker run -id -p 3001:3000 -e INFLUXDB_HOST=influxsrv -e INFLUXDB_PORT=8086 -e INFLUXDB_NAME=cadvisor -e INFLUXDB_USER=cadvisor -e INFLUXDB_PASS=cadvisor --link influxsrv:influxsrv --name grafana grafana/grafana

6.3 添加數(shù)據(jù)源 設(shè)置====> 數(shù)據(jù)源====> 添加數(shù)據(jù)源

6.3.1配置數(shù)據(jù)源,賬號(hào),密碼,數(shù)據(jù)庫


6.4 添加儀表盤

7. Rancher 2.0
# 1. 拉取鏡像
docker pull rancher/rancher
# 2. 啟動(dòng)
$ docker run -d --restart=unless-stopped --privileged -p 80:80 -p 443:443 \
-v /soft/rancher:/var/lib/rancher \
-v /soft/auditlog:/var/log/auditlog \
--name rancher rancher/rancher
# 3.
# rancher2.x
rancher2.x:
image: rancher/rancher
container_name: rancher2.x
restart: unless-stopped
privileged: true
ports:
- "90:80"
- "443:443"
volumes:
- /soft/rancher2/rancher:/var/lib/rancher
- /soft/rancher2/auditlog:/var/lib/auditlog
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
nerdctl替代docker及docker-compose的安裝使用
這篇文章主要為大家介紹了nerdctl替代docker及docker-compose的安裝使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
docker.service啟動(dòng)失?。篣nit not found的原因及解決辦法
這篇文章主要介紹了docker.service啟動(dòng)失?。篣nit not found的原因分析及解決辦法,需要的朋友可以參考下2017-04-04
docker中鏡像映射和端口映射的實(shí)現(xiàn)步驟
本文介紹了在Docker中進(jìn)行鏡像映射和端口映射,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-11-11
Docker 解決獲取容器獲取的時(shí)間不是本地時(shí)間的問題
這篇文章主要介紹了Docker 解決獲取容器獲取的時(shí)間不是本地時(shí)間的問題的相關(guān)資料,需要的朋友可以參考下2016-11-11
Docker基礎(chǔ)教程之Dockerfile語法詳解
這篇文章主要給大家介紹了關(guān)于Docker基礎(chǔ)教程之Dockerfile語法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Docker具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07

