版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
運(yùn)維工程師應(yīng)聘面試題總結(jié)
一、linux
Llinux系統(tǒng)啟動(dòng)流程
?第一步:開機(jī)自檢,加載BIOS
?第二步:讀取MBR
?第三步:BootLoadergrub引導(dǎo)菜單
?第四步:加載kernel內(nèi)核
?第五步:init進(jìn)程依據(jù)inittab文件夾來設(shè)定運(yùn)行級(jí)別
?第六步:init進(jìn)程執(zhí)行rc.sysinit
?第七步:啟動(dòng)內(nèi)核模塊
?第八步:執(zhí)行不同運(yùn)行級(jí)別的腳本程序
?第九步:執(zhí)行/etc/rc.d/rc.l。
2.linux文件類型
--常規(guī)文件,即file
?d目錄文件
?bblockdevice即塊設(shè)備文件,如硬盤;支持以block為單位進(jìn)行隨機(jī)訪
問
?ccharacterdevice即字符設(shè)備文件,如鍵盤支持以character為單位進(jìn)
行線性訪問
?Isymboliclink即符號(hào)鏈接文件,又稱軟鏈接文件
?ppipe即命名管道文件
?ssocket即套接字文件,用于實(shí)現(xiàn)兩個(gè)進(jìn)程進(jìn)行通信
3.centos6和7怎么將源碼安裝的程序添加到開機(jī)自啟動(dòng)?
?通用方法:編輯/etc/rc.d/rc.local文件,在文件末尾添加啟動(dòng)服務(wù)命令
?centos6:①進(jìn)入到/etc/rc.d/init.d目錄下,②新建一個(gè)服務(wù)啟動(dòng)腳本,
腳本中指定chkconfig參數(shù),③添加執(zhí)行權(quán)限,④執(zhí)行chkconfig-add添
加服務(wù)自啟動(dòng)
?centos7:①進(jìn)入到/usr/lib/systemd/system目錄下,②新建自定義服
務(wù)文件,文件中包含[Unit][Service][Install]相關(guān)配置,然后添加下執(zhí)行權(quán)
限,③執(zhí)行systemctlenable服務(wù)名稱
4.簡述Ivm,如何給使用Ivm的/分區(qū)擴(kuò)容?
?功能:可以對(duì)磁盤進(jìn)行動(dòng)態(tài)管理。動(dòng)態(tài)按需調(diào)整大小
?概念:
①PV-物理卷:物理卷在邏輯卷管理中處于最底層,它可以是實(shí)際物理硬盤上
的分區(qū),也可以是整個(gè)物理硬盤,也可以是raid設(shè)備。
②VG-卷組:卷組建立在物理卷之上,一個(gè)卷組中至少要包括一個(gè)物理卷,在
卷組建立之后可動(dòng)態(tài)添加物理卷到卷組中。一個(gè)邏輯卷管理系統(tǒng)工程中可以只有
一個(gè)卷組,也可以擁有多個(gè)卷組。
③LV-邏輯卷:邏輯卷建立在卷組之上,卷組中的未分配空間可以用于建立新
的邏輯卷,邏輯卷建立后可以動(dòng)態(tài)地?cái)U(kuò)展和縮小空間。系統(tǒng)中的多個(gè)邏輯卷可以
屬于同一個(gè)卷組,也可以屬于不同的多個(gè)卷組。
?給/分區(qū)擴(kuò)容步驟:
①添加磁盤
②使用fdisk命令對(duì)新增加的磁盤進(jìn)行分區(qū)
③分區(qū)完成后修改分區(qū)類型為Ivm
④使用pvcreate創(chuàng)建物理卷
⑤使用vgextend命令將新增加的分區(qū)加入到根目錄分區(qū)中
⑥使用Ivextend命令進(jìn)行擴(kuò)容
⑦使用xfs_growfs調(diào)整卷分區(qū)大小
5.為何du和df統(tǒng)計(jì)結(jié)果不一致?
?用戶刪除了大量的文件被刪除后,在文件系統(tǒng)目錄中已經(jīng)不可見了,所以
du就不會(huì)再統(tǒng)計(jì)它。
?然而如果此時(shí)還有運(yùn)行的進(jìn)程持有這個(gè)已經(jīng)被刪除的文件句柄,那么這個(gè)
文件就不會(huì)真正在磁盤中被刪除,分區(qū)超級(jí)塊中的信息也就不會(huì)更改,df
仍會(huì)統(tǒng)計(jì)這個(gè)被刪除的文件。
?可通過Isof命令查詢處于deleted狀態(tài)的文件,被刪除的文件在系統(tǒng)中
被標(biāo)記為deleted。如果系統(tǒng)有大量deleted狀態(tài)的文件,會(huì)導(dǎo)致du和df
統(tǒng)計(jì)結(jié)果不一致。
6.如何升級(jí)內(nèi)核?
?方法一
#添加第三方y(tǒng)um源進(jìn)行下載安裝。
Centos6YUM源:
http://www?/elrepo-release-6-6.el6.elrepo.noarch.rpm
Centos7YUM源:
/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
#先導(dǎo)入elrepo的key,然后安裝elrepo的yum源:
rpm-import/RPM-GPG-KEY-
rpm-Uvh
/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
#查看可用的內(nèi)核相關(guān)包
yum一一disablerep?!?一enablerepo=nelrepo-kernelnlistavailable
yum-y——enablerepo=elrepo-kernelinstall
?方法二
#通過下載kernelimage的rpm包進(jìn)行安裝。
官方Centos6:/linux/kernel/el6/x86_64/RPMS/
官方Centos7:/linux/kernel/el7/x86_64/RPMS/
#獲取下載鏈接進(jìn)行下載安裝即可
wget
/linux/kernel/el7/x86_64/RPMS/kernel-lt-4.4.185
-1.el7.elrepo.x86_64.rpm
rpm-ivhkernel-lt-4.4.185-1.el7.elrepo.x86_64.rp
#查看默認(rèn)啟動(dòng)順序
[root@localhostawk-F\1*$l==nmenuentry”{print$2}'
/etc/grub2.cfg
CentOSLinux(5.2.2-l.el7.elrepo.x86_64)7(Core)
CentOSLinux(4.4.182-l.el7.elrepo.x86_64)7(Core)
CentOSLinux(3.10.0-957.21.3.el7.x86_64)7(Core)
CentOSLinux(3.10.0-957.10.1.el7.x86_64)7(Core)
CentOSLinux(3.10.0-327.el7.x86_64)7(Core)
CentOSLinux(0-rescue-e34fb4f1527b4f2d9fc75b77c016b6e7)7(Core)
由上面可以看出新內(nèi)核(4.12.4)目前位置在0,原來的內(nèi)核(3.10.0)目前位置在1
#設(shè)置默認(rèn)啟動(dòng)
[root@localhost~]#grub2-set-default0//0代表當(dāng)前笫一行,也就是
4.12.4版本
#重啟驗(yàn)證
7.nginx曰志訪問量前十的ip怎么統(tǒng)計(jì)?
awk'{array[$l]++}END{for(ipinarray)printip,array[ip]}'access.log[sort
-k2-rn|head
8.如何刪除/var/log/下Jog結(jié)尾的30天前的日志?
find/var/log/-typef-name.*.log-mtime30|xargsrm-f
9.ansible有哪些模塊?功能是什么?
?copy:拷貝文件到被控端
?cron:定時(shí)任務(wù)
?fetch:拷貝被控端文件到本地
?file:文件模塊
?group:用戶組模塊
?user:用戶模塊
?hostname:主機(jī)名模塊
?script:腳本模塊
?service:服務(wù)啟動(dòng)模塊
?command:遠(yuǎn)程執(zhí)行命令模塊
?shell:遠(yuǎn)程執(zhí)行命令模塊
?yum:安裝包組模塊
?setup:查看主機(jī)系統(tǒng)信息
10.nginx為什么比叩ache快?
?nginx采用epoll模型
?apache采用select模型
11.四層負(fù)載和七層負(fù)載區(qū)別是什么?
?四層基于IP+端口進(jìn)行轉(zhuǎn)發(fā)
七層就是基于URL等應(yīng)用層信息的負(fù)載均衡
12.Ivs有哪些工作模式?哪個(gè)性能高?
?dr:直接路由模式,請(qǐng)求由LVS接受,由真實(shí)提供服務(wù)的服務(wù)器直接返
回給用戶,返回的時(shí)候不經(jīng)過LVSO(性能最高)
?tun:隧道模式,客戶端將訪問vip報(bào)文發(fā)送給LVS服務(wù)器。LVS服務(wù)器
將請(qǐng)求報(bào)文重新封裝,發(fā)送給后端真實(shí)服務(wù)器。后端真實(shí)服務(wù)器將請(qǐng)求報(bào)文
解封,在確認(rèn)自身有vip之后進(jìn)行請(qǐng)求處理。后端真實(shí)服務(wù)器在處理完數(shù)據(jù)
請(qǐng)求后,直接響應(yīng)客戶端。
?nat:網(wǎng)絡(luò)報(bào)的進(jìn)出都要經(jīng)過LVS的處理。LVS需要作為RS的網(wǎng)關(guān)。
當(dāng)包到達(dá)LVS時(shí),LVS做目標(biāo)地址轉(zhuǎn)換(DNAT),將目標(biāo)IP改為RS的
IPoRS接收到包以后,仿佛是客戶端直接發(fā)給它的一樣。RS處理完,返
回響應(yīng)時(shí),源IP是RSIP,目標(biāo)IP是客戶端的IP。這時(shí)RS的包通過
網(wǎng)關(guān)(LVS)中轉(zhuǎn),LVS會(huì)做源地址轉(zhuǎn)換(SNAT),將包的源地址改為VIP,
這樣,這個(gè)包對(duì)客戶端看起來就仿佛是LVS直接返回給它的??蛻舳藷o法
感知到后端RS的存在。
?fullnat模式:fullnat模式和nat模式相似,但是與nat不同的是nat模
式只做了兩次地址轉(zhuǎn)換,fullnat模式卻做了四次。
13.Ivsnginxhaproxykeeplived區(qū)別,優(yōu)缺點(diǎn)?
這個(gè)自行百度吧,我就不信在這細(xì)說了
14.如下url地址,各個(gè)部分的含義
/s?word=123&ie=utf-8
?https:使用https加密協(xié)議訪問
?/s:請(qǐng)求地址
??word&ie=utf-8:get請(qǐng)求的參數(shù),多個(gè)參數(shù)&連接
15.tomcat各個(gè)目錄含義,如何修改端口,如何修改內(nèi)存數(shù)?
?bin存放tomcat命令
?conf存放tomcat配置文件
?lib存放tomcat運(yùn)行需要加載的jar包
?log存在Tomcat運(yùn)行產(chǎn)生的日志
?temp運(yùn)行過程中產(chǎn)生的臨時(shí)文件
?web叩ps站點(diǎn)目錄
?work存放tomcat運(yùn)行時(shí)的編譯后的文件
?conf/server.xml修改端口號(hào)
?bin/catalina.sh修改jvm內(nèi)存
16.nginx反向代理時(shí),如何使后端獲取真正的訪問來源ip?
在location配置段添加以下內(nèi)容:
proxy_set_headerHost$http_host;proxy_set_headerX-Real-IP
$remote_addr;proxy_set_headerX-Forwarded-For
$proxy_add__x__forwarded_for;proxy_set_headerX-Forwarded-Proto
$scheme;
17.nginx負(fù)載均衡算法有哪些?
rr輪訓(xùn)I
?weight加權(quán)輪訓(xùn)
?ip_hash靜態(tài)調(diào)度算法
?fair動(dòng)態(tài)調(diào)度算法
?url_hashurl哈希
?leat_conn最小連接數(shù)
18.如何進(jìn)行壓力測(cè)試?
例如:模擬10個(gè)用戶,對(duì)百度首頁發(fā)起總共100次請(qǐng)求。
測(cè)試命令:ab-n100-c10/index.htm
19.curl命令如何發(fā)送https請(qǐng)求?如何蟄看response頭信息?如何發(fā)送get
和post表單信息?
?發(fā)送https請(qǐng)求:curl—tlsvl
'/api/v2/transactions/btcusd/'
?response頭信息:curl-I
?get:curl請(qǐng)求地址?keyl=valuel&key2=value2&key3=value3
?post:curl-d"keyl=valuel&key2=value2&key3=value3"
二、mysql
1.索引的為什么使蟄詢加快?有啥缺點(diǎn)?
默認(rèn)的方式是根據(jù)搜索條件進(jìn)行全表掃描,遇到匹配條件的就加入搜索結(jié)果集
合。如果我們對(duì)某一字段增加索引,查詢時(shí)就會(huì)先去索引列表中一次定位到特定
值的行數(shù),大大減少遍歷匹配的行數(shù),所以能明顯增加查詢的速度
缺點(diǎn):
?創(chuàng)建索引和維護(hù)索引要耗費(fèi)時(shí)間,這種時(shí)間隨著數(shù)據(jù)量的增加而增加
?索引需要占物理空間,除了數(shù)據(jù)表占用數(shù)據(jù)空間之外,每一個(gè)索引還要占用一
定的物理空間,如果需要建立聚簇索引,那么需要占用的空間會(huì)更大
■以表中的數(shù)據(jù)進(jìn)行增、冊(cè)!k改的時(shí)候,索引也要?jiǎng)討B(tài)的維護(hù),這就降低了整數(shù)
的維護(hù)速度
2.sql語句左外連接右外連接內(nèi)連接全連接區(qū)別
SQLJOINS
SETJSCT<s€lect_list>SELECT〈select」ist>
FROMTableAAFROMTableAA
LEFTJOINTablcBBRIGHTJOINTableBB
ONA.Key=B.KeyONA.Key=B.Key
SELECT<sclcct_list>
FROMTablcAA
INNERJOINTableBB
ONA.Key=B.Key
FROMTableAA
LEFTJOINTabkBBRIGHTJOINTableBB
ONA.Kcy=B.KeyONA.Kcy=B.Key
WHEREB.KeyISNULLWHERE兒KeyISNUIX
SEIJiCT<selcct_list>
SELECT<sclcct_list>FROMTableAA
FROMTablcAAFULLOUTERJOINTableBB
FULLOUTERJOINTableBBONA.Key=B.Key
ONA.Key=B.KeyWHEREA.KcyISNULL
?CL.Moffitt,2008ORB.KeyISNULL
3.mysql數(shù)據(jù)備份方式,如何恢復(fù)?你們的備份策略是什么?
?物理完全備份
備份所有數(shù)據(jù)庫文件:/var/lib/mysql/*
備份所有binlog文件:/var/lib/mysql/mysql-bin.*
備份選項(xiàng)文件:/etc/f
?mysqIdump邏輯備份
mysqldump-uroot-p-all-databases>/backup/mysqldump/all.db
物理備份恢復(fù)
mv/var/lib/mysql/var/lib/mysql.old#先把原來的數(shù)據(jù)目錄改名
cp-a/backups/mysql/var/lib
?邏輯備份數(shù)據(jù)恢復(fù)
mysql>usedb_name
mysql>source/backup/mysqldump/db_name.db
4.如何配置數(shù)據(jù)庫主從同步,實(shí)際工作中是否遇到數(shù)據(jù)不一致問題?如何解
決?
為每個(gè)服務(wù)器配置唯一值的server-id
?主庫
開啟binlog日志
創(chuàng)建主從復(fù)制用戶
查看master的狀態(tài)
?從庫
changemasterto設(shè)置主庫信息
startslave開始復(fù)制
5.mysql約束有哪些?
?非空約束
?唯一約束
?主鍵約束
?外鍵約束
6.二進(jìn)制日志(binlog)用途?
BINLOG記錄數(shù)據(jù)庫的變更過程。例如創(chuàng)建數(shù)據(jù)庫、建表、修改表等DDL操作、
以及數(shù)據(jù)表的相關(guān)DML操作,這些操作會(huì)導(dǎo)致數(shù)據(jù)庫產(chǎn)生變化,開啟binlog
以后導(dǎo)致數(shù)據(jù)庫產(chǎn)生變化的操作會(huì)按照時(shí)間順序以"事件"的形式記錄到binlog
二進(jìn)制文件中
7.mysql數(shù)據(jù)引擎有哪些?
?常用的myisam、innodb
?區(qū)別:
InnoDB支持事務(wù),MylSAM不支持,這一點(diǎn)是非常之重要。事務(wù)是一種高級(jí)
的處理方式,如在一些列增刪改中只要哪個(gè)出錯(cuò)還可以回滾還原,而MylSAM
就不可以了;
MylSAM適合查詢以及插入為主的應(yīng)用,InnoDB適合頻繁修改以及涉及到安
全性較高的應(yīng)用;
InnoDB支持外鍵,MylSAM不支持;
MylSAM是默認(rèn)引擎,InnoDB需要指定;
InnoDB不支持FULLTEXT類型的索引;
InnoDB中不保存表的行數(shù),如selectcount(*)fromtable時(shí),InnoDB;需
要掃描一遍整個(gè)表來計(jì)算有多少行,但是MylSAM只要簡單的讀出保存好的行
數(shù)即可。注意的是,當(dāng)count(*)語句包含where條件時(shí)MylSAM也需要掃
描整個(gè)表;
對(duì)于自增長的字段,InnoDB中必須包含只有該字段的索引,但是在MylSAM
表中可以和其他字段一起建立聯(lián)合索引;
清空整個(gè)表時(shí),InnoDB是一行一行的刪除,效率非常慢。MylSAM則會(huì)重建
表;
InnoDB支持行鎖(某些情況下還是鎖整表,如updatetableseta=lwhere
userlike'%lee%'
8.如何查詢mysql數(shù)據(jù)庫存放路徑?
mysql>showvariableslike1datadir%1;
+---------------+-------------------------+
IVariable_name|Value|
+---------------+-------------------------+
Idatadir|/usr/local/mysql/data/|
+---?1rowinset(0.00sec)
9.mysql數(shù)據(jù)庫文件后綴名有哪些?用途什么?
myisam
,frm文件:保護(hù)表的定義
,myd:保存表的數(shù)據(jù)
.myi:表的索引文件
?innodb
.frm:保存表的定義
.ibd:表空間
10.如何修改數(shù)據(jù)庫用戶的密碼?
?mysql8之前
setpasswordfor用戶名@localhost=password('新密碼');
mysqladmin-u用戶名-p舊密碼password新密碼
updateusersetpassword=password('123')whereuser='root'and
host='localhost';
?mysq18之后
#mysql8初始對(duì)密碼要求高簡單的字符串不讓改。先改成:MyNewPass@123;
alteruser'root'@'localhost'identifiedby'MyNewPass@123';
#降低密碼難度
setglobalvalidate_password.policy=0;
setglobalvalidate_password.length=4;
#修改成簡易密碼
alteruser'root^'localhost'IDENTIFIEDBY'1111';
11.如何修改用戶權(quán)限?如何蟄看?
?授權(quán):
grantallon*.*touser@'%'identifiedby'passwd'
?查看權(quán)限
showgrantsforuser@'%';
三、nosql
1.redis數(shù)據(jù)持久化有哪些方式?
?rdb
?aof
2.redis集群方案有哪些?
?官方cluster方案
?twemproxy代理方案
哨兵模式
codis客戶端分片
3.redis如何進(jìn)行數(shù)據(jù)備份與恢復(fù)?
?備份
redis:6379>SAVE
創(chuàng)建redis備份文件也可以使用命令BGSAVE,該命令在后臺(tái)執(zhí)行。
?還原
只需將備份文件(dump.rdb)移動(dòng)到redis安裝目錄并啟動(dòng)服務(wù)即可
redis:6379>CONFIGGETdir
1)"dir"
2)"/usr/local/redis/bin"
4.MongoDB如何進(jìn)行數(shù)據(jù)備份?
mongoexport/mongoimport
mongodump/mongorestore
5.kafka為何比redisrabbitmq快?
這個(gè)大家自行百度,在這就不贅述了
四、docker
1.dockerfile有哪些關(guān)鍵字?用途是什么?
指令描述
FROM構(gòu)建新鏡像是基于哪個(gè)鏡像
MAINTAINER鏡像維護(hù)者姓名或郵箱地址
RUN構(gòu)建鏡像時(shí)運(yùn)行的Shell命令
COPY拷貝文件或目錄到鏡像中
ENV設(shè)置環(huán)境變量
USER為RUN、CMD和ENTRYPO1NT執(zhí)行命令指定運(yùn)行用戶
EXPOSE聲明容器運(yùn)行的服務(wù)端口
HEALTHCHECK容器中服務(wù)健康檢查
WORKDIR為RUN、CMD、ENTRYPOINT.COPY和ADD設(shè)置工作目錄
ENTRYPOINT運(yùn)行容器時(shí)執(zhí)行,如果有多個(gè)ENTRYPOINT指令,最后一個(gè)生效
CMD運(yùn)行容器時(shí)執(zhí)行,如果有多個(gè)CMD指令,最后一個(gè)生效
2.如何減小dockerfile生成鏡像體積?
?盡量選取滿足需求但較小的基礎(chǔ)系統(tǒng)鏡像,例如大部分時(shí)候可以選擇
debian:wheezy或debian:jessie鏡像,僅有不足百兆大小;
?清理編譯生成文件、安裝包的緩存等臨時(shí)文件;
?安裝各個(gè)軟件時(shí)候要指定準(zhǔn)確的版本號(hào),并避免引入不需要的依賴;
?從安全角度考慮,應(yīng)用要盡量使用系統(tǒng)的庫和依賴;
?如果安裝應(yīng)用時(shí)候需要配置一些特殊的環(huán)境變量,在安裝后要還原不需要
保持的變量值;
3.dockerfile中CMD與ENTRYPOINT區(qū)別是什么?
?CMD和ENTRYPOINT指令都是用來指定容器啟動(dòng)時(shí)運(yùn)行的命令。
?指定ENTRYPOINT指令為exec模式時(shí),CMD指定的參數(shù)會(huì)作為參數(shù)
添加到ENTRYPOINT指定命令的參數(shù)列表中。
4.dockerfile中COPY和ADD區(qū)別是什么?
?COPY指令和ADD指令都可以將主機(jī)上的資源復(fù)制或加入到容器鏡像中
?區(qū)別是ADD可以從遠(yuǎn)程URL中的資源不會(huì)被解壓縮。
?如果是本地的壓縮包ADD進(jìn)去會(huì)被解壓縮
5.docker的cs架構(gòu)組件有哪些?
客戶端
4
/
/
/
/
/
RESTful
6.docker網(wǎng)絡(luò)類型有哪些?
.host模式
?container模式
?none模式
?bridge模式
7.如何配置docker遠(yuǎn)程訪問?
?vim/Iib/systemd/system/docker.service
?在ExecStart=后添加配置,注意,需要先空格后,再輸入-H
tcp://:2375-Hunix:///var/run/docker.sock
8.docker核心namespaceCGroups聯(lián)合文件系統(tǒng)功能是什么?
?namespace:資源隔離
?egroup:資源控制
?聯(lián)合文件系統(tǒng):支持對(duì)文件系統(tǒng)的修改作為一次提交來一層層的疊加,同
時(shí)可以將不同目錄掛載到同一個(gè)虛擬文件系統(tǒng)下
9.命令相關(guān):導(dǎo)入導(dǎo)出鏡像,進(jìn)入容器,設(shè)置重啟容器策略,查看鏡像環(huán)境變
量,查看容器占用資源
?導(dǎo)入鏡像dockerload-ixx.tar
?導(dǎo)出鏡像dockersave-oxx.tarimage_name
進(jìn)入容器dockerexec-it容器命令/bin/bash
設(shè)置容器重啟策略啟動(dòng)時(shí)--restart選項(xiàng)
?查看容器環(huán)境變量dockerexec{containerlD}env
?查看容器資源占用dockerstatstest2
10.構(gòu)建鏡像有哪些方式?
?dockerfile
?commit提交為鏡像
11.docker和vmware虛擬化區(qū)別?
HYPERVISOR
HOSTOPERATINGSYSTEM
INFRASTRUCTURE
APP#1APP#3
BINS/UBSBINS/LIBS
DOCKERDAEMON
HOSTOPERATINGSYSTEM
INFRASTRUCTURE
五、kubernetes
1.k8s的集群組件有哪些?功能是什么?
2.kubectl命令相關(guān):如何修改副本數(shù),如何滾動(dòng)更新和回滾,如何查看pod
的詳細(xì)信息,如何進(jìn)入pod交互?
?修改副本數(shù)kubectlscaledeploymentredis—replicas=3
?活動(dòng)更新kubectlsetimagedeploymentsmyapp-deploy
myapp=myapp:v2
?回滾kubectlrolloutundodeploymentsmyapp-deploy
?查看pod詳細(xì)信息kubectldescribepods/<pod-name>
?進(jìn)入pod交互kubectlexec-it<pod-name>-c<container-name>
bash
3.etcd數(shù)據(jù)如何備份?
?etcdctl
-endpoints="29:2379,30:23
79,28:2379"—cacert=/etc/kubernetes/cert/ca.pem
—key=/etc/etcd/cert/etcd-key.pem—cert=/etc/etcd/cert/etcd.pem
snapshotsavesnashotl.db
?Snapshotsavedatsnashotl.db
4.k8s控制器有哪些?
?副本集(ReplicaSet)
?部署(Deployment)
狀態(tài)集(StatefulSet)
Daemon集(DaemonSet)
?一次任務(wù)(Job)
?計(jì)劃任務(wù)(CronJob)
?有狀態(tài)集(StatefulSet)
5.哪些是集群級(jí)別的資源?
?Namespace
?Node
?Role
?ClusterRole
?RoleBinding
?ClusterRoleBinding
6.pod狀態(tài)有哪些?
?Pending等待中
?Running運(yùn)行1中
?Succeeded正常終止
?Failed異常停止
?Unkonwn未知狀態(tài)
7.pod創(chuàng)建過程是什么?
APIServerSchedulerKubeletDocker
:createPod4:
write
watch(ricwpod)
bindpod
T1
write
J...............
;watch(boundpod》
dockerrun〉
updatepodstatus<
write
8.pod重啟策略有哪些?
的重啟策略有種,默認(rèn)值為
Pod3Alwayso
?Always:容器失效時(shí),kubelet自動(dòng)重啟該容器;
?OnFailure:容器終止運(yùn)行且退出碼不為0時(shí)重啟;
?Never:不論狀態(tài)如何,kubelet都不重啟該容器
9.資源探針有哪些?
?ExecAction:在容器中執(zhí)行一個(gè)命令,并根據(jù)其返回的狀態(tài)碼進(jìn)行診斷
的操作稱為Exec探測(cè),狀態(tài)碼為0表示成功,否則即為不健康狀態(tài)。
?TCPSocketAction:通過與容器的某TCP端口嘗試建立連接進(jìn)行診斷,
端口能夠成功打開即為正常,否則為不健康狀態(tài)。
HTTPGetAction:通過向容器IP地址的某指定端口的指定path發(fā)起
HTTPGET請(qǐng)求進(jìn)行診斷,響應(yīng)碼為2xx或3xx時(shí)即為成功,否則為失敗。
10.requests和limits用途是什么?
?"requests"屬性定義其請(qǐng)求的確??捎弥?,即容器運(yùn)行可能用不到這些額
度的資源,但用到時(shí)必須要確保有如此多的資源可用
?"limits"屬性則用于限制資源可用的最大值,即硬限制
11.kubeconfig文件包含什么內(nèi)容,用途是什么?
包含集群參數(shù)(CA證書、APIServer地址),客戶端參數(shù)(上面生成的證書和
私鑰),集群context信息(集群名稱、用戶名)。
12.RBAC中role和clusterrole區(qū)別,rolebinding和clusterrolebinding
區(qū)別?
?Role可以定義在一個(gè)namespace中如果想要跨namespace則可以
創(chuàng)建ClusterRole,ClusterRole具有與Role相同的權(quán)限角色控制能力,
不同的是ClusterRole是集群級(jí)別的
?RoleBinding適用于某個(gè)命名空間內(nèi)授權(quán),而ClusterRoleBinding適
用于集群范圍內(nèi)的授權(quán)
13.ipvs為啥比iptables效率高?
IPVS模式與iptables同樣基于Netfilter,但是ipvs采用的hash表,iptables
采用一條條的規(guī)則列表。iptables又是為了防火墻設(shè)計(jì)的,集群數(shù)量越多
iptables規(guī)則就越多,而iptables規(guī)則是從上到下匹配,所以效率就越是低下。
因此當(dāng)service數(shù)量達(dá)到一定規(guī)模時(shí),hash查表的速度優(yōu)勢(shì)就會(huì)顯現(xiàn)出來,從
而提高service的服務(wù)性能
14.scpvpvc用途,容器掛載存儲(chǔ)整個(gè)流程是什么?
?PVC:Pod想要使用的持久化存儲(chǔ)的屬性,比如存儲(chǔ)的大小、讀寫權(quán)限
等。
,PV:具體的Volume的屬性,比如Volume的類型、掛載目錄、遠(yuǎn)程
存儲(chǔ)服務(wù)器地址等。
?Storageclass:充當(dāng)PV的模板。并且,只有同屬于一個(gè)StorageClass
的PV和PVC,才可以綁定在一起。當(dāng)然,Storageclass的另一個(gè)重要
作用,是指定PV的Provisioner(存儲(chǔ)插件)。這時(shí)候,如果你的存儲(chǔ)插
件支持DynamicProvisioning的話,Kubernetes就可以自動(dòng)為你創(chuàng)建
PV了。
Pod
15.nginxingress的原理本質(zhì)是什么?
?ngresscontroller通過和kubernetesapi交互,動(dòng)態(tài)的去感知集群中
ingress規(guī)則變化,
?然后讀取它,按照自定義的規(guī)則,規(guī)則就是寫明了哪個(gè)域名對(duì)應(yīng)哪個(gè)
service,生成一段nginx配置,
?再寫至Unginx-ingress-controller的pod里,這個(gè)Ingresscontroller
的pod里運(yùn)行著一個(gè)Nginx服務(wù),控制器會(huì)把生成的nginx配置寫入
/etc/nginx.conf文件中,
?然后reload一下使配置生效。以此達(dá)到域名分配置和動(dòng)態(tài)更新的問題。
16.描述不同node上的Pod之間的通信流程
17.k8s集群節(jié)點(diǎn)需要關(guān)機(jī)維護(hù),需要怎么操作
?進(jìn)彳亍pod馬區(qū)逐:kubeletdrain<node_name>
?檢查node上是否無pod運(yùn)行,切被驅(qū)逐的pod已經(jīng)在其他節(jié)點(diǎn)運(yùn)行正
常
?關(guān)機(jī)維護(hù)
?開機(jī)啟動(dòng)相關(guān)服務(wù)(注意啟動(dòng)順序)
?解除node節(jié)點(diǎn)不可調(diào)度:kubectluncordonnode
?創(chuàng)建測(cè)試pod,并使用節(jié)點(diǎn)標(biāo)簽測(cè)試節(jié)點(diǎn)可以被正常調(diào)度
18.canal和flannel區(qū)別
?Flannel(簡單、使用居多):基于Vxlan技術(shù)(疊加網(wǎng)絡(luò)+二層隧道),
不支持網(wǎng)絡(luò)策略
?Calico(較復(fù)雜,使用率少于Flannel):也可以支持隧道網(wǎng)絡(luò),但是是
三層隧道(IPIP),支持網(wǎng)絡(luò)策略
?Calico項(xiàng)目既能夠獨(dú)立地為Kubernetes集群提供網(wǎng)絡(luò)解決方案和網(wǎng)絡(luò)
策略,也能與flannel結(jié)合在一起,由flannel提供網(wǎng)絡(luò)解決方案,而Calico
此時(shí)僅用于提供網(wǎng)絡(luò)策略。
六、prometheus
1.prometheus對(duì)比zabbix有哪些優(yōu)勢(shì)?
這個(gè)大家自行百度,這里不再贅述
2.prometheus組件有哪些,功能是什么?
pullmetrics
Prome:heusServer
3.指標(biāo)類型有哪些?
?Counter(計(jì)數(shù)器)
?Guage(儀表盤)
?Histogram(直方圖)
?Summary(摘要)
4.在應(yīng)對(duì)上千節(jié)點(diǎn)監(jiān)控時(shí),如何保障性能
?降低采集頻率
?縮小歷史數(shù)據(jù)保存天數(shù),6
?使用集群聯(lián)邦和遠(yuǎn)程存儲(chǔ)
19.簡述從添加節(jié)點(diǎn)監(jiān)控到grafana成圖的整個(gè)流程
?被監(jiān)控節(jié)點(diǎn)安裝exporter
?prometheus服務(wù)端添加監(jiān)控項(xiàng)
?查看prometheusweb界面----status-----targets
?grafana創(chuàng)建圖表
20.在工作中用到了哪些exporter
?node-exporter監(jiān)控linux主機(jī)
?cAdvisor監(jiān)控容器
?MySQLDExporter監(jiān)控mysql
?BlackboxExporter網(wǎng)絡(luò)探測(cè)
?Pushgateway采集自定義指標(biāo)監(jiān)控
?processexporter進(jìn)控
七、ELK
1.Elasticsearch的數(shù)據(jù)如何備份與恢復(fù)?
這個(gè)大家自行百度,這里不再贅述
2.你們項(xiàng)目中使用的logstash過濾器插件是什么?實(shí)現(xiàn)哪些功能?
?date日期解析
?grok正則匹配解析
?overwrite寫某個(gè)字段
?dissect分隔符解析
?mutate對(duì)字段做處理
?json解析
?geoip地理位置解析
?ruby修改logstashevent
3.是否用到了filebeat的內(nèi)置module?用了哪些?
[root@localhostfilebeat-6.3.2-linux-x86_64]#Is
datafilebeat.reference.ymlLICENSE.txtmodules.d
fields.ymlfilebeat.ymllogsNOTICE.txt
filebeatkibanamoduleREADME.md
[root@localhostfilebeat-6.3.2-linux-x86_64]#cdmodule
[root@localhostmodule]#Is
apache2iismongodbosquerysystem
auditdkafkamysqlpostgresqltraefik
icingalogstashnginxredis
[root@localhostmodule]#cd../modules.d/
[root@localhostmodules.d]#Is
apache2.yml.disabledmysql.yml.disabled
auditd.yml.disablednginx.yml.disabled
icinga.yml.disabledosquery.yml.disabled
iis.yml.disabledpostgresql.yml.disabled
kafka.yml.disabledredis.yml.disabled
logstash.yml.disabledsystem.yml.disabled
mongodb.yml.disabledtraefik.yml.disabled
[root@localhostmodules.d]#1
4.elasticsearch分片副本是什么?你們配置的參數(shù)是多少?
這個(gè)大家自行百度,這里不再贅述
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 鞋類設(shè)計(jì)師操作規(guī)范知識(shí)考核試卷含答案
- 自來水筆制造工安全培訓(xùn)效果模擬考核試卷含答案
- 巷道掘砌工崗前決策判斷考核試卷含答案
- 自然水域救生員崗前工作標(biāo)準(zhǔn)化考核試卷含答案
- 煉焦工安全宣貫?zāi)M考核試卷含答案
- 玻璃及玻璃制品成型工創(chuàng)新意識(shí)競(jìng)賽考核試卷含答案
- 2024年鄭州升達(dá)經(jīng)貿(mào)管理學(xué)院輔導(dǎo)員考試參考題庫附答案
- 氧化擴(kuò)散工安全宣貫評(píng)優(yōu)考核試卷含答案
- 2025呼和浩特托克托縣招聘社區(qū)工作者及儲(chǔ)備人員筆試通知備考題庫附答案
- 燒結(jié)球團(tuán)原料工崗前基礎(chǔ)實(shí)戰(zhàn)考核試卷含答案
- 2026年重慶市江津區(qū)社區(qū)專職人員招聘(642人)筆試備考試題及答案解析
- 2026年思明區(qū)公開招聘社區(qū)工作者考試備考題庫及完整答案詳解1套
- 【四年級(jí)】【數(shù)學(xué)】【秋季上】期末家長會(huì):數(shù)海引航愛伴成長【課件】
- 小學(xué)音樂教師年度述職報(bào)告范本
- 設(shè)備設(shè)施風(fēng)險(xiǎn)分級(jí)管控清單
- 河南交通職業(yè)技術(shù)學(xué)院教師招聘考試歷年真題
- 污水管網(wǎng)工程監(jiān)理規(guī)劃修改
- (機(jī)構(gòu)動(dòng)態(tài)仿真設(shè)計(jì))adams
- 北京市社保信息化發(fā)展評(píng)估研究報(bào)告
- GB/T 8336-2011氣瓶專用螺紋量規(guī)
- GB/T 1048-2019管道元件公稱壓力的定義和選用
評(píng)論
0/150
提交評(píng)論