{"id":343,"date":"2016-04-21T18:24:00","date_gmt":"2016-04-21T18:24:00","guid":{"rendered":"https:\/\/opstree.com\/blog\/\/2016\/04\/21\/kitchen-chefs-diagnosis-center\/"},"modified":"2025-11-24T15:43:47","modified_gmt":"2025-11-24T10:13:47","slug":"kitchen-chefs-diagnosis-center","status":"publish","type":"post","link":"https:\/\/opstree.com\/blog\/2016\/04\/21\/kitchen-chefs-diagnosis-center\/","title":{"rendered":"Kitchen Chef&#8217;s diagnosis center"},"content":{"rendered":"<div dir=\"ltr\" style=\"text-align: left;\">\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 3pt; margin-top: 0; text-align: center;\">\n<div style=\"text-align: left;\"><\/div>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"border: none; font-family: Arial; font-size: 14.6667px; line-height: 1.38; transform: rotate(0rad); white-space: pre-wrap;\" src=\"https:\/\/lh3.googleusercontent.com\/LhpzkaPNy73DLjgx0ZPeTZr3PeqTjP0pVeq5HXIHZ1F11GTUqhqSwQj8-v8YceIy_KdAOvmV-DZ0hPIHln-5mFJ0QQ7gnuojRrEKAbEGZ-Bd6TOgx2FNwQaOFsdt2agefHQvPCJg\" width=\"500\" height=\"500\" \/><\/p>\n<\/div>\n<h2 style=\"line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;\">Introduction<\/h2>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">This time we familiarize you with the backings of chef kitchen. Chef kitchen provides you facility of trial and verification of your cookbooks over different \u00a0environment so that you can confidently use \u00a0them on your targeted infrastructure. This may be getting boring some times but here is always some seeds in oranges.<\/div>\n<h2 style=\"line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;\">Prerequisites<\/h2>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0; text-align: justify;\">This blog requires an initial information about Git and Vagrant. This blog uses centos7 \u00a0\u00a0as platform. It needs basic understanding of chef, it&#8217;s cookbooks and chef kitchen. To know about chef cookbooks and work with \u00a0chef kitchen follow our previous blogs of this series Chef Start here with ease&#8230;<\/div>\n<p><b id=\"docs-internal-guid-0335cffa-3884-d8f7-a00b-15d543d12493\" style=\"font-weight: normal;\">\u00a0<\/b><\/p>\n<h2 style=\"line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;\">Setup Kitchen<\/h2>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">To setup kitchen chase same procedure as we cater in our previous blog Chef-Kitchen \u00a0Do it simply .<\/div>\n<h2 style=\"line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;\">Backings of \u00a0Kitchen<\/h2>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Chef kitchen is the diagnosis center of chef. \u00a0Here \u00a0you can test the authenticity of your cookbooks on different platforms and confidently use them on your infra. Kitchen achive this by using its configuration file where you define all the things which are necessary to run the complete cycle of kitchen.<\/div>\n<h3 style=\"line-height: 1.38; margin-bottom: 4pt; margin-top: 16pt;\">.kitchen.yml<\/h3>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">This file contains all the required stuff to \u00a0run chef kitchen. This file is divided into four major sections.<\/div>\n<p><b style=\"font-weight: normal;\">\u00a0<\/b><\/p>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-left: 36pt; margin-top: 0;\"><img loading=\"lazy\" decoding=\"async\" style=\"-webkit-transform: rotate(0.00rad); border: none; transform: rotate(0.00rad);\" src=\"https:\/\/lh3.googleusercontent.com\/jMv5-LXZ7ujopnW5ekGaLA097AgSpweGBfoCPOq512PUyHv1Vk2fMKcu3amia8iQd57I1Dj9ClQuEK8cpDN9fc_uQHBUACWqL33M5Qhdb_vr7aI-vPMu1rI40e76vNxvpwKqh5nm\" width=\"390\" height=\"262\" \/><\/div>\n<p><b style=\"font-weight: normal;\">\u00a0<\/b><\/p>\n<ul style=\"margin-bottom: 0; margin-top: 0;\">\n<li style=\"background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666667px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: disc; text-decoration: none; vertical-align: baseline;\">\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Driver: This is \u00a0the name of a driver that will be used to create platform instances used during cookbook testing. This is the default driver used for all platforms and suites unless a platform or suite specifies a driver to override the default driver for that platform or suite; a driver specified for a suite will override a driver set for a platform.<\/div>\n<\/li>\n<\/ul>\n<p><b style=\"font-weight: normal;\">\u00a0<\/b><\/p>\n<ul style=\"margin-bottom: 0; margin-top: 0;\">\n<li style=\"background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666667px; font-style: normal; font-variant: normal; font-weight: bold; list-style-type: disc; text-decoration: none; vertical-align: baseline;\">\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Provisioner: This specifies how the chef-client will be simulated during testing. chef_zero andchef_solo are the most common provisioners used for testing cookbooks<\/div>\n<\/li>\n<\/ul>\n<p><b style=\"font-weight: normal;\">\u00a0<\/b><\/p>\n<ul style=\"margin-bottom: 0; margin-top: 0;\">\n<li style=\"background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666667px; font-style: normal; font-variant: normal; font-weight: bold; list-style-type: disc; text-decoration: none; vertical-align: baseline;\">\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Platforms: This is a the name of a platform on which Kitchen will perform cookbook testing, for example,ubuntu-12.04 or centos-6.4; depending on the platform.<\/div>\n<\/li>\n<li style=\"background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666667px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: disc; text-decoration: none; vertical-align: baseline;\">\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Suites: This is a collection of test suites, with each suite_name grouping defining an aspect of a cookbook to be tested.<\/div>\n<\/li>\n<\/ul>\n<p><b style=\"font-weight: normal;\">\u00a0<\/b><\/p>\n<h3 style=\"line-height: 1.38; margin-bottom: 4pt; margin-top: 16pt;\">.kitchen directory<\/h3>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">This directory holds logs for every kitchen run for each platform entry in .kitchen.yml file. This folder also holds keypair for the ssh into your virtual environment.<\/div>\n<h2 style=\"line-height: 1.38; margin-bottom: 6pt; margin-top: 18pt;\">Analysis of Kitchen<\/h2>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Kitchen performs its own complete cycle of testing via different phases. \u00a0Kitchen has its five phases i.e., create, converge, login, verify and destroy. \u00a0Each phase has its own significance and some specific task is gonna performed in every phase.<\/div>\n<h3 style=\"line-height: 1.38; margin-bottom: 4pt; margin-top: 16pt;\">Create<\/h3>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">In this step chef\u2019s kitchen tool creates a virtual instance. This virtual instance could use cloud or any other virtualization technology. Chef supports cookbook testing across many cloud providers and virtualization technologies.<\/div>\n<h3 style=\"line-height: 1.38; margin-bottom: 4pt; margin-top: 16pt;\">Converge<\/h3>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">This phase is responsible for application of your cookbook on virtual \u00a0instance. Here your all \u00a0cookbooks deployed into the virtual instance, though in next steps you can verify the complete functioning of your cookbooks.<\/div>\n<h3 style=\"line-height: 1.38; margin-bottom: 4pt; margin-top: 16pt;\">Login<\/h3>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">This step creates a ssh session into \u00a0your machine and provide you a login into it. So that you can run your test to verify the proper functioning of your cookbook.<\/div>\n<h3 style=\"line-height: 1.38; margin-bottom: 4pt; margin-top: 16pt;\">Verify<\/h3>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">In this \u00a0step you manually perform all checks so that you can certify the authenticity of your cookbook over all platforms.<\/div>\n<h3 style=\"line-height: 1.38; margin-bottom: 4pt; margin-top: 16pt;\">Destroy<\/h3>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">This is the final step \u00a0of your kitchen testing cycle. Here you destroy your virtual environment after entire testing phases.<\/div>\n<p><b style=\"font-weight: normal;\">\u00a0<\/b><\/p>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\"><img loading=\"lazy\" decoding=\"async\" style=\"-webkit-transform: rotate(0.00rad); border: none; transform: rotate(0.00rad);\" src=\"https:\/\/lh3.googleusercontent.com\/Ynn2K1ZkWiVbUn6PxMSRN6B_I-tK1Y2wCXVqHnqMs7JbM-RdPKiD4FIMwO6Z4ZLritbP37Y7vsRsZmoDtEr3ZMfQiYGukQsSvpu3Odwy3OSeB3Oa7G040PL4VquOM0zfhXn-ubmC\" width=\"537\" height=\"64\" \/><\/div>\n<p><b style=\"font-weight: normal;\">\u00a0<\/b><\/p>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Here is also a combine command for all these phases i.e., \u00a0kitchen test. This command club all the commands in below listed manner.<\/div>\n<ul style=\"margin-bottom: 0; margin-top: 0;\">\n<li style=\"background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666667px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: disc; text-decoration: none; vertical-align: baseline;\">\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Kitchen destroy<\/div>\n<\/li>\n<li style=\"background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666667px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: disc; text-decoration: none; vertical-align: baseline;\">\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Kitchen create<\/div>\n<\/li>\n<li style=\"background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666667px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: disc; text-decoration: none; vertical-align: baseline;\">\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Kitchen converge<\/div>\n<\/li>\n<li style=\"background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666667px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: disc; text-decoration: none; vertical-align: baseline;\">\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Kitchen verify<\/div>\n<\/li>\n<\/ul>\n<p><b style=\"font-weight: normal;\">\u00a0<\/b><\/p>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0;\">Hass finally this over!! \u00a0I know you too get frustrated with the theories. We now aware with the backings of Chef Kitchen.<\/div>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" style=\"-webkit-transform: rotate(0.00rad); border: none; transform: rotate(0.00rad);\" src=\"https:\/\/lh4.googleusercontent.com\/wkmH8yxn13vPt2R-ekFXij1yNKYlABqUx8hvDSwkVMj4kg_nTmtFD24u9Y7hyry2n3IZOCu5B3_q-W03dhgrISIC8us-itVoFRKgjMQPuk27t3xr23eKZxvBZr7d42D0j4VBmGPy\" width=\"162\" height=\"154\" \/><\/div>\n<p><b style=\"font-weight: normal;\">\u00a0<\/b><\/p>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0; text-align: center;\">\u201cBe Warned: I Am Bored. This Could Get Dangerous.\u201d<\/div>\n<div dir=\"ltr\" style=\"line-height: 1.38; margin-bottom: 0; margin-top: 0; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" style=\"-webkit-transform: rotate(0.00rad); border: none; transform: rotate(0.00rad);\" src=\"https:\/\/lh6.googleusercontent.com\/xwgZUBz6Wk7f4jiHnqsgnWGtNNi7SovTX1z42LRKDXglN-ZF4RZDgXnY3YpwZD7ZHaiYAhJ2JsARHVIJWVOi6zhgnCJHs3rIU8VSGrCM__hclTxPeptUlqiFxjEUQ1bV30iKoVX3\" alt=\"1366791921.gif\" width=\"310\" height=\"175\" \/><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Introduction This time we familiarize you with the backings of chef kitchen. Chef kitchen provides you facility of trial and verification of your cookbooks over different \u00a0environment so that you can confidently use \u00a0them on your targeted infrastructure. This may be getting boring some times but here is always some seeds in oranges. Prerequisites This &hellip; <a href=\"https:\/\/opstree.com\/blog\/2016\/04\/21\/kitchen-chefs-diagnosis-center\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Kitchen Chef&#8217;s diagnosis center&#8221;<\/span><\/a><\/p>\n","protected":false},"author":72934568,"featured_media":29900,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false},"version":2}},"categories":[225871,28070474],"tags":[768739297,768739308,676319247,8613,101807,76604],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2025\/11\/DevSecOps-1.jpg","jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pfDBOm-5x","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/343"}],"collection":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/users\/72934568"}],"replies":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/comments?post=343"}],"version-history":[{"count":2,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/343\/revisions"}],"predecessor-version":[{"id":30033,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/343\/revisions\/30033"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/media\/29900"}],"wp:attachment":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/media?parent=343"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/categories?post=343"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/tags?post=343"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}