版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
容器云部署運維規(guī)定一、概述
容器云是一種基于容器技術(shù)的云計算服務(wù)模式,通過虛擬化容器實現(xiàn)應(yīng)用的快速部署、擴展和管理。為確保容器云環(huán)境的高效、穩(wěn)定運行,制定本部署運維規(guī)定,規(guī)范容器云的部署、配置、監(jiān)控、維護等環(huán)節(jié)。
二、部署要求
(一)環(huán)境準(zhǔn)備
1.網(wǎng)絡(luò)配置:
-物理網(wǎng)絡(luò)帶寬不低于1Gbps,虛擬網(wǎng)絡(luò)延遲低于10ms。
-配置VPC(虛擬私有云)子網(wǎng),劃分公共網(wǎng)段和私有網(wǎng)段。
2.存儲配置:
-使用分布式存儲系統(tǒng)(如Ceph或NFS),存儲容量不低于500GB,IOPS不低于5000。
-配置快照和備份機制,每日自動備份核心數(shù)據(jù)。
3.計算資源:
-服務(wù)器配置:2U/4核/16GB內(nèi)存,SSD硬盤。
-容器節(jié)點數(shù)量根據(jù)業(yè)務(wù)需求配置,建議不少于3個節(jié)點。
(二)部署流程
1.基礎(chǔ)設(shè)施搭建:
-安裝Kubernetes集群管理組件(如etcd、kube-apiserver、kube-scheduler)。
-配置高可用集群,啟用多Master模式。
2.容器鏡像管理:
-使用DockerHub或私有鏡像倉庫(如Harbor)管理鏡像。
-鏡像掃描:部署前進行安全漏洞掃描,禁止使用高危漏洞鏡像。
3.應(yīng)用部署:
-編寫Kubernetes部署文件(YAML),定義Pod、Service、Ingress等資源。
-使用Helm工具進行應(yīng)用包管理,簡化部署流程。
三、運維管理
(一)監(jiān)控與告警
1.監(jiān)控系統(tǒng)配置:
-部署Prometheus+Grafana監(jiān)控系統(tǒng),采集CPU、內(nèi)存、網(wǎng)絡(luò)、磁盤等指標(biāo)。
-設(shè)置告警規(guī)則,關(guān)鍵指標(biāo)(如CPU使用率>90%)觸發(fā)短信或郵件告警。
2.日志管理:
-使用ELK(Elasticsearch+Logstash+Kibana)或Fluentd收集容器日志。
-日志分級存儲,核心日志保留30天,普通日志保留7天。
(二)安全運維
1.訪問控制:
-配置RBAC(基于角色的訪問控制),限制用戶操作權(quán)限。
-使用Kube-RBAC審計日志,記錄所有API調(diào)用。
2.網(wǎng)絡(luò)隔離:
-啟用NetworkPolicy,限制Pod間通信范圍。
-使用PodSecurityPolicies(PSP)約束容器運行時行為。
3.定期維護:
-每月更新集群組件版本,修復(fù)已知漏洞。
-每季度進行安全滲透測試,評估系統(tǒng)風(fēng)險。
(三)備份與恢復(fù)
1.數(shù)據(jù)備份:
-使用KubernetesVolumeSnapshots功能,對持久卷(PV)進行快照。
-每日備份ETCD數(shù)據(jù),存儲在異地存儲系統(tǒng)。
2.恢復(fù)流程:
-編寫恢復(fù)腳本,實現(xiàn)集群快速回滾。
-定期模擬災(zāi)難恢復(fù)演練,驗證備份有效性。
四、操作規(guī)范
(一)部署操作步驟
1.準(zhǔn)備階段:
-檢查服務(wù)器硬件和操作系統(tǒng)版本。
-安裝Docker和Kubernetes客戶端工具。
2.集群部署:
-執(zhí)行`kubeadminit`初始化Master節(jié)點。
-使用`kubeadmjoin`命令加入Worker節(jié)點。
3.應(yīng)用發(fā)布:
-推送容器鏡像至鏡像倉庫。
-應(yīng)用部署命令:`kubectlapply-fdeployment.yaml`。
(二)日常運維操作
1.資源擴縮容:
-擴容命令:`kubectlscaledeployment/myapp--replicas=5`。
-自動擴容:配置HPA(HorizontalPodAutoscaler)根據(jù)負(fù)載調(diào)整Pod數(shù)量。
2.日志查看:
-命令:`kubectllogs-fdeployment/myapp-ndefault`。
-查看歷史日志:`kubectllogs--previousdeployment/myapp-ndefault`。
(三)故障處理
1.常見問題排查:
-Pod無法拉起:檢查Docker服務(wù)、鏡像拉取權(quán)限。
-網(wǎng)絡(luò)問題:檢查CNI插件配置、Pod網(wǎng)絡(luò)連通性。
2.應(yīng)急措施:
-快速回滾:使用`kubectlrolloutundo`回滾部署版本。
-節(jié)點重啟:執(zhí)行`kubectldrainnode-name`安全驅(qū)逐節(jié)點。
五、文檔管理
1.版本記錄:
-每次更新需記錄修改內(nèi)容、版本號、發(fā)布日期。
-保存歷史版本,便于追溯變更。
2.責(zé)任分配:
-運維團隊負(fù)責(zé)日常監(jiān)控和故障處理。
-開發(fā)團隊負(fù)責(zé)應(yīng)用鏡像構(gòu)建和業(yè)務(wù)邏輯維護。
本規(guī)定適用于所有容器云環(huán)境的部署與運維工作,確保系統(tǒng)穩(wěn)定性和安全性。如需調(diào)整,需經(jīng)技術(shù)委員會審核通過后執(zhí)行。
---
一、概述
容器云是一種基于容器技術(shù)的云計算服務(wù)模式,通過虛擬化容器實現(xiàn)應(yīng)用的快速部署、擴展和管理。為確保容器云環(huán)境的高效、穩(wěn)定運行,制定本部署運維規(guī)定,規(guī)范容器云的部署、配置、監(jiān)控、維護等環(huán)節(jié)。本規(guī)定旨在提升資源利用率,保障業(yè)務(wù)連續(xù)性,簡化運維復(fù)雜度,并為操作人員提供標(biāo)準(zhǔn)化流程。
二、部署要求
(一)環(huán)境準(zhǔn)備
1.網(wǎng)絡(luò)配置:
-物理網(wǎng)絡(luò)帶寬:根據(jù)業(yè)務(wù)峰值流量需求配置,建議物理網(wǎng)絡(luò)帶寬不低于1Gbps,以支持高并發(fā)訪問。若節(jié)點數(shù)量較多或應(yīng)用對網(wǎng)絡(luò)延遲敏感,建議采用10Gbps或更高帶寬。
-虛擬網(wǎng)絡(luò)延遲:優(yōu)化網(wǎng)絡(luò)設(shè)備(交換機、路由器)配置,確保內(nèi)部網(wǎng)絡(luò)延遲低于10ms,可通過網(wǎng)絡(luò)抓包工具(如Wireshark)進行測試驗證。
-VPC(虛擬私有云)子網(wǎng)劃分:
-公共網(wǎng)段:用于部署需要對外暴露的服務(wù)(如負(fù)載均衡器、NginxIngress),配置安全組規(guī)則限制訪問來源。
-私有網(wǎng)段:用于內(nèi)部服務(wù)通信和核心業(yè)務(wù)部署,禁止直接公網(wǎng)訪問,通過VPCPeering或VPN實現(xiàn)跨賬戶或跨地域通信(若適用)。
-DNS配置:集群內(nèi)部使用CoreDNS或微調(diào)署的DNS服務(wù),確保服務(wù)發(fā)現(xiàn)可靠。
2.存儲配置:
-分布式存儲系統(tǒng):
-類型選擇:推薦使用Ceph或NFS,Ceph支持塊存儲、文件存儲和對象存儲,具備高可用性和彈性擴展能力;NFS適用于需要共享文件系統(tǒng)的場景。
-容量規(guī)劃:
-計算公式:`總?cè)萘?(單個應(yīng)用存儲需求應(yīng)用數(shù)量)+(系統(tǒng)緩存節(jié)點數(shù)量)+(冗余空間1.5)`。
-示例:若單個應(yīng)用存儲需求為100GB,部署10個應(yīng)用,節(jié)點數(shù)量為3,系統(tǒng)緩存按50GB/節(jié)點計算,則總?cè)萘恐辽贋閌(100GB10)+(50GB3)+(總?cè)萘?.5)`解得總?cè)萘考s需1100GB,建議配置至少2TB存儲。
-IOPS需求:根據(jù)應(yīng)用類型確定,數(shù)據(jù)庫類應(yīng)用(如MySQL)建議IOPS不低于5000,通用應(yīng)用不低于2000??赏ㄟ^壓力測試工具(如IOzone)模擬驗證。
-快照與備份機制:
-備份頻率:核心數(shù)據(jù)每日全量備份,非核心數(shù)據(jù)每周備份。
-備份策略:采用增量備份結(jié)合全量備份的方式,降低存儲壓力。
-存儲位置:備份數(shù)據(jù)存儲在異地存儲系統(tǒng)(如S3兼容對象存儲)或物理備份設(shè)備,確保災(zāi)難場景下可恢復(fù)。
3.計算資源:
-服務(wù)器配置:
-CPU:建議采用多核架構(gòu),單個節(jié)點2U/4核(或更高配置),核心數(shù)需滿足應(yīng)用CPU占用量估算(可通過歷史監(jiān)控數(shù)據(jù)或Yelp性能測試估算)。
-內(nèi)存:建議內(nèi)存16GB起步,根據(jù)應(yīng)用內(nèi)存需求(如JavaJVM堆大?。┡渲?,預(yù)留2GB以上系統(tǒng)內(nèi)存。
-存儲介質(zhì):使用SSD硬盤(如NVMe或SATASSD),單個節(jié)點至少配置1TBSSD用于系統(tǒng)盤和容器運行時,剩余容量分配給持久卷。
-節(jié)點規(guī)劃:
-Master節(jié)點:建議配置不低于Worker節(jié)點的計算資源,并部署多Master高可用集群(如3個Master節(jié)點),避免單點故障。
-Worker節(jié)點:數(shù)量根據(jù)業(yè)務(wù)負(fù)載彈性規(guī)劃,建議至少3個節(jié)點,部署在可用區(qū)(AvailabilityZone)內(nèi)隔離硬件故障風(fēng)險。
-資源配額:預(yù)留節(jié)點10%-15%資源(CPU/內(nèi)存)作為系統(tǒng)冗余,避免因資源耗盡導(dǎo)致集群不穩(wěn)定。
(二)部署流程
1.基礎(chǔ)設(shè)施搭建:
-網(wǎng)絡(luò)準(zhǔn)備:
-配置節(jié)點網(wǎng)絡(luò)接口(eth0)IP地址,確保所有節(jié)點在私有網(wǎng)段內(nèi)通信。
-安裝Calico或Flannel等CNI(容器網(wǎng)絡(luò)接口)插件,配置Pod網(wǎng)絡(luò)互通規(guī)則。
-組件安裝:
-安裝順序:
1.安裝Docker(推薦使用DockerEngine19.03+,開啟Swarm模式或獨立運行模式)。
2.安裝etcd(集群版,3個節(jié)點以上,配置數(shù)據(jù)持久化)。
3.初始化Master節(jié)點:`kubeadminit--pod-network-cidr=10.244.0.0/16`(示例CIDR,需與CNI插件匹配)。
4.加入Worker節(jié)點:`kubeadmjoin<master-ip>:<master-port>--token<token>--discovery-token-ca-cert-hashsha256:<hash>`。
-高可用配置:
-使用KubernetesOperator(如Rancher或KubeSphere)管理集群,自動處理節(jié)點故障切換。
-配置多個etcd集群副本,使用HAProxy或Keepalived實現(xiàn)負(fù)載均衡。
2.容器鏡像管理:
-鏡像倉庫選擇:
-公共鏡像:使用DockerHub(訪問速度快但需注意鏡像安全)。
-私有鏡像:推薦使用Harbor(開源企業(yè)級鏡像倉庫),部署在集群內(nèi)或隔離網(wǎng)絡(luò)區(qū)域。
-鏡像掃描與安全:
-自動化掃描:在鏡像構(gòu)建流程中集成Trivy或Clair掃描工具,檢測漏洞等級(Critical/High/Medium/Low)。
-策略配置:禁止使用存在Critical或High級別漏洞的鏡像,高危漏洞需修復(fù)后方可部署。
-鏡像緩存:在CI/CD流水線中配置鏡像緩存服務(wù)器(如Artifactory),加速構(gòu)建速度。
3.應(yīng)用部署:
-資源定義:使用KubernetesYAML文件標(biāo)準(zhǔn)化定義資源,包括:
-Pod:容器規(guī)格(image、ports、env、livenessProbe等)。
-Service:服務(wù)類型(ClusterIP/NodePort/LoadBalancer)及選擇器。
-Deployment:副本數(shù)、滾動更新策略(maxUnavailable/maxSurge)。
-Ingress:路由規(guī)則、TLS證書管理(推薦Cert-Manager自動簽發(fā))。
-Helm工具應(yīng)用:
-Chart開發(fā):將復(fù)雜應(yīng)用打包為HelmChart(包含values.yaml和Chart.yaml等文件)。
-部署命令:`helminstallmyapp./myapp-chart-nproduction--valuescustom-values.yaml`。
-升級與回滾:`helmupgrademyapp./myapp-chart--install`,`helmrollbackmyapp1`(回滾到上一個版本)。
三、運維管理
(一)監(jiān)控與告警
1.監(jiān)控系統(tǒng)配置:
-Prometheus+Grafana部署:
-Prometheus:
-配置Scrape配置,監(jiān)控KubernetesAPIServer、etcd、Node、Kubelet、Cadvisor等核心組件。
-設(shè)置Alertmanager,配置郵件、Webhook(如集成釘釘/企業(yè)微信)等告警通知方式。
-Grafana:
-導(dǎo)入Kubernetes官方模板,自定義儀表盤展示關(guān)鍵指標(biāo)(如Pod資源使用率、網(wǎng)絡(luò)流量、磁盤I/O)。
-自定義監(jiān)控:
-使用`kubectl`執(zhí)行`curl`或`dockerstats`命令,通過PrometheusExporter暴露自定義指標(biāo)。
-示例:監(jiān)控應(yīng)用JVM內(nèi)存GC頻率。
2.日志管理:
-ELK部署:
-Elasticsearch:配置3個節(jié)點集群,開啟分片和副本,避免單點瓶頸。
-Logstash:編寫Input(File/Beats)、Filter(Json解析、ESLint)、Output(Elasticsearch)配置。
-Kibana:配置索引模板,創(chuàng)建可視化面板(Dashboard)。
-Fluentd集成:
-在容器中部署Fluentd,配置日志收集源(如JVM日志、Node信息),輸出至ELK或阿里云LogService。
(二)安全運維
1.訪問控制:
-RBAC配置:
-默認(rèn)策略:禁用`cluster-admin`權(quán)限,創(chuàng)建`admin`組(授予所有權(quán)限),按需分配用戶角色。
-示例:
```yaml
apiVersion:rbac.authorization.k8s.io/v1
kind:Role
metadata:
namespace:default
name:deployment-manager
rules:
-apiGroups:["apps"]
resources:["deployments"]
verbs:["get","list","watch","create","update","patch","delete"]
---
apiVersion:rbac.authorization.k8s.io/v1
kind:RoleBinding
metadata:
name:admin-binding
namespace:default
subjects:
-kind:User
name:operator
apiGroup:rbac.authorization.k8s.io
roleRef:
kind:Role
name:admin
apiGroup:rbac.authorization.k8s.io
```
-Kube-RBAC審計:
-啟用審計日志:`kubectlpatchcm-nkube-system-naudit-config--typemerge-p'{"data":{"auditLogPolicy":"true"}}'`。
-日志存儲:配置Elasticsearch索引,定期審查高風(fēng)險操作。
2.網(wǎng)絡(luò)隔離:
-NetworkPolicy應(yīng)用:
-示例:限制數(shù)據(jù)庫Pod僅能與前端服務(wù)通信,禁止跨Pod訪問。
```yaml
apiVersion:networking.k8s.io/v1
kind:NetworkPolicy
metadata:
name:db-policy
namespace:default
spec:
podSelector:
matchLabels:
app:database
policyTypes:
-Ingress
-Egress
ingress:
-from:
-podSelector:
matchLabels:
app:frontend
egress:
-to:
-podSelector:
matchLabels:
app:frontend
```
-PodSecurityPolicies(PSP):
-規(guī)則示例:
-禁止容器以root用戶運行。
-限制容器寫入宿主機文件系統(tǒng)(如`/etc`、`/var/run`)。
-配置內(nèi)存和CPU使用上限。
3.定期維護:
-版本更新:
-更新周期:核心組件(etcd、kubelet、kubeadm)每季度檢查更新,非核心組件(CNI、監(jiān)控)每半年評估。
-測試流程:
1.在測試集群驗證新版本穩(wěn)定性。
2.制定回滾計劃:`kubectlrolloutundodeployment/myapp`。
3.生產(chǎn)環(huán)境分批次升級(如先升級部分Worker節(jié)點)。
-安全掃描:
-工具:使用Kube-Hunter或Kube-Bench進行滲透測試,識別配置漏洞。
-頻率:每季度執(zhí)行一次,高風(fēng)險問題需72小時內(nèi)修復(fù)。
(三)備份與恢復(fù)
1.數(shù)據(jù)備份:
-持久卷備份:
-使用`kubectlvolume-snapshot-controller`創(chuàng)建PV快照,通過云服務(wù)商備份服務(wù)(如AWSS3)存儲。
-策略:每日增量備份,每周全量備份,保留最近30天增量+最近7天全量。
-ETCD備份:
-手動備份:`etcdctlsnapshotsave/path/to/snapshot`。
-自動備份:配置cronjob定期執(zhí)行備份,存儲在安全位置。
2.恢復(fù)流程:
-步驟:
1.停止集群:`kubectldrainall`逐個驅(qū)逐節(jié)點,停止Master服務(wù)。
2.重置Master:`kubeadmreset--force`清除殘留配置,重新執(zhí)行`kubeadminit`。
3.恢復(fù)ETCD:`etcdctlsnapshotrestore/path/to/snapshot`,更新`kubelet`配置指向新etcd。
4.恢復(fù)PV:重建PVC,從備份卷恢復(fù)數(shù)據(jù)。
5.加入節(jié)點:`kubectljoin<new-master-ip>`。
6.驗證:檢查Pod狀態(tài),執(zhí)行`kubectlgetpods-A`確認(rèn)服務(wù)恢復(fù)。
-演練:每半年進行完整恢復(fù)演練,記錄耗時和問題點。
四、操作規(guī)范
(一)部署操作步驟
1.準(zhǔn)備階段:
-硬件檢查:
-確認(rèn)服務(wù)器CPU/內(nèi)存/硬盤規(guī)格符合要求(參考二(一)3)。
-檢查網(wǎng)絡(luò)連通性:`ping`Master節(jié)點IP,`ssh`登錄節(jié)點。
-軟件安裝:
-更新系統(tǒng):`yumupdate-y`(CentOS)或`aptupdate&&aptupgrade-y`(Ubuntu)。
-安裝依賴:`yuminstall-ydocker.iovimnet-tools`。
-安裝Docker:`systemctlstartdocker`,`dockerinfo`確認(rèn)版本。
2.集群部署:
-Master初始化:
-執(zhí)行`kubeadminit--pod-network-cidr=10.244.0.0/16`,記錄輸出中的`kubeadmjoin`命令和`token`。
-配置kubectl:`sudomkdir-p/home/user/.kube&&sudocp-i/etc/kubernetes/admin.conf/home/user/.kube/config&&sudochownuser:user/home/user/.kube/config`。
-Worker加入:
-在Worker節(jié)點執(zhí)行`sudokubeadmjoin<master-ip>:<master-port>--token<token>--discovery-token-ca-cert-hashsha256:<hash>`。
-檢查加入狀態(tài):`kubectlgetnodes`。
3.應(yīng)用發(fā)布:
-編寫YAML:創(chuàng)建`deployment.yaml`,包含Pod定義(image、ports等)。
-應(yīng)用部署:
-`kubectlapply-fdeployment.yaml`。
-驗證:`kubectlgetpods-ndefault`,等待Pod狀態(tài)變?yōu)閌Running`。
-服務(wù)暴露:
-創(chuàng)建Service:`kubectlexposedeployment/myapp--type=LoadBalancer--port=80`。
-獲取外部IP:`kubectlgetsvcmyapp-ndefault`。
(二)日常運維操作
1.資源擴縮容:
-擴容步驟:
1.計算目標(biāo)副本數(shù)(如需5個副本)。
2.執(zhí)行:`kubectlscaledeployment/myapp--replicas=5`。
3.監(jiān)控資源使用率變化(Prometheus)。
-自動擴容(HPA):
-創(chuàng)建HPA:
```yaml
apiVersion:autoscaling/v2beta2
kind:HorizontalPodAutoscaler
metadata:
name:myapp-hpa
namespace:default
spec:
scaleTargetRef:
apiVersion:apps/v1
kind:Deployment
name:myapp
minReplicas:1
maxReplicas:10
metrics:
-type:Resource
resource:
name:cpu
target:
type:Utilization
averageUtilization:80
```
-保存:`kubectlapply-fhpa.yaml`。
2.日志查看:
-實時日志:
-`kubectllogs-fdeployment/myapp-5f6c7d8b9-ndefault`(顯示最新日志,持續(xù)刷新)。
-`kubectllogsdeployment/myapp-5f6c7d8b9-ndefault`(顯示歷史日志)。
-歷史日志:
-`kubectllogsdeployment/myapp-5f6c7d8b9--previous-ndefault`(查看前一個Pod的日志)。
-按標(biāo)簽查詢:`kubectllogs-lapp=myapp-ndefault`。
3.故障處理:
-Pod無法拉起:
-檢查Docker服務(wù):`systemctlstatusdocker`。
-檢查鏡像:`dockerps-a`,確認(rèn)鏡像是否存在。
-查看Pod事件:`kubectldescribepod/myapp-5f6c7d8b9-ndefault`。
-網(wǎng)絡(luò)問題:
-檢查CNI插件狀態(tài):`kubectlgetpods-nkube-system-lapp=kube-proxy`。
-測試Pod間連通性:`kubectlexec-itpod-name--pingpod-ip`。
-應(yīng)急措施:
-回滾部署:`kubectlrolloutundodeployment/myapp`(僅限D(zhuǎn)eployment/RollingUpdate)。
-驅(qū)逐節(jié)點:`kubectldrainnode-name`(安全移除節(jié)點,用于維護)。
-重啟Pod:`kubectldeletepod/myapp-5f6c7d8b9-ndefault`(強制重啟)。
(三)故障處理進階
1.復(fù)雜故障排查:
-步驟:
1.收集信息:
-Pod日志(`kubectllogs`)。
-Pod事件(`kubectldescribepod`)。
-Node狀態(tài)(`kubectlgetnodes-owide`)。
-APIServer日志(可通過`kubectlexec`進入Master節(jié)點查看)。
2.定位問題:
-檢查etcd狀態(tài):`etcdctlendpointhealth`。
-檢查網(wǎng)絡(luò)策略沖突:`kubectlgetnetworkpolicy-A`。
-使用`kubectlexec`進入容器內(nèi)測試命令(如`curllocalhost:<port>`)。
3.解決方案:
-鏡像問題:刪除問題Pod,重新創(chuàng)建。
-配置錯誤:修正YAML文件,`kubectlapply-fcorrected.yaml`。
-資源不足:擴大節(jié)點資源或調(diào)整Pod請求(`requests`)。
2.災(zāi)難恢復(fù)預(yù)案:
-觸發(fā)條件:Master節(jié)點全部宕機、數(shù)據(jù)存儲損壞。
-執(zhí)行步驟:
1.啟動備用Master(需提前準(zhǔn)備)。
2.恢復(fù)ETCD數(shù)據(jù)(從備份恢復(fù))。
3.重啟所有Worker節(jié)點。
4.應(yīng)用備份數(shù)據(jù)(數(shù)據(jù)庫、配置文件等)。
-驗證:
-檢查所有服務(wù)可用性:`kubectlgetsvc-A`。
-業(yè)務(wù)功能測試(如用戶登錄、數(shù)據(jù)寫入)。
五、文檔管理
1.版本記錄:
-格式:`YYYY-MM-DD-版本號-修改內(nèi)容`。
-示例:`2023-10-27-v1.2-補充HPA自動擴容配置,優(yōu)化故障處理步驟`。
-存儲:保存文檔歷史版本在版本控制系統(tǒng)(如Git)中。
2.責(zé)任分配:
-運維團隊:負(fù)責(zé)集群日常監(jiān)控、維護、故障處理。
-開發(fā)團隊:負(fù)責(zé)應(yīng)用鏡像構(gòu)建、業(yè)務(wù)邏輯維護、配合排查應(yīng)用級問題。
-安全團隊:負(fù)責(zé)定期安全審計、漏洞掃描、策略優(yōu)化。
本規(guī)定為容器云環(huán)境的標(biāo)準(zhǔn)化操作指南,旨在提升運維效率與系統(tǒng)穩(wěn)定性。各環(huán)節(jié)操作需嚴(yán)格遵守,如有未覆蓋場景,需提交技術(shù)委員會評估后補充。
一、概述
容器云是一種基于容器技術(shù)的云計算服務(wù)模式,通過虛擬化容器實現(xiàn)應(yīng)用的快速部署、擴展和管理。為確保容器云環(huán)境的高效、穩(wěn)定運行,制定本部署運維規(guī)定,規(guī)范容器云的部署、配置、監(jiān)控、維護等環(huán)節(jié)。
二、部署要求
(一)環(huán)境準(zhǔn)備
1.網(wǎng)絡(luò)配置:
-物理網(wǎng)絡(luò)帶寬不低于1Gbps,虛擬網(wǎng)絡(luò)延遲低于10ms。
-配置VPC(虛擬私有云)子網(wǎng),劃分公共網(wǎng)段和私有網(wǎng)段。
2.存儲配置:
-使用分布式存儲系統(tǒng)(如Ceph或NFS),存儲容量不低于500GB,IOPS不低于5000。
-配置快照和備份機制,每日自動備份核心數(shù)據(jù)。
3.計算資源:
-服務(wù)器配置:2U/4核/16GB內(nèi)存,SSD硬盤。
-容器節(jié)點數(shù)量根據(jù)業(yè)務(wù)需求配置,建議不少于3個節(jié)點。
(二)部署流程
1.基礎(chǔ)設(shè)施搭建:
-安裝Kubernetes集群管理組件(如etcd、kube-apiserver、kube-scheduler)。
-配置高可用集群,啟用多Master模式。
2.容器鏡像管理:
-使用DockerHub或私有鏡像倉庫(如Harbor)管理鏡像。
-鏡像掃描:部署前進行安全漏洞掃描,禁止使用高危漏洞鏡像。
3.應(yīng)用部署:
-編寫Kubernetes部署文件(YAML),定義Pod、Service、Ingress等資源。
-使用Helm工具進行應(yīng)用包管理,簡化部署流程。
三、運維管理
(一)監(jiān)控與告警
1.監(jiān)控系統(tǒng)配置:
-部署Prometheus+Grafana監(jiān)控系統(tǒng),采集CPU、內(nèi)存、網(wǎng)絡(luò)、磁盤等指標(biāo)。
-設(shè)置告警規(guī)則,關(guān)鍵指標(biāo)(如CPU使用率>90%)觸發(fā)短信或郵件告警。
2.日志管理:
-使用ELK(Elasticsearch+Logstash+Kibana)或Fluentd收集容器日志。
-日志分級存儲,核心日志保留30天,普通日志保留7天。
(二)安全運維
1.訪問控制:
-配置RBAC(基于角色的訪問控制),限制用戶操作權(quán)限。
-使用Kube-RBAC審計日志,記錄所有API調(diào)用。
2.網(wǎng)絡(luò)隔離:
-啟用NetworkPolicy,限制Pod間通信范圍。
-使用PodSecurityPolicies(PSP)約束容器運行時行為。
3.定期維護:
-每月更新集群組件版本,修復(fù)已知漏洞。
-每季度進行安全滲透測試,評估系統(tǒng)風(fēng)險。
(三)備份與恢復(fù)
1.數(shù)據(jù)備份:
-使用KubernetesVolumeSnapshots功能,對持久卷(PV)進行快照。
-每日備份ETCD數(shù)據(jù),存儲在異地存儲系統(tǒng)。
2.恢復(fù)流程:
-編寫恢復(fù)腳本,實現(xiàn)集群快速回滾。
-定期模擬災(zāi)難恢復(fù)演練,驗證備份有效性。
四、操作規(guī)范
(一)部署操作步驟
1.準(zhǔn)備階段:
-檢查服務(wù)器硬件和操作系統(tǒng)版本。
-安裝Docker和Kubernetes客戶端工具。
2.集群部署:
-執(zhí)行`kubeadminit`初始化Master節(jié)點。
-使用`kubeadmjoin`命令加入Worker節(jié)點。
3.應(yīng)用發(fā)布:
-推送容器鏡像至鏡像倉庫。
-應(yīng)用部署命令:`kubectlapply-fdeployment.yaml`。
(二)日常運維操作
1.資源擴縮容:
-擴容命令:`kubectlscaledeployment/myapp--replicas=5`。
-自動擴容:配置HPA(HorizontalPodAutoscaler)根據(jù)負(fù)載調(diào)整Pod數(shù)量。
2.日志查看:
-命令:`kubectllogs-fdeployment/myapp-ndefault`。
-查看歷史日志:`kubectllogs--previousdeployment/myapp-ndefault`。
(三)故障處理
1.常見問題排查:
-Pod無法拉起:檢查Docker服務(wù)、鏡像拉取權(quán)限。
-網(wǎng)絡(luò)問題:檢查CNI插件配置、Pod網(wǎng)絡(luò)連通性。
2.應(yīng)急措施:
-快速回滾:使用`kubectlrolloutundo`回滾部署版本。
-節(jié)點重啟:執(zhí)行`kubectldrainnode-name`安全驅(qū)逐節(jié)點。
五、文檔管理
1.版本記錄:
-每次更新需記錄修改內(nèi)容、版本號、發(fā)布日期。
-保存歷史版本,便于追溯變更。
2.責(zé)任分配:
-運維團隊負(fù)責(zé)日常監(jiān)控和故障處理。
-開發(fā)團隊負(fù)責(zé)應(yīng)用鏡像構(gòu)建和業(yè)務(wù)邏輯維護。
本規(guī)定適用于所有容器云環(huán)境的部署與運維工作,確保系統(tǒng)穩(wěn)定性和安全性。如需調(diào)整,需經(jīng)技術(shù)委員會審核通過后執(zhí)行。
---
一、概述
容器云是一種基于容器技術(shù)的云計算服務(wù)模式,通過虛擬化容器實現(xiàn)應(yīng)用的快速部署、擴展和管理。為確保容器云環(huán)境的高效、穩(wěn)定運行,制定本部署運維規(guī)定,規(guī)范容器云的部署、配置、監(jiān)控、維護等環(huán)節(jié)。本規(guī)定旨在提升資源利用率,保障業(yè)務(wù)連續(xù)性,簡化運維復(fù)雜度,并為操作人員提供標(biāo)準(zhǔn)化流程。
二、部署要求
(一)環(huán)境準(zhǔn)備
1.網(wǎng)絡(luò)配置:
-物理網(wǎng)絡(luò)帶寬:根據(jù)業(yè)務(wù)峰值流量需求配置,建議物理網(wǎng)絡(luò)帶寬不低于1Gbps,以支持高并發(fā)訪問。若節(jié)點數(shù)量較多或應(yīng)用對網(wǎng)絡(luò)延遲敏感,建議采用10Gbps或更高帶寬。
-虛擬網(wǎng)絡(luò)延遲:優(yōu)化網(wǎng)絡(luò)設(shè)備(交換機、路由器)配置,確保內(nèi)部網(wǎng)絡(luò)延遲低于10ms,可通過網(wǎng)絡(luò)抓包工具(如Wireshark)進行測試驗證。
-VPC(虛擬私有云)子網(wǎng)劃分:
-公共網(wǎng)段:用于部署需要對外暴露的服務(wù)(如負(fù)載均衡器、NginxIngress),配置安全組規(guī)則限制訪問來源。
-私有網(wǎng)段:用于內(nèi)部服務(wù)通信和核心業(yè)務(wù)部署,禁止直接公網(wǎng)訪問,通過VPCPeering或VPN實現(xiàn)跨賬戶或跨地域通信(若適用)。
-DNS配置:集群內(nèi)部使用CoreDNS或微調(diào)署的DNS服務(wù),確保服務(wù)發(fā)現(xiàn)可靠。
2.存儲配置:
-分布式存儲系統(tǒng):
-類型選擇:推薦使用Ceph或NFS,Ceph支持塊存儲、文件存儲和對象存儲,具備高可用性和彈性擴展能力;NFS適用于需要共享文件系統(tǒng)的場景。
-容量規(guī)劃:
-計算公式:`總?cè)萘?(單個應(yīng)用存儲需求應(yīng)用數(shù)量)+(系統(tǒng)緩存節(jié)點數(shù)量)+(冗余空間1.5)`。
-示例:若單個應(yīng)用存儲需求為100GB,部署10個應(yīng)用,節(jié)點數(shù)量為3,系統(tǒng)緩存按50GB/節(jié)點計算,則總?cè)萘恐辽贋閌(100GB10)+(50GB3)+(總?cè)萘?.5)`解得總?cè)萘考s需1100GB,建議配置至少2TB存儲。
-IOPS需求:根據(jù)應(yīng)用類型確定,數(shù)據(jù)庫類應(yīng)用(如MySQL)建議IOPS不低于5000,通用應(yīng)用不低于2000??赏ㄟ^壓力測試工具(如IOzone)模擬驗證。
-快照與備份機制:
-備份頻率:核心數(shù)據(jù)每日全量備份,非核心數(shù)據(jù)每周備份。
-備份策略:采用增量備份結(jié)合全量備份的方式,降低存儲壓力。
-存儲位置:備份數(shù)據(jù)存儲在異地存儲系統(tǒng)(如S3兼容對象存儲)或物理備份設(shè)備,確保災(zāi)難場景下可恢復(fù)。
3.計算資源:
-服務(wù)器配置:
-CPU:建議采用多核架構(gòu),單個節(jié)點2U/4核(或更高配置),核心數(shù)需滿足應(yīng)用CPU占用量估算(可通過歷史監(jiān)控數(shù)據(jù)或Yelp性能測試估算)。
-內(nèi)存:建議內(nèi)存16GB起步,根據(jù)應(yīng)用內(nèi)存需求(如JavaJVM堆大小)配置,預(yù)留2GB以上系統(tǒng)內(nèi)存。
-存儲介質(zhì):使用SSD硬盤(如NVMe或SATASSD),單個節(jié)點至少配置1TBSSD用于系統(tǒng)盤和容器運行時,剩余容量分配給持久卷。
-節(jié)點規(guī)劃:
-Master節(jié)點:建議配置不低于Worker節(jié)點的計算資源,并部署多Master高可用集群(如3個Master節(jié)點),避免單點故障。
-Worker節(jié)點:數(shù)量根據(jù)業(yè)務(wù)負(fù)載彈性規(guī)劃,建議至少3個節(jié)點,部署在可用區(qū)(AvailabilityZone)內(nèi)隔離硬件故障風(fēng)險。
-資源配額:預(yù)留節(jié)點10%-15%資源(CPU/內(nèi)存)作為系統(tǒng)冗余,避免因資源耗盡導(dǎo)致集群不穩(wěn)定。
(二)部署流程
1.基礎(chǔ)設(shè)施搭建:
-網(wǎng)絡(luò)準(zhǔn)備:
-配置節(jié)點網(wǎng)絡(luò)接口(eth0)IP地址,確保所有節(jié)點在私有網(wǎng)段內(nèi)通信。
-安裝Calico或Flannel等CNI(容器網(wǎng)絡(luò)接口)插件,配置Pod網(wǎng)絡(luò)互通規(guī)則。
-組件安裝:
-安裝順序:
1.安裝Docker(推薦使用DockerEngine19.03+,開啟Swarm模式或獨立運行模式)。
2.安裝etcd(集群版,3個節(jié)點以上,配置數(shù)據(jù)持久化)。
3.初始化Master節(jié)點:`kubeadminit--pod-network-cidr=10.244.0.0/16`(示例CIDR,需與CNI插件匹配)。
4.加入Worker節(jié)點:`kubeadmjoin<master-ip>:<master-port>--token<token>--discovery-token-ca-cert-hashsha256:<hash>`。
-高可用配置:
-使用KubernetesOperator(如Rancher或KubeSphere)管理集群,自動處理節(jié)點故障切換。
-配置多個etcd集群副本,使用HAProxy或Keepalived實現(xiàn)負(fù)載均衡。
2.容器鏡像管理:
-鏡像倉庫選擇:
-公共鏡像:使用DockerHub(訪問速度快但需注意鏡像安全)。
-私有鏡像:推薦使用Harbor(開源企業(yè)級鏡像倉庫),部署在集群內(nèi)或隔離網(wǎng)絡(luò)區(qū)域。
-鏡像掃描與安全:
-自動化掃描:在鏡像構(gòu)建流程中集成Trivy或Clair掃描工具,檢測漏洞等級(Critical/High/Medium/Low)。
-策略配置:禁止使用存在Critical或High級別漏洞的鏡像,高危漏洞需修復(fù)后方可部署。
-鏡像緩存:在CI/CD流水線中配置鏡像緩存服務(wù)器(如Artifactory),加速構(gòu)建速度。
3.應(yīng)用部署:
-資源定義:使用KubernetesYAML文件標(biāo)準(zhǔn)化定義資源,包括:
-Pod:容器規(guī)格(image、ports、env、livenessProbe等)。
-Service:服務(wù)類型(ClusterIP/NodePort/LoadBalancer)及選擇器。
-Deployment:副本數(shù)、滾動更新策略(maxUnavailable/maxSurge)。
-Ingress:路由規(guī)則、TLS證書管理(推薦Cert-Manager自動簽發(fā))。
-Helm工具應(yīng)用:
-Chart開發(fā):將復(fù)雜應(yīng)用打包為HelmChart(包含values.yaml和Chart.yaml等文件)。
-部署命令:`helminstallmyapp./myapp-chart-nproduction--valuescustom-values.yaml`。
-升級與回滾:`helmupgrademyapp./myapp-chart--install`,`helmrollbackmyapp1`(回滾到上一個版本)。
三、運維管理
(一)監(jiān)控與告警
1.監(jiān)控系統(tǒng)配置:
-Prometheus+Grafana部署:
-Prometheus:
-配置Scrape配置,監(jiān)控KubernetesAPIServer、etcd、Node、Kubelet、Cadvisor等核心組件。
-設(shè)置Alertmanager,配置郵件、Webhook(如集成釘釘/企業(yè)微信)等告警通知方式。
-Grafana:
-導(dǎo)入Kubernetes官方模板,自定義儀表盤展示關(guān)鍵指標(biāo)(如Pod資源使用率、網(wǎng)絡(luò)流量、磁盤I/O)。
-自定義監(jiān)控:
-使用`kubectl`執(zhí)行`curl`或`dockerstats`命令,通過PrometheusExporter暴露自定義指標(biāo)。
-示例:監(jiān)控應(yīng)用JVM內(nèi)存GC頻率。
2.日志管理:
-ELK部署:
-Elasticsearch:配置3個節(jié)點集群,開啟分片和副本,避免單點瓶頸。
-Logstash:編寫Input(File/Beats)、Filter(Json解析、ESLint)、Output(Elasticsearch)配置。
-Kibana:配置索引模板,創(chuàng)建可視化面板(Dashboard)。
-Fluentd集成:
-在容器中部署Fluentd,配置日志收集源(如JVM日志、Node信息),輸出至ELK或阿里云LogService。
(二)安全運維
1.訪問控制:
-RBAC配置:
-默認(rèn)策略:禁用`cluster-admin`權(quán)限,創(chuàng)建`admin`組(授予所有權(quán)限),按需分配用戶角色。
-示例:
```yaml
apiVersion:rbac.authorization.k8s.io/v1
kind:Role
metadata:
namespace:default
name:deployment-manager
rules:
-apiGroups:["apps"]
resources:["deployments"]
verbs:["get","list","watch","create","update","patch","delete"]
---
apiVersion:rbac.authorization.k8s.io/v1
kind:RoleBinding
metadata:
name:admin-binding
namespace:default
subjects:
-kind:User
name:operator
apiGroup:rbac.authorization.k8s.io
roleRef:
kind:Role
name:admin
apiGroup:rbac.authorization.k8s.io
```
-Kube-RBAC審計:
-啟用審計日志:`kubectlpatchcm-nkube-system-naudit-config--typemerge-p'{"data":{"auditLogPolicy":"true"}}'`。
-日志存儲:配置Elasticsearch索引,定期審查高風(fēng)險操作。
2.網(wǎng)絡(luò)隔離:
-NetworkPolicy應(yīng)用:
-示例:限制數(shù)據(jù)庫Pod僅能與前端服務(wù)通信,禁止跨Pod訪問。
```yaml
apiVersion:networking.k8s.io/v1
kind:NetworkPolicy
metadata:
name:db-policy
namespace:default
spec:
podSelector:
matchLabels:
app:database
policyTypes:
-Ingress
-Egress
ingress:
-from:
-podSelector:
matchLabels:
app:frontend
egress:
-to:
-podSelector:
matchLabels:
app:frontend
```
-PodSecurityPolicies(PSP):
-規(guī)則示例:
-禁止容器以root用戶運行。
-限制容器寫入宿主機文件系統(tǒng)(如`/etc`、`/var/run`)。
-配置內(nèi)存和CPU使用上限。
3.定期維護:
-版本更新:
-更新周期:核心組件(etcd、kubelet、kubeadm)每季度檢查更新,非核心組件(CNI、監(jiān)控)每半年評估。
-測試流程:
1.在測試集群驗證新版本穩(wěn)定性。
2.制定回滾計劃:`kubectlrolloutundodeployment/myapp`。
3.生產(chǎn)環(huán)境分批次升級(如先升級部分Worker節(jié)點)。
-安全掃描:
-工具:使用Kube-Hunter或Kube-Bench進行滲透測試,識別配置漏洞。
-頻率:每季度執(zhí)行一次,高風(fēng)險問題需72小時內(nèi)修復(fù)。
(三)備份與恢復(fù)
1.數(shù)據(jù)備份:
-持久卷備份:
-使用`kubectlvolume-snapshot-controller`創(chuàng)建PV快照,通過云服務(wù)商備份服務(wù)(如AWSS3)存儲。
-策略:每日增量備份,每周全量備份,保留最近30天增量+最近7天全量。
-ETCD備份:
-手動備份:`etcdctlsnapshotsave/path/to/snapshot`。
-自動備份:配置cronjob定期執(zhí)行備份,存儲在安全位置。
2.恢復(fù)流程:
-步驟:
1.停止集群:`kubectldrainall`逐個驅(qū)逐節(jié)點,停止Master服務(wù)。
2.重置Master:`kubeadmreset--force`清除殘留配置,重新執(zhí)行`kubeadminit`。
3.恢復(fù)ETCD:`etcdctlsnapshotrestore/path/to/snapshot`,更新`kubelet`配置指向新etcd。
4.恢復(fù)PV:重建PVC,從備份卷恢復(fù)數(shù)據(jù)。
5.加入節(jié)點:`kubectljoin<new-master-ip>`。
6.驗證:檢查Pod狀態(tài),執(zhí)行`kubectlgetpods-A`確認(rèn)服務(wù)恢復(fù)。
-演練:每半年進行完整恢復(fù)演練,記錄耗時和問題點。
四、操作規(guī)范
(一)部署操作步驟
1.準(zhǔn)備階段:
-硬件檢查:
-確認(rèn)服務(wù)器CPU/內(nèi)存/硬盤規(guī)格符合要求(參考二(一)3)。
-檢查網(wǎng)絡(luò)連通性:`ping`Master節(jié)點IP,`ssh`登錄節(jié)點。
-軟件安裝:
-更新系統(tǒng):`yumupdate-y`(CentOS)或`aptupdate&&aptupgrade-y`(Ubuntu)。
-安裝依賴:`yuminstall-ydocker.iovimnet-tools`。
-安裝Docker:`systemctlstartdocker`,`dockerinfo`確認(rèn)版本。
2.集群部署:
-Master初始化:
-執(zhí)行`kubeadminit--pod-network-cidr=10.244.0.0/16`,記錄輸出中的`kubeadmjoin`命令和`token`。
-配置kubectl:`sudomkdir-p/home/user/.kube&&sudocp-i/etc/kubernetes/admin.conf/home/user/.kube/config&&sudochownuser:user/home/user/.kube/config`。
-Worker加入:
-在Worker節(jié)點執(zhí)行`sudokubeadmjoin<master-ip>:<master-port>--token<token>--discovery-token-ca-cert-hashsha256:<hash>`。
-檢查加入狀態(tài):`kubectlgetnodes`。
3.應(yīng)用發(fā)布:
-編寫YAML:創(chuàng)建`deployment.yaml`,包含Pod定義(image、ports等)。
-應(yīng)用部署:
-`kubectlapply-fdeployment.yaml`。
-驗證:`kubectlgetpods-ndefault`,等待Pod狀態(tài)變?yōu)閌Running`。
-服務(wù)暴露:
-創(chuàng)建Service:`kubectlexposedeployment/myapp--type=LoadBalancer--port=80`。
-獲取外部IP:`kubectlgetsvcmyapp-ndefault`。
(二)日常運維操作
1.資源擴縮容:
-擴容步驟:
1.計算目標(biāo)副本數(shù)(如需5個副本)。
2.執(zhí)行:`kubectlscaledeployment/myapp--r
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年陜西國防工業(yè)職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)筆試模擬試題含詳細(xì)答案解析
- 2026年青海交通職業(yè)技術(shù)學(xué)院單招職業(yè)技能考試備考題庫含詳細(xì)答案解析
- 2026年安徽揚子職業(yè)技術(shù)學(xué)院單招職業(yè)技能考試備考試題含詳細(xì)答案解析
- 2026廣東湛江市旅游投資集團有限公司招聘1人考試重點題庫及答案解析
- 2026年湘潭醫(yī)衛(wèi)職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)考試備考題庫含詳細(xì)答案解析
- 2026年吐魯番職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)考試參考題庫含詳細(xì)答案解析
- 2026年滁州城市職業(yè)學(xué)院單招綜合素質(zhì)筆試備考試題含詳細(xì)答案解析
- 2026年西南財經(jīng)大學(xué)天府學(xué)院單招綜合素質(zhì)筆試備考題庫含詳細(xì)答案解析
- 2026年贛州職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試備考題庫及答案詳細(xì)解析
- 2026年河北石油職業(yè)技術(shù)大學(xué)單招綜合素質(zhì)筆試備考試題含詳細(xì)答案解析
- 學(xué)校教師情緒管理能力提升
- 2026年及未來5年市場數(shù)據(jù)中國機械式停車設(shè)備行業(yè)市場全景分析及投資戰(zhàn)略規(guī)劃報告
- 泥漿壓濾施工方案(3篇)
- 2026年中國郵政儲蓄銀行招聘試題含答案
- 2025年度電氣工程師述職報告
- 檔案館機房設(shè)施設(shè)備管理制度
- 汽車電器DFMEA-空調(diào)冷暖裝置
- 中注協(xié)財務(wù)報表審計工作底稿(第二版)全文
- 內(nèi)蒙古呼和浩特市2024屆中考數(shù)學(xué)模擬精編試卷含解析
- 班后會記錄表
- 貨物異常報告表
評論
0/150
提交評論