Sysdig: Ин чист ва чӣ тавр онро истифода бурдан мумкин аст

Sysdig воситаи намоёни системаи универсалӣ бо дастгирии контейнерҳо мебошад. Он чизе, ки Sysdig махсус аст, ин аст, ки вай худро ба ядрои мошин мепайвандад ва иттилоотро дар ҳар контейнер ҷудо мекунад. Барои васеъ кардани доираи ин дарс, мо ба версияи кушоди Sysdig тамаркуз хоҳем кард.

Дар бахшҳои оянда шумо:

  • Sysdig насб кунед
  • Бо истифода аз docker-compose насби Wordpress -ро афзун кунед
  • Барои ҷамъоварии ҳодисаҳо ва таҳлили онҳо баъдтар Sysdig-ро истифода баред
  • Барои таҳлили маълумот дар реҷаи вақти воқеӣ Sysdig -ро истифода баред

Шарти пешакӣ

  • Дар системаи шумо Docker насб шудааст. Барои гирифтани тафсилот дар бораи насби Docker, ба саҳифаи Install Docker нигаред.
  • Дар системаи шумо Docker Compose насб шудааст. Барои дастур оид ба чӣ гуна насб кардани Docker Compose ба саҳифаи Install Docker муроҷиат кунед.
  • Сарлавҳаҳои ядро ​​дар системаи мизбон насб шудаанд.

Sysdig насб кунед

Барои насб кардани Sysdig дар дохили як контейнери Docker ин амалҳоро иҷро кунед:

  1. Дар равзанаи терминал, фармони зеринро иҷро кунед, то тасвири Sysdig Dockerро кашед:
docker pull sysdig / sysdig
Истифодаи теги пешфарз: охирин: Пурсидан аз sysdig / sysdig 2967486b0658: Пурра ба пуррагӣ 78101b780c72: Андешидани 7e78b657334d: Пурра ба пуррагӣ 650327159ca8: 47ebf73ab754 пур кунед: 47 bf51ac76a6d9: Пурр ба пуррагӣ full3006 Пурра 6de86c8ed6e9: Андешидани 8d1825f8be4b: Пурра ба пуррагӣ: sha256: bbfe6953fd2b3221a8974eb13024dd33c7e78aebef8fee3d7a0d9ecdeed84ce0 Статус: Тасвири нав барои sysdig / sys боршуда:

2. Sysdig-ро дар як контейнер тавассути ворид шудан ворид кунед:

docker run -i -t --name sysdig --privileged -v /var/run/docker.sock:/host/var/run/docker.sock -v / dev: / host / dev -v / proc: / мизбон / proc: ro -v / boot: / host / boot: ro -v / lib / modules: / host / lib / modules: ro -v / usr: / host / usr: ro sysdig / sysdig
* Ба роҳ мондани истинодҳо / usr / src аз соҳиб * Боркунии sysdig-probe, агар мавҷуд бошад * Насб кардани dkms барои хатои sysdig! echo Сарлавҳаҳои ядрои шуморо барои ядрои 3.10.0-957.12.2.el7.x86_64 дар /lib/modules/3.10.0-957.12.2.el7.x86_64/build ё /lib/modules/3.10.0-957.12 ёфта наметавонед .2.el7.x86_64 / сарчашма. * Корандозии dkms сохта нашуд, натавонист /var/lib/dkms/sysdig/0.26.4/build/make.log * Кӯшиши бор кардани системаи sysdig-probe, агар вуҷуд дошта бошад * Кӯшиши пайдо кардани sysdig-probe барои 3.10 .0-957.12.2.el7.x86_64 Танзимоти ядроиро дар /host/boot/config-3.10.0-957.12.2.el7.x86_64 * Кӯшиш мекунад, ки модули пешакӣ тартибшударо аз https://s3.amazonaws.com/download зеркашӣ кунед .draios.com / stabil / sysdig-probbe-binaries / sysdig-probe-0.26.4-x86_64-3.10.0-957.12.2.el7.x86_64-82e2ae1fb159132636f7b50a762f20ef.ko бомуваффақият зер карда шуд, боркунии модули реша @ 7b14a23f22eb: / #

Дар бораи фармони боло якчанд чизро қайд кардан лозим аст:

  • Парчами -i STDIN-ро боз нигоҳ медорад.
  • Параметри - ташаккулёфта дастрасиро ба ҳамаи дастгоҳҳои ҳост таъмин мекунад. Ғайр аз он, он SELinux-ро имкон медиҳад, ки ба равандҳои дар дохили контейнер ҷудошуда дастрасиро ба хостро ба мисли ҷараён дар ҳост иҷозат диҳад.
  • Парчами -v рӯйхати файлҳоро (дар мизбон) муайян менамояд, ки Sysdig ба онҳо дастрас аст.

Насби Wordpress-ро афзоиш диҳед

Дар ин бахш, шумо Wordpress-ро бо фармони docker-compose насб мекунед.

  1. Дар равзанаи терминали нав ба директорияи лоиҳаҳои худ гузаред ва фармонҳои зеринро нависед:
mkdir wordpress-sysdig && CD wordpress-sysdig

2. Файлро бо номи docker-compose бо мундариҷаи зерин эҷод кунед:

версия: хидматҳои '3.3': db: image: mysql: 5.7 cilt: - db_data: / var / lib / mysql restart: ҳамеша муҳити атроф: MYSQL_ROOT_PASSWORD: якбора MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: тасвири тасвирӣ: wordpress: бандарҳои охирин: - "8000: 80" бозоғозӣ: ҳамеша муҳит: WORDPRESS_DB_HOST: db: 3306 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_NAME: ҳаҷмҳои фишор: db_data: {}

3. Фармони docker-compose up -ро дар ҳолати алоҳида иҷро кунед:

docker-compose то -d
Сохтани шабакаи "wordpress-sysdig_default" бо драйвер бо нобаёнӣ Сохтани ҳаҷми "wordpress-sysdig_db_data" бо драйвер бо нобаёнӣ Сохтани wordpress (wordpress: охирин) ... охирин: Партофтани китобхона / wordpress 8ec398bc0356: 85cf4fc86478 пур кунед: 9cdffccb 8c04561117a4: чизпарастӣ d6b7434b63a2 пурра: чизпарастӣ пурра 83d8859e9744: чизпарастӣ 9c3d824d0ad5 пурра: чизпарастӣ 9e316fd5b3b3 пурра: чизпарастӣ пурра 578b40496c37: чизпарастӣ 814ae7711d3c пурра: чизпарастӣ 4896fed78b6b пурра: чизпарастӣ e74d71e9611d пурра: чизпарастӣ 46017765526c пурра: чизпарастӣ пурра 280386098458: чизпарастӣ f32eb0d8c540 пурра: кашед 5c47b9ea747a пурра: кашида ecda5b7aad12 пурра: чизпарастӣ пурра 84256a6b6b44: чизпарастӣ пурра 35d4f385efb7: чизпарастӣ bf697c2ae701 пурра: чизпарастӣ d054b015f084 пурра: чизпарастӣ пурра Азхудкунӣ: sha256: 73e8d8adf491c7a358ff94c74c8ebe35cb5f8857e249eb8ce6062b8576a01465 Статуси: дарёфт симои навтари барои WordPress: охирин Фароњам WordPress-sysdig_db_1 ... анҷом Таъсис WordPress-sysdig_word press_1 ... анҷом дода шуд

4. Шумо метавонед ҳолати контейнерҳои худро бо ёрии он тафтиш кунед:

docker ps

Агар ҳамааш хуб кор кунад, шумо бояд як чизе ба баромади зеринро бубинед:

Номҳои тасвири суроғаи мутавассит портретҳои номӣ f390eec29f52 wordpress: latest "docker-entrypoint.s ..." Тақрибан як дақиқа пеш То дақиқа 0.0.0.0:8000->80/tcp wordpress-sysdig_wordpress_1 a844840626d8 mysql: 5.7 "dock. s… "Тақрибан як дақиқа пеш То 1 дақиқа 3306 / tcp, 33060 / tcp wordpress-sysdig_db_1 7b14a23f22eb sysdig / sysdig" /docker-entrypoint.… "13 дақиқа пеш То 13 дақиқа sysdig

5. Ҳоло Wordpress кор мекунад ва кор мекунад. Барои оғоз кардани устоди насб браузери худро ба http: // localhost: 8000 ишора кунед:

6. Пас аз он ки устоди насбкунӣ ба анҷом мерасад, биёед ба пешгоҳи худ овехтани як намуна эҷод кунем:

Ҷамъоварии маълумот дар файл

Дар ин бахш, мо нишон медиҳем, ки чӣ гуна шумо Sysdig-ро барои ҷамъоварии ҳодисаҳо ва таҳлили онҳо баъдтар истифода бурда метавонед.

  1. Барои партофтани ҳама воқеаҳои гирифташуда ба файл, ба контейнери Sysdig гузаред ва фармони зеринро ворид кунед:
sysdig -w мониторинг-wordpress.scap

2. Дар равзанаи терминали нав ab-ро истифода баред, ки 10000 дархост дошта бошанд ва ҳадди аксар 100 дархост ҳамзамон иҷро шаванд:

ab -n 1000 -c 100 http: // localhost: 8000 /? p = 7
Ин ApacheBench, Version 2.3 <$ Revision: 1430300 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Ба фонди барномавии Apache Software иҷозат дода шудааст, http://www.apache.org/ Бенчмаркинг localhost (пурсаброна) 100 дархостро иҷро намуд 200 дархостҳо анҷом дода шуд 300 дархостҳо анҷом дода шуд 400 дархостҳо анҷом дода шуд 500 дархостҳо иҷро карда шуд 600 дархостҳо анҷом дода шуд 600 дархостҳо анҷом дода шуд 700 дархостҳо анҷом дода шуд 800 дархостҳо анҷом дода шуд 900 дархостҳо анҷом дода шуд 1000 дархостҳо анҷом ёфт

Дар хотир доред, ки баромади дар боло овардашуда барои кӯтоҳ бурида шудааст.

3. Ба сайри Sysdig баргардед ва воридкунии маълумотро бо ворид намудани "CTRL + C" қатъ кунед.

Таҳлили маълумот

Ҳоло, агар шумо ба андозаи файли monitoring-wordpress.scap нигаред, мебинед, ки Sysdig на камтар аз 80M маълумотро ба даст овардааст:

ls -lh мониторинг-wordpress.scap
-rw-r - r--. 1 решаи решавӣ 80M Jan 7 16:28 monitoring-wordpress.scap

Барои ёфтани роҳи худ аз ин кӯҳи маълумот, шумо чизе бо номи чиселро истифода хоҳед бурд.

Чисел аслан як скрипти Луа мебошад, ки ҷараёни ҳодисаро таҳлил карда амалҳои муфидро иҷро мекунад.

Шумо метавонед фармони зеринро барои нишон додани рӯйхати чеҳраҳо иҷро кунед:

sysdig -cl
Гурӯҳ: Ариза --------------------- HTTP дархостҳо сабти журналро дархост кунед HTTP Top HTTP дархостҳои memcachelog дархостро сабт мекунад Гурӯҳ: Истифодаи CPU ---------- --------- спектрограмма Вақти воқеии ОСро визуалӣ кун. subecoffset Visualize subecond ofset ofset offset. topcontainers_cpu Зарфҳои боло аз рӯи CPU истифодаи topprocs_cpu Ҷараёнҳои боло аз рӯи CPU Истифодабарии CPU Категория: Хатогиҳо ---------------- topcontainers_error Контейнерҳои боло аз рӯи миқдори хатогиҳо Topfiles_error Файлҳои боло аз рӯи миқдори хатогиҳо topprocs_errors процесси боло аз рӯи миқдор. хатогиҳо

Дар хотир доред, ки баромади дар боло овардашуда барои кӯтоҳ бурида шудааст.

Барои гирифтани маълумоти муфассал дар бораи чисел, фармони sysdig ва паси -i парчам ва номи чиселро иҷро кунед, ба мисли дар мисоли зерин:

sysdig -i wikiptop
Гурӯҳ: Ариза --------------------- Дархостҳои HTTP Top HTTP Нишон додани дархостҳои беҳтарин HTTP аз ҷониби: ncalls, вақт ё байт Args: [string] by - Намоиши болоҳои HTTP аз: ncalls, вақт ё аз ҷониби tes, аслӣ ncalls мебошад

Идомаи мисоли мо, ин аст, ки чӣ тавр шумо метавонед чеҳраи Ҳипптопро барои намоиши дархостҳои HTTP боло истифода баред:

sysdig -r monitoring-wordpress.scap -c hipptop
усули ncalls url ----------------------------------------------- --------------------------------- 2001 НАБОШЕД маҳаллиро гиред: 8000 /? P = 7 14 ОПОРТҲО * 2 ГОҲ-и маҳаллӣ: 8000 / favicon.ico 1 GET /wp-content/themes/twentytwenty/assets/fonts/inter/Inter-upright-var.woff2 1 GET localhost / v1.24 / контейнерҳо / 6bd8418eb03f / json 1 GET localhost / v1.24 / зарфњои / 06def7875617 / json 1 Оғози /v1.24/images/1b1624b63467ec61fab209b6be6e79707ae786df86607b9474b246acd31600 1 даст /v1.24/images/db39680b63ac47a1d989da7b742f7b382af34d85a68214f8977bad59c05901 1 даст localhost: 8000 /

Шумо метавонед ҳамон як маълумотро дар формати дӯстона бо парчами -pcontainer бинед:

sysdig -r monitoring-wordpress.scap -c hippptop -pcontainer
усули ncalls контейнер url ---------------------------------------------- ---------------------------------- 1000 wordpress-sysdig_wo GET маҳаллӣ: 8000 /? P = 7 1000 хост GET localhost: 8000 / саҳ = 7 43 ТАНЗИМОТИ WordPress-sysdig_wo * 1 sysdig даст /v1.24/images/1b1624b63467ec61fab209b6be6e79707ae786df86607b9474b246acd31600 1 sysdig даст localhost / v1.24 / зарфњои / 06def7875617 / json 1 sysdig даст localhost / v1.24 / зарфњои / cd06093b141b / json 1 sysdig GET /v1.24/images/00e230fe24da9067f9b6e65cfbe9935a5affac1ae8e44edb6a5b0ccc26374d 1 sysdig GET /v1.24/images/db39680b8d8998bb6a998bb6db6bb6bbbdbd6bb6bbbbdbd6bb6bbbbd6db6bb6bbdbb6dbb6bbbdb6dbb6bbbbdbb6dbbbbb6db6dbb6dbb6dbb6dbbb))

Кандани чуқур

Sysdig маълумоти пур аз мундариҷаро мегирад, ки ба шумо имкон медиҳад, ки дар бораи корҳои дохили контейнерҳои худ маълумоти муфассал гиред. Фарз мекунем, ки шумо якчанд контейнерро идора мекунед ва мехоҳед бидонед, ки кадом CPU бештар истеъмол мекунад.

  1. Контейнерҳоеро номбар кунед, ки дар тӯли он воқеаҳо фаъол буданд:
sysdig -r monitoring-wordpress.scap -c lscontainers

2. Шумо метавонед контейнереро, ки CPU-и аз ҳама истеъмолшударо муайян карда метавонед, бо:

sysdig -r monitoring-wordpress.scap -c topcontainers_cpu
CPU% контейнер.name --------------------------------------------- ----------------------------------- 5.37% wordpress-sysdig_wordpress_1 1.35% wordpress-sysdig_db_1 0.84% ​​мизбон 0.51% sysdig

3. Шумо метавонед боз ҳам амиқтар кашед ва раванди пуршиддати CPU-ро бо қуттии topprocs_cpu муайян кунед:

sysdig -r monitoring-wordpress.scap -c topprocs_cpu контейнер.намо wordpress_1 дорад
CPU% Процесс PID ---------------------------------------------- ---------------------------------- 0.12% apache2 8383 0.11% apache2 9413 0.11% apache2 9300 0.11% apache2 9242 0.11% apache2 8897 0.11% apache2 8422 0.10% апача2 9372 0.10% apache2 9241 0.10% apache2 8424 0.09% apache2 9429

Агар шумо хоҳед, ки тафсилоти бештарро дидан хоҳед, pis chisel алтернативаи амудӣ пешниҳод мекунад:

sysdig -r monitoring-wordpress.scap -c ps контейнер.name = wordpress-sysdig_wordpress_1
TID PID USER VIRT RES FDLIMIT CMD 5896 5896 решавӣ 232.82M 22.32M 429496729 apache2 8383 8383 www-data 307.44M 25.46M 429496729 apache2 8422 8422 www-data 235.44M 22.90M 429496729 apache2 8424 8424 www-data 307.44MM 257.49M49 497 489 494 482 472 482 474 484 474 484 484 484 479 489 8897 www-data 235.44M 22.89M 429496729 apache2 9154 9154 www-data 235.44M 22.91M 429496729 apache2 9241 9241 www-data 307.44M 25.66M 429496729 apache2 9242 9242 www-data 307.44M 25.67Mache-9999999679 - 9499996799 22.89M 429496729 apache2 9372 9372 www-data 235.44M 22.89M 429496729 apache2 9413 9413 www-data 233.44M 20.77M 429496729 apache2

Маслиҳатҳои муфид

Агар шумо Sysdigро барои сабти рӯйдодҳо ба мисли мисоли дар боло овардашуда идора кунед (sysdig -w monitoring-wordpress.scap), файли ҳодиса то даме ки тамоми фазои дастрасро истеъмол мекунад, афзоиш меёбад. Якчанд усулҳое ҳастанд, ки барои пешгирии ин ҳолат метавонанд кӯмак кунанд:

  • Шумораи ҳодисаҳои Сисдигро бо гузаштани он байрақи –n муайян кунед. Пас аз он ки Sysdig шумораи муайяни чорабиниҳоро сабт мекунад, он ба таври худкор баромадан мегирад:
sysdig -n 5000 -w мониторинг-wordpress.scap
  • Барои танзим кардани Sysdig парчамаи -C -ро истифода баред, то ки он сабадро ба файлҳои хурдтари андозаи муайян ҷудо кунад. Мисоли зерин пайваста ҳодисаҳоро дар файлҳои <10MB нигоҳ медорад:
sysdig -C 10 -w мониторинг-wordpress.scap

Ин эҷоди як хӯшаи файлҳои на бештар аз 10 МБ месозад:

ls -lh мониторинг-wordpress *
-rw-r - r--. 1 решаи решавӣ 9.6M Jan 7 17:13 monitoring-wordpress.scap0 -rw-r - r--. 1 решаи решавӣ 9.6M Jan 7 17:14 monitoring-wordpress.scap1 -rw-r - r--. 1 решаи решавӣ 9.6M Jan 7 17:14 monitoring-wordpress.scap2 -rw-r - r--. 1 решаи решавӣ 9.6M Jan 7 17:14 monitoring-wordpress.scap3 -rw-r - r--. 1 решаи решавӣ 9.6M Jan 7 17:14 monitoring-wordpress.scap4 -rw-r - r--. 1 решаи решавӣ 9.6M Jan 7 17:14 monitoring-wordpress.scap5 -rw-r - r--. 1 решаи решавӣ 9.6M Jan 7 17:14 monitoring-wordpress.scap6 -rw-r - r--. 1 решаи решавӣ 9.6M Jan 7 17:14 monitoring-wordpress.scap7 -rw-r - r--. 1 решаи решавӣ 6.4M Jan 7 17:14 monitoring-wordpress.scap8
  • Шумораи ҳадди аксари файлҳоро нишон диҳед, ки Sysdig бояд бо парчами -W нигоҳ дошта шавад. Масалан, шумо метавонед парчамҳои -C ва -W -ро ба ин монанд муттаҳид кунед:
sysdig -C 10 -W 4 -w мониторинг-wordpress.scap

Фармони дар боло зикршуда танҳо чор файли сабти охиринро нигоҳ медорад:

ls -lh мониторинг-wordpress *
-rw-r - r--. 1 решаи решавӣ 7.2M Jan 7 17:21 monitoring-wordpress.scap0 -rw-r - r--. 1 решаи решавӣ 9.6M Jan 7 17:21 monitoring-wordpress.scap1 -rw-r - r--. 1 решаи решавӣ 9.6M Jan 7 17:21 monitoring-wordpress.scap2 -rw-r - r--. 1 решаи решавӣ 9.6M Jan 7 17:21 monitoring-wordpress.scap3 реша @ cd06093b141b: / # sysdig -C 10 -W 4 -w monitoring-wordpress.scap

Мониторинги вақти воқеӣ

Бо Sysdig, шумо инчунин метавонед маълумотро дар вақти воқеӣ таҳлил кунед. Дар назари аввал, ин метавонад ба вазифаи душвор тобад, зеро бо нобаёнӣ, ҳама ҳодисаҳо ба консол пайваста чоп карда мешаванд. Хушбахтона, қубурҳо барои кӯмак дар ин ҷо ҳастанд.

Биёед мисол меорем.

Равандҳои худро дар асоси як контейнер таҳлил кунед

  1. Барои рӯйхати контейнерҳои худ фармони зеринро иҷро кунед:
docker ps
"9 дақиқа пеш то 9 дақиқа sysdig 06def7875617 wordpress: охирин" docker-enterpoint.s ... "3 соат пеш 3 соат 0.0.0: 0" 9 дақиқа пеш -> 80 / tcp wordpress-sysdig_wordpress_1 6bd8418eb03f mysql: 5.7 "docker-entrypoint.s ..." 3 соат пеш 3 соат 3306 / tcp, 33060 / tcp wordpress-sysdig_db_1

2. Шумо метавонед равандҳои дар контейнери WordPress иҷрошударо таҳлил кунед:

sysdig -pc -c topprocs_cpu контейнер.name = wordpress-sysdig_wordpress_1

3. Ҳамин тавр, шумо метавонед равандҳои дар контейнери MySQL иҷрошударо таҳлил кунед:

sysdig -pc -c topprocs_cpu контейнер.name = wordpress-sysdig_db_1

Дар хотир доред, ки на он қадар фарқ аз ин мисол, Sysdig метавонад трафики шабака, истифодаи диск ва ғайраро назорат кунад.

Дар ин дарс, шумо асосҳои истифодаи Sysdig-ро азхуд кардаед, то дар бораи фаъолияте, ки контейнерҳои шумо тавлид мекунанд, маълумоти дақиқ гиред. Намунаҳо дар ин блоги блог ба шумо дар оғоз ёфтан кӯмак карданд ва дар дарсӣҳои оянда мо ба шумо нишон медиҳем, ки чӣ гуна Csysdig ва Sysdig Inspect -ро истифода барем.