{"id":34934,"date":"2024-08-29T09:54:39","date_gmt":"2024-08-29T02:54:39","guid":{"rendered":"http:\/\/jupitek.maudemo.vip\/index.php\/2024\/08\/29\/a-beginners-guide-to-chef\/"},"modified":"2024-08-29T09:54:39","modified_gmt":"2024-08-29T02:54:39","slug":"a-beginners-guide-to-chef","status":"publish","type":"post","link":"https:\/\/jupitek.maudemo.vip\/index.php\/2024\/08\/29\/a-beginners-guide-to-chef\/","title":{"rendered":"H\u01b0\u1edbng d\u1eabn Chef cho ng\u01b0\u1eddi m\u1edbi b\u1eaft \u0111\u1ea7u"},"content":{"rendered":"<p><em>Chef<\/em>&nbsp;l\u00e0 m\u1ed9t n\u1ec1n t\u1ea3ng qu\u1ea3n l\u00fd c\u1ea5u h\u00ecnh khai b\u00e1o v\u00e0 t\u1ef1 \u0111\u1ed9ng h\u00f3a \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 d\u1ecbch c\u01a1 s\u1edf h\u1ea1 t\u1ea7ng th\u00e0nh m\u00e3. \u0110i\u1ec1u n\u00e0y cho ph\u00e9p qu\u00e1 tr\u00ecnh ph\u00e1t tri\u1ec3n v\u00e0 tri\u1ec3n khai v\u1edbi th\u1eed nghi\u1ec7m t\u1ed1t h\u01a1n, tri\u1ec3n khai hi\u1ec7u qu\u1ea3 v\u00e0 c\u00f3 th\u1ec3 d\u1ef1 \u0111o\u00e1n, qu\u1ea3n l\u00fd phi\u00ean b\u1ea3n t\u1eadp trung v\u00e0 m\u00f4i tr\u01b0\u1eddng c\u00f3 th\u1ec3 t\u00e1i t\u1ea1o tr\u00ean t\u1ea5t c\u1ea3 c\u00e1c m\u00e1y ch\u1ee7.<\/p>\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/a_beginners_guide_to_chef_smg_hu49c03114a9ce8ad2bc0bd62c0ddb3f2a_200230_1388x0_resize_q71_bgfafafc_catmullrom.jpg\" alt=\"\u0110\u1ea7u b\u1ebfp cho ng\u01b0\u1eddi m\u1edbi b\u1eaft \u0111\u1ea7u\" title=\"\u0110\u1ea7u b\u1ebfp cho ng\u01b0\u1eddi m\u1edbi b\u1eaft \u0111\u1ea7u\"\/><\/figure>\n<p>Chef ho\u1ea1t \u0111\u1ed9ng d\u1ef1a tr\u00ean ba th\u00e0nh ph\u1ea7n c\u1ed1t l\u00f5i:<\/p>\n<ul>\n<li><strong>M\u00e1y ch\u1ee7 Chef:<\/strong>&nbsp;L\u00e0 trung t\u00e2m ho\u1ea1t \u0111\u1ed9ng, m\u00e1y ch\u1ee7 Chef l\u01b0u tr\u1eef, qu\u1ea3n l\u00fd v\u00e0 cung c\u1ea5p d\u1eef li\u1ec7u c\u1ea5u h\u00ecnh cho t\u1ea5t c\u1ea3 c\u00e1c th\u00e0nh ph\u1ea7n Chef kh\u00e1c.<\/li>\n<li><strong><strong>Chef Workstations<\/strong>:<\/strong>&nbsp;Tr\u1ea1m l\u00e0m vi\u1ec7c l\u00e0 m\u00e1y t\u00ednh c\u00e1 nh\u00e2n ho\u1eb7c m\u00e1y ch\u1ee7 \u1ea3o n\u01a1i m\u00e3 c\u1ea5u h\u00ecnh cho Chef \u0111\u01b0\u1ee3c t\u1ea1o, ki\u1ec3m tra v\u00e0 thay \u0111\u1ed5i. C\u00f3 th\u1ec3 c\u00f3 nhi\u1ec1u tr\u1ea1m l\u00e0m vi\u1ec7c t\u00f9y theo nhu c\u1ea7u, cho d\u00f9 l\u00e0 m\u1ed9t tr\u1ea1m cho m\u1ed7i ng\u01b0\u1eddi hay kh\u00f4ng.<\/li>\n<li><strong>Chef Nodes:<\/strong>&nbsp;Nodes l\u00e0 m\u00e1y ch\u1ee7 m\u00e0 Chef \u0111\u1ea9y c\u00e1c thay \u0111\u1ed5i \u0111\u1ebfn, th\u01b0\u1eddng l\u00e0 m\u1ed9t \u0111\u1ed9i g\u1ed3m nhi\u1ec1u m\u00e1y t\u00ednh c\u1ea7n l\u1ee3i \u00edch c\u1ee7a t\u1ef1 \u0111\u1ed9ng h\u00f3a. Chef c\u00f3 th\u1ec3 qu\u1ea3n l\u00fd c\u00e1c n\u00fat l\u00e0 m\u00e1y ch\u1ee7 \u1ea3o, container, thi\u1ebft b\u1ecb m\u1ea1ng v\u00e0 thi\u1ebft b\u1ecb l\u01b0u tr\u1eef. M\u1ed9t m\u00e1y kh\u00e1ch Chef \u0111\u01b0\u1ee3c c\u00e0i \u0111\u1eb7t tr\u00ean m\u1ecdi n\u00fat do Chef qu\u1ea3n l\u00fd.<\/li>\n<\/ul>\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/chef_graph_hu14dd7de041028599665536aad0220d76_36528_1388x0_resize_q71_bgfafafc_catmullrom_3.jpg\" alt=\"Chef Workflow\" title=\"Chef Workflow\"\/><\/figure>\n<p>Ba th\u00e0nh ph\u1ea7n n\u00e0y cho ph\u00e9p Chef giao ti\u1ebfp theo c\u00e1ch ch\u1ee7 y\u1ebfu l\u00e0 tuy\u1ebfn t\u00ednh, v\u1edbi b\u1ea5t k\u1ef3 thay \u0111\u1ed5i n\u00e0o \u0111\u01b0\u1ee3c \u0111\u1ea9y t\u1eeb m\u00e1y tr\u1ea1m \u0111\u1ebfn m\u00e1y ch\u1ee7 Chef, sau \u0111\u00f3 \u0111\u01b0\u1ee3c k\u00e9o t\u1eeb m\u00e1y ch\u1ee7 \u0111\u1ebfn c\u00e1c n\u00fat v\u00e0 \u0111\u01b0\u1ee3c tri\u1ec3n khai tr\u00ean m\u1ed7i n\u00fat th\u00f4ng qua m\u00e1y kh\u00e1ch Chef. \u0110\u1ed5i l\u1ea1i, th\u00f4ng tin v\u1ec1 n\u00fat \u0111\u01b0\u1ee3c chuy\u1ec3n \u0111\u1ebfn m\u00e1y ch\u1ee7 \u0111\u1ec3 x\u00e1c \u0111\u1ecbnh t\u1ec7p n\u00e0o kh\u00e1c v\u1edbi c\u00e0i \u0111\u1eb7t hi\u1ec7n t\u1ea1i v\u00e0 c\u1ea7n \u0111\u01b0\u1ee3c c\u1eadp nh\u1eadt.<\/p>\n<p>Sau khi \u0111\u1ecdc h\u01b0\u1edbng d\u1eabn n\u00e0y, n\u1ebfu b\u1ea1n mu\u1ed1n t\u00ecm hi\u1ec3u th\u00eam v\u1ec1 c\u00e1ch tri\u1ec3n khai Chef, h\u00e3y xem&nbsp;<a href=\"https:\/\/www.linode.com\/docs\/guides\/install-a-chef-server-workstation-on-ubuntu-18-04\/\">Thi\u1ebft l\u1eadp m\u00e1y ch\u1ee7, m\u00e1y tr\u1ea1m v\u00e0 n\u00fat Chef tr\u00ean Ubuntu 18.04<\/a>&nbsp;v\u00e0&nbsp;<a href=\"https:\/\/www.linode.com\/docs\/guides\/creating-your-first-chef-cookbook\/\">T\u1ea1o s\u00e1ch d\u1ea1y n\u1ea5u \u0103n Chef \u0111\u1ea7u ti\u00ean c\u1ee7a b\u1ea1n<\/a>&nbsp;.<\/p>\n<h2 id=\"the-chef-server\">The Chef Server<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#the-chef-server\"><\/a><a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#the-chef-server\"><\/a><\/h2>\n<p>M\u00e1y ch\u1ee7 Chef cung c\u1ea5p m\u1ed9t \u0111\u01b0\u1eddng d\u1eabn truy\u1ec1n th\u00f4ng gi\u1eefa c\u00e1c m\u00e1y tr\u1ea1m n\u01a1i m\u00e3 h\u00f3a c\u01a1 s\u1edf h\u1ea1 t\u1ea7ng di\u1ec5n ra v\u00e0 c\u00e1c n\u00fat \u0111\u01b0\u1ee3c c\u1ea5u h\u00ecnh b\u1edfi c\u00e1c m\u00e1y tr\u1ea1m \u0111\u00f3. T\u1ea5t c\u1ea3 c\u00e1c t\u1ec7p c\u1ea5u h\u00ecnh, s\u1ed5 tay h\u01b0\u1edbng d\u1eabn, si\u00eau d\u1eef li\u1ec7u v\u00e0 th\u00f4ng tin kh\u00e1c \u0111\u01b0\u1ee3c t\u1ea1o tr\u00ean c\u00e1c m\u00e1y tr\u1ea1m v\u00e0 \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef tr\u00ean m\u00e1y ch\u1ee7 Chef. M\u00e1y ch\u1ee7 Chef c\u0169ng l\u01b0u gi\u1eef b\u1ea3n ghi tr\u1ea1ng th\u00e1i c\u1ee7a t\u1ea5t c\u1ea3 c\u00e1c n\u00fat t\u1ea1i th\u1eddi \u0111i\u1ec3m ch\u1ea1y&nbsp;<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#chef-client\">chef-client<\/a>&nbsp;cu\u1ed1i c\u00f9ng .<\/p>\n<p>M\u00e1y tr\u1ea1m giao ti\u1ebfp v\u1edbi m\u00e1y ch\u1ee7 Chef b\u1eb1ng&nbsp;c\u00e1c c\u00f4ng c\u1ee5 d\u00f2ng l\u1ec7nh&nbsp;<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#knife\"><em>Knife<\/em><\/a><a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#chef-client\">&nbsp;v\u00e0 Chef, trong khi c\u00e1c n\u00fat giao ti\u1ebfp v\u1edbi m\u00e1y ch\u1ee7 Chef b\u1eb1ng \u1ee9ng d\u1ee5ng kh\u00e1ch Chef<\/a>&nbsp;.<\/p>\n<p>B\u1ea5t k\u1ef3 thay \u0111\u1ed5i n\u00e0o \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n \u0111\u1ed1i v\u1edbi m\u00e3 c\u01a1 s\u1edf h\u1ea1 t\u1ea7ng c\u1ee7a b\u1ea1n ph\u1ea3i \u0111i qua m\u00e1y ch\u1ee7 Chef \u0111\u1ec3 \u0111\u01b0\u1ee3c \u00e1p d\u1ee5ng cho c\u00e1c n\u00fat. Tr\u01b0\u1edbc khi ch\u1ea5p nh\u1eadn ho\u1eb7c \u0111\u1ea9y c\u00e1c thay \u0111\u1ed5i, m\u00e1y ch\u1ee7 Chef x\u00e1c th\u1ef1c m\u1ecdi giao ti\u1ebfp th\u00f4ng qua REST API c\u1ee7a n\u00f3 b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng m\u00e3 h\u00f3a kh\u00f3a c\u00f4ng khai.<\/p>\n<h3 id=\"components-of-a-chef-server\">C\u00e1c th\u00e0nh ph\u1ea7n c\u1ee7a m\u1ed9t Chef Server<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#components-of-a-chef-server\"><\/a><\/h3>\n<p>Chef Server bao g\u1ed3m m\u1ed9t s\u1ed1 th\u00e0nh ph\u1ea7n gi\u00fap giao ti\u1ebfp hi\u1ec7u qu\u1ea3 v\u1edbi c\u00e1c m\u00e1y tr\u1ea1m v\u00e0 n\u00fat. M\u1ed7i m\u00e1y ch\u1ee7 Chef c\u00f3 m\u1ed9t b\u1ed9 c\u00e2n b\u1eb1ng t\u1ea3i NGINX front-end \u0111\u1ec3 \u0111\u1ecbnh tuy\u1ebfn t\u1ea5t c\u1ea3 c\u00e1c y\u00eau c\u1ea7u \u0111\u1ebfn API, m\u1ed9t c\u01a1 s\u1edf d\u1eef li\u1ec7u PostgreSQL, m\u1ed9t phi\u00ean b\u1ea3n Apache Solr (\u0111\u01b0\u1ee3c \u0111\u00f3ng g\u00f3i b\u1edfi chef-solr) \u0111\u1ec3 l\u1eadp ch\u1ec9 m\u1ee5c v\u00e0 t\u00ecm ki\u1ebfm, v\u00e0 m\u1ed9t giao di\u1ec7n web doanh nghi\u1ec7p (\u0111\u01b0\u1ee3c g\u1ecdi l\u00e0 Chef automate) cho c\u00e1c t\u00e1c v\u1ee5 qu\u1ea3n l\u00fd m\u00e1y ch\u1ee7 Chef ph\u1ed5 bi\u1ebfn v\u00e0 ph\u00e2n t\u00edch d\u1eef li\u1ec7u t\u1ed5ng h\u1ee3p. T\u1ea5t c\u1ea3 c\u00e1c th\u00e0nh ph\u1ea7n n\u00e0y g\u00f3p ph\u1ea7n v\u00e0o kh\u1ea3 n\u0103ng x\u1eed l\u00fd c\u00e1c y\u00eau c\u1ea7u c\u1ee7a m\u00e1y ch\u1ee7 Chef \u0111\u1ed1i v\u1edbi h\u00e0ng ngh\u00ecn n\u00fat v\u00e0 c\u00f3 th\u1ec3 bi\u1ebfn m\u00e1y ch\u1ee7 Chef th\u00e0nh m\u1ed9t \u1ee9ng d\u1ee5ng s\u1eed d\u1ee5ng nhi\u1ec1u t\u00e0i nguy\u00ean, do \u0111\u00f3, y\u00eau c\u1ea7u h\u1ec7 th\u1ed1ng t\u1ed1i thi\u1ec3u c\u1ee7a m\u00e1y ch\u1ee7 Chef l\u00e0 Linode c\u00f3 8 GB RAM v\u00e0 b\u1ed1n l\u00f5i CPU. \u0110\u1ec3 bi\u1ebft th\u00eam th\u00f4ng s\u1ed1 k\u1ef9 thu\u1eadt, h\u00e3y xem trang t\u00e0i li\u1ec7u&nbsp;<a href=\"https:\/\/docs.chef.io\/chef_system_requirements.html\" target=\"_blank\" rel=\"noreferrer noopener\">Y\u00eau c\u1ea7u h\u1ec7 th\u1ed1ng Chef<\/a>&nbsp;.<\/p>\n<h3 id=\"bookshelf\">Bookshelf<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#bookshelf\"><\/a><\/h3>\n<p>Chef Server s\u1eed d\u1ee5ng&nbsp;<em>Bookshelf<\/em>&nbsp;\u0111\u1ec3 l\u01b0u tr\u1eef c\u00e1c s\u00e1ch d\u1ea1y n\u1ea5u \u0103n (v\u00e0 c\u00e1c t\u1ec7p v\u00e0 m\u1eabu li\u00ean quan). Bookshelf l\u00e0 kho l\u01b0u tr\u1eef c\u00f3 phi\u00ean b\u1ea3n (th\u01b0\u1eddng n\u1eb1m t\u1ea1i&nbsp;<code>\/var\/opt\/opscode\/bookshelf<\/code>; c\u1ea7n c\u00f3 quy\u1ec1n truy c\u1eadp g\u1ed1c \u0111\u1ea7y \u0111\u1ee7 \u0111\u1ec3 truy c\u1eadp). Khi m\u1ed9t s\u00e1ch d\u1ea1y n\u1ea5u \u0103n \u0111\u01b0\u1ee3c t\u1ea3i l\u00ean m\u00e1y ch\u1ee7 Chef, phi\u00ean b\u1ea3n m\u1edbi s\u1ebd \u0111\u01b0\u1ee3c so s\u00e1nh v\u1edbi phi\u00ean b\u1ea3n \u0111\u00e3 l\u01b0u tr\u1eef. N\u1ebfu c\u00f3 thay \u0111\u1ed5i, phi\u00ean b\u1ea3n m\u1edbi s\u1ebd \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef. M\u00e1y ch\u1ee7 Chef ch\u1ec9 l\u01b0u tr\u1eef m\u1ed9t b\u1ea3n sao c\u1ee7a t\u1ec7p ho\u1eb7c m\u1eabu, ngh\u0129a l\u00e0 n\u1ebfu t\u00e0i nguy\u00ean \u0111\u01b0\u1ee3c chia s\u1ebb gi\u1eefa c\u00e1c s\u00e1ch d\u1ea1y n\u1ea5u \u0103n v\u00e0 c\u00e1c phi\u00ean b\u1ea3n s\u00e1ch d\u1ea1y n\u1ea5u \u0103n, ch\u00fang s\u1ebd kh\u00f4ng \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef nhi\u1ec1u l\u1ea7n.<\/p>\n<h2 id=\"the-chef-workstation\">The Chef Workstation<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#the-chef-workstation\"><\/a><a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#the-chef-workstation\"><\/a><\/h2>\n<p>Chef workstation&nbsp; l\u00e0 n\u01a1i ng\u01b0\u1eddi d\u00f9ng t\u1ea1o, ki\u1ec3m tra v\u00e0 duy tr\u00ec s\u1ed5 tay n\u1ea5u \u0103n v\u00e0 ch\u00ednh s\u00e1ch \u0111\u01b0\u1ee3c \u0111\u1ea9y l\u00ean m\u00e1y ch\u1ee7 Chef v\u00e0 \u0111\u01b0\u1ee3c k\u00e9o b\u1edfi c\u00e1c n\u00fat Chef. Ch\u1ee9c n\u0103ng tr\u1ea1m l\u00e0m vi\u1ec7c c\u00f3 s\u1eb5n b\u1eb1ng c\u00e1ch t\u1ea3i xu\u1ed1ng&nbsp;<a href=\"https:\/\/downloads.chef.io\/chef-workstation\/\" target=\"_blank\" rel=\"noreferrer noopener\">g\u00f3i Chef Workstation<\/a>&nbsp;, cung c\u1ea5p c\u00e1c c\u00f4ng c\u1ee5 d\u00f2ng l\u1ec7nh chef v\u00e0 knife, c\u00e1c c\u00f4ng c\u1ee5 ki\u1ec3m tra (Test Kitchen, ChefSpec, Cookstyle v\u00e0 Foodcritic) v\u00e0&nbsp;<a href=\"https:\/\/www.chef.io\/inspec\/\" target=\"_blank\" rel=\"noreferrer noopener\">InSpec<\/a>&nbsp;. Inspec l\u00e0 m\u1ed9t c\u00f4ng c\u1ee5 \u0111\u1ec3 vi\u1ebft c\u00e1c b\u00e0i ki\u1ec3m tra t\u1ef1 \u0111\u1ed9ng cho c\u00e1c y\u00eau c\u1ea7u v\u1ec1 tu\u00e2n th\u1ee7, b\u1ea3o m\u1eadt v\u00e0 ch\u00ednh s\u00e1ch. Ngo\u00e0i ra,&nbsp;<em>Berkshelf<\/em>&nbsp;, tr\u00ecnh qu\u1ea3n l\u00fd ph\u1ee5 thu\u1ed9c cho s\u1ed5 tay n\u1ea5u \u0103n Chef, \u0111\u01b0\u1ee3c c\u00e0i \u0111\u1eb7t.<\/p>\n<p>M\u00e1y tr\u1ea1m Chef c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c c\u00e0i \u0111\u1eb7t tr\u00ean m\u00e1y ch\u1ee7 \u1ea3o ho\u1eb7c m\u00e1y t\u00ednh c\u00e1 nh\u00e2n. M\u00e1y tr\u1ea1m Chef s\u1ebd t\u01b0\u01a1ng t\u00e1c v\u1edbi m\u1ed9t m\u00e1y ch\u1ee7 Chef duy nh\u1ea5t v\u00e0 h\u1ea7u h\u1ebft c\u00f4ng vi\u1ec7c \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n trong th\u01b0&nbsp;<code>chef-repo<\/code>m\u1ee5c n\u1eb1m tr\u00ean m\u00e1y tr\u1ea1m.<\/p>\n<p>S\u00e1ch d\u1ea1y n\u1ea5u \u0103n \u0111\u01b0\u1ee3c t\u1ea1o tr\u00ean m\u00e1y tr\u1ea1m Chef c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c m\u1ed9t t\u1ed5 ch\u1ee9c s\u1eed d\u1ee5ng ri\u00eang ho\u1eb7c t\u1ea3i l\u00ean&nbsp;<a href=\"https:\/\/supermarket.chef.io\/\" target=\"_blank\" rel=\"noreferrer noopener\">Chef Supermarket<\/a>&nbsp;\u0111\u1ec3 nh\u1eefng ng\u01b0\u1eddi kh\u00e1c s\u1eed d\u1ee5ng. T\u01b0\u01a1ng t\u1ef1 nh\u01b0 v\u1eady, m\u00e1y tr\u1ea1m Chef c\u00f3 th\u1ec3 t\u1ea3i xu\u1ed1ng s\u00e1ch d\u1ea1y n\u1ea5u \u0103n c\u00f3 trong Supermarket.<\/p>\n<p><a href=\"https:\/\/docs.chef.io\/workstation\" target=\"_blank\" rel=\"noreferrer noopener\">Xem t\u00e0i li\u1ec7u ch\u00ednh th\u1ee9c<\/a>&nbsp;c\u1ee7a Chef&nbsp;\u0111\u1ec3 bi\u1ebft th\u00eam th\u00f4ng tin chi ti\u1ebft v\u1ec1 Chef Workstation v\u00e0 c\u00e1c c\u00f4ng c\u1ee5 c\u1ee7a n\u00f3.<\/p>\n<h3 id=\"chef-repo\">chef-repo<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#chef-repo\"><\/a><\/h3>\n<p>Th\u01b0 m\u1ee5c c\u1ee7a m\u00e1y tr\u1ea1m Chef&nbsp;<code>chef-repo<\/code> l\u00e0 n\u01a1i c\u00e1c s\u00e1ch h\u01b0\u1edbng d\u1eabn n\u1ea5u \u0103n \u0111\u01b0\u1ee3c bi\u00ean so\u1ea1n v\u00e0 duy tr\u00ec. B\u1ea5t k\u1ef3 t\u00e0i nguy\u00ean h\u1ed7 tr\u1ee3 n\u00e0o (nh\u01b0 vai tr\u00f2, t\u00fai d\u1eef li\u1ec7u v\u00e0 m\u00f4i tr\u01b0\u1eddng) c\u0169ng \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef t\u1ea1i \u0111\u00f3. N\u00ean&nbsp;<code>chef-repo<\/code>\u0111\u01b0\u1ee3c ki\u1ec3m so\u00e1t phi\u00ean b\u1ea3n b\u1eb1ng h\u1ec7 th\u1ed1ng ki\u1ec3m so\u00e1t phi\u00ean b\u1ea3n t\u1eeb xa (nh\u01b0 Git). Chef c\u00f3 th\u1ec3 giao ti\u1ebfp v\u1edbi m\u00e1y ch\u1ee7 t\u1eeb&nbsp;<code>chef-repo<\/code>v\u00e0 \u0111\u1ea9y b\u1ea5t k\u1ef3 thay \u0111\u1ed5i n\u00e0o th\u00f4ng qua vi\u1ec7c s\u1eed d\u1ee5ng&nbsp;<code>knife<\/code>l\u1ec7nh.<\/p>\n<p>B\u1ea1n c\u00f3 th\u1ec3 t\u1ea1o kho l\u01b0u tr\u1eef Chef b\u1eb1ng l\u1ec7nh sau:&nbsp;<code>chef generate repo repo-name<\/code>.<\/p>\n<h3 id=\"knife\">Knife<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#knife\"><\/a><\/h3>\n<p>C\u00f4ng c\u1ee5 d\u00f2ng l\u1ec7nh Knife l\u00e0 c\u00e1ch ch\u00ednh m\u00e0 m\u1ed9t m\u00e1y tr\u1ea1m giao ti\u1ebfp n\u1ed9i dung c\u1ee7a&nbsp;<code>chef-repo<\/code>th\u01b0 m\u1ee5c v\u1edbi m\u00e1y ch\u1ee7 Chef. N\u00f3 c\u0169ng cung c\u1ea5p giao di\u1ec7n \u0111\u1ec3 qu\u1ea3n l\u00fd c\u00e1c n\u00fat, s\u1ed5 tay n\u1ea5u \u0103n, vai tr\u00f2, m\u00f4i tr\u01b0\u1eddng v\u00e0 t\u00fai d\u1eef li\u1ec7u.<\/p>\n<ul>\n<li>L\u1ec7nh Knife \u0111\u01b0\u1ee3c th\u1ef1c thi t\u1eeb m\u00e1y tr\u1ea1m s\u1eed d\u1ee5ng \u0111\u1ecbnh d\u1ea1ng sau:<\/li>\n<li><code>knife subcommand [ARGUMENT] (options)<\/code><\/li>\n<li>V\u00ed d\u1ee5, \u0111\u1ec3 xem th\u00f4ng tin chi ti\u1ebft v\u1ec1 ng\u01b0\u1eddi d\u00f9ng Chef, h\u00e3y th\u1ef1c hi\u1ec7n l\u1ec7nh sau:<\/li>\n<li><code>knife user show USER_NAME<\/code><\/li>\n<\/ul>\n<p>C\u00f4ng c\u1ee5 d\u00f2ng l\u1ec7nh Knife \u0111\u01b0\u1ee3c c\u1ea5u h\u00ecnh b\u1eb1ng&nbsp;<code>knife.rb<\/code> t\u1ec7p:<\/p>\n<pre class=\"wp-block-code\"><code>log_level                :info\nlog_location             STDOUT\nnode_name                'username'\nclient_key               '~\/chef-repo\/.chef\/username.pem'\nvalidation_client_name   'shortname-validator'\nvalidation_key           '~\/chef-repo\/.chef\/shortname.pem'\nchef_server_url          'https:\/\/123.45.67.89\/organizations\/shortname'\nsyntax_check_cache_path  '~\/chef-repo\/.chef\/syntax_check_cache'\ncookbook_path &#91; '~\/chef-repo\/cookbooks' ]<\/code><\/pre>\n<p>T\u1ec7p m\u1eb7c \u0111\u1ecbnh&nbsp;<code>knife.rb<\/code>\u0111\u01b0\u1ee3c \u0111\u1ecbnh ngh\u0129a v\u1edbi c\u00e1c thu\u1ed9c t\u00ednh sau:<\/p>\n<ul>\n<li><strong>log_level:<\/strong>&nbsp;L\u01b0\u1ee3ng nh\u1eadt k\u00fd \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef trong t\u1ec7p nh\u1eadt k\u00fd. Gi\u00e1 tr\u1ecb m\u1eb7c \u0111\u1ecbnh,&nbsp;<code>:info<\/code>, l\u01b0u \u00fd r\u1eb1ng b\u1ea5t k\u1ef3 th\u00f4ng b\u00e1o th\u00f4ng tin n\u00e0o c\u0169ng s\u1ebd \u0111\u01b0\u1ee3c ghi l\u1ea1i. C\u00e1c gi\u00e1 tr\u1ecb kh\u00e1c bao g\u1ed3m&nbsp;<code>:debug<\/code>,&nbsp;<code>:warn<\/code>,&nbsp;<code>:error<\/code>, v\u00e0&nbsp;<code>:fatal<\/code>.<\/li>\n<li><strong>log_location:<\/strong>&nbsp;V\u1ecb tr\u00ed c\u1ee7a t\u1ec7p nh\u1eadt k\u00fd. Gi\u00e1 tr\u1ecb m\u1eb7c \u0111\u1ecbnh&nbsp;<code>STOUT<\/code>l\u00e0 d\u00e0nh cho&nbsp;<em>ghi nh\u1eadt k\u00fd \u0111\u1ea7u ra chu\u1ea9n<\/em>&nbsp;. N\u1ebfu \u0111\u1eb7t th\u00e0nh gi\u00e1 tr\u1ecb kh\u00e1c th\u00ec ghi nh\u1eadt k\u00fd \u0111\u1ea7u ra chu\u1ea9n v\u1eabn s\u1ebd \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n.<\/li>\n<li><strong>node_name:<\/strong>&nbsp;T\u00ean ng\u01b0\u1eddi d\u00f9ng c\u1ee7a ng\u01b0\u1eddi s\u1eed d\u1ee5ng m\u00e1y tr\u1ea1m. Ng\u01b0\u1eddi d\u00f9ng n\u00e0y c\u1ea7n c\u00f3 kh\u00f3a \u1ee7y quy\u1ec1n h\u1ee3p l\u1ec7 n\u1eb1m tr\u00ean m\u00e1y tr\u1ea1m.<\/li>\n<li><strong>client_key:<\/strong>&nbsp;V\u1ecb tr\u00ed kh\u00f3a \u1ee7y quy\u1ec1n c\u1ee7a ng\u01b0\u1eddi d\u00f9ng.<\/li>\n<li><strong>validation_client_name:<\/strong>&nbsp;T\u00ean c\u1ee7a kh\u00f3a x\u00e1c th\u1ef1c m\u00e1y ch\u1ee7 x\u00e1c \u0111\u1ecbnh xem m\u1ed9t n\u00fat c\u00f3 \u0111\u01b0\u1ee3c \u0111\u0103ng k\u00fd v\u1edbi m\u00e1y ch\u1ee7 Chef hay kh\u00f4ng. C\u00e1c gi\u00e1 tr\u1ecb n\u00e0y ph\u1ea3i kh\u1edbp trong qu\u00e1 tr\u00ecnh ch\u1ea1y chef-client.<\/li>\n<li><strong>validation_key:<\/strong>&nbsp;\u0110\u01b0\u1eddng d\u1eabn \u0111\u1ebfn kh\u00f3a x\u00e1c th\u1ef1c c\u1ee7a t\u1ed5 ch\u1ee9c b\u1ea1n.<\/li>\n<li><strong>chef_server_url:<\/strong>&nbsp;URL c\u1ee7a m\u00e1y ch\u1ee7 Chef, l\u00e0&nbsp;<code>shortname<\/code>t\u00ean vi\u1ebft t\u1eaft \u0111\u01b0\u1ee3c x\u00e1c \u0111\u1ecbnh c\u1ee7a t\u1ed5 ch\u1ee9c c\u1ee7a b\u1ea1n (c\u0169ng c\u00f3 th\u1ec3 l\u00e0 \u0111\u1ecba ch\u1ec9 IP).&nbsp;<code>\/organizations\/shortname<\/code>ph\u1ea3i \u0111\u01b0\u1ee3c bao g\u1ed3m trong URL.<\/li>\n<li><strong>syntax_check_cache_path:<\/strong>&nbsp;V\u1ecb tr\u00ed&nbsp;<code>knife<\/code>l\u01b0u tr\u1eef th\u00f4ng tin v\u1ec1 c\u00e1c t\u1ec7p \u0111\u01b0\u1ee3c ki\u1ec3m tra c\u00fa ph\u00e1p Ruby ph\u00f9 h\u1ee3p.<\/li>\n<li><strong>cookbook_path:<\/strong>&nbsp;\u0110\u01b0\u1eddng d\u1eabn \u0111\u1ebfn th\u01b0 m\u1ee5c s\u00e1ch d\u1ea1y n\u1ea5u \u0103n.<\/li>\n<\/ul>\n<p>Knife cho ph\u00e9p th\u1ef1c hi\u1ec7n nhi\u1ec1u thao t\u00e1c h\u1eefu \u00edch kh\u00e1c tr\u00ean m\u00e1y ch\u1ee7 v\u00e0 n\u00fat Chef. Xem t\u00e0i li\u1ec7u&nbsp;<a href=\"https:\/\/docs.chef.io\/knife.html\" target=\"_blank\" rel=\"noreferrer noopener\">Knife<\/a>&nbsp;c\u1ee7a Chef \u0111\u1ec3 bi\u1ebft danh s\u00e1ch \u0111\u1ea7y \u0111\u1ee7 t\u1ea5t c\u1ea3 c\u00e1c l\u1ec7nh kh\u1ea3 d\u1ee5ng.<\/p>\n<h3 id=\"test-kitchen\">Test Kitchen<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#test-kitchen\"><\/a><\/h3>\n<p>Test Kitchen cung c\u1ea5p m\u00f4i tr\u01b0\u1eddng ph\u00e1t tri\u1ec3n tr\u00ean m\u00e1y tr\u1ea1m \u0111\u1ec3 t\u1ea1o, ki\u1ec3m tra v\u00e0 l\u1eb7p l\u1ea1i tr\u00ean s\u1ed5 tay n\u1ea5u \u0103n tr\u01b0\u1edbc khi ph\u00e2n ph\u1ed1i n\u1ed9i dung c\u1ee7a n\u00f3 cho c\u00e1c n\u00fat s\u1ea3n xu\u1ea5t. C\u00f4ng c\u1ee5 d\u00f2ng l\u1ec7nh Kitchen c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 ch\u1ea1y c\u00e1c b\u00e0i ki\u1ec3m tra t\u00edch h\u1ee3p tr\u00ean c\u00e1c n\u1ec1n t\u1ea3ng kh\u00e1c nhau cho ph\u00e9p ki\u1ec3m tra tr\u00ean nhi\u1ec1u n\u00fat \u0111ang ch\u1ea1y trong m\u00f4i tr\u01b0\u1eddng s\u1ea3n xu\u1ea5t. Tham kh\u1ea3o t\u00e0i li\u1ec7u&nbsp;<a href=\"https:\/\/kitchen.ci\/docs\/getting-started\/introduction\/\" target=\"_blank\" rel=\"noreferrer noopener\">Kitchen CI<\/a>&nbsp;\u0111\u1ec3 bi\u1ebft th\u00f4ng tin v\u1ec1 c\u00e1ch b\u1eaft \u0111\u1ea7u v\u1edbi Test Kitchen.<\/p>\n<h2 id=\"the-chef-node\">The Chef Node<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#the-chef-node\"><\/a><\/h2>\n<p>Node&nbsp;Chef&nbsp;l\u00e0 b\u1ea5t k\u1ef3 m\u00e1y n\u00e0o \u0111\u01b0\u1ee3c qu\u1ea3n l\u00fd b\u1edfi m\u00e1y ch\u1ee7 Chef. Chef c\u00f3 th\u1ec3 qu\u1ea3n l\u00fd m\u00e1y ch\u1ee7 \u1ea3o, container, thi\u1ebft b\u1ecb m\u1ea1ng v\u00e0 thi\u1ebft b\u1ecb l\u01b0u tr\u1eef d\u01b0\u1edbi d\u1ea1ng n\u00fat. M\u1ed7i n\u00fat ph\u1ea3i c\u00f3 m\u1ed9t m\u00e1y kh\u00e1ch Chef t\u01b0\u01a1ng \u1ee9ng \u0111\u01b0\u1ee3c c\u00e0i \u0111\u1eb7t \u0111\u1ec3 th\u1ef1c hi\u1ec7n c\u00e1c b\u01b0\u1edbc c\u1ea7n thi\u1ebft \u0111\u1ec3 \u0111\u01b0a n\u00f3 \u0111\u1ebfn tr\u1ea1ng th\u00e1i b\u1eaft bu\u1ed9c \u0111\u01b0\u1ee3c x\u00e1c \u0111\u1ecbnh b\u1edfi m\u1ed9t s\u1ed5 tay n\u1ea5u \u0103n.<\/p>\n<p>C\u00e1c n\u00fat \u0111\u01b0\u1ee3c x\u00e1c th\u1ef1c th\u00f4ng qua&nbsp;<code>validator.pem<\/code>v\u00e0&nbsp;<code>client.pem<\/code>c\u00e1c ch\u1ee9ng ch\u1ec9 \u0111\u01b0\u1ee3c t\u1ea1o tr\u00ean n\u00fat khi n\u00f3 \u0111\u01b0\u1ee3c kh\u1edfi \u0111\u1ed9ng. T\u1ea5t c\u1ea3 c\u00e1c n\u00fat ph\u1ea3i \u0111\u01b0\u1ee3c kh\u1edfi \u0111\u1ed9ng qua SSH v\u1edbi t\u01b0 c\u00e1ch l\u00e0 ng\u01b0\u1eddi d\u00f9ng g\u1ed1c ho\u1eb7c ng\u01b0\u1eddi d\u00f9ng c\u00f3 quy\u1ec1n n\u00e2ng cao.<\/p>\n<p>C\u00e1c n\u00fat \u0111\u01b0\u1ee3c c\u1eadp nh\u1eadt th\u00f4ng qua chef-client, ch\u1ea1y s\u1ef1 h\u1ed9i t\u1ee5 gi\u1eefa n\u00fat v\u00e0 m\u00e1y ch\u1ee7 Chef. C\u00e1c cookbook v\u00e0 vai tr\u00f2 m\u00e0 n\u00fat \u0111\u1ea3m nhi\u1ec7m ph\u1ee5 thu\u1ed9c v\u00e0o danh s\u00e1ch ch\u1ea1y v\u00e0 m\u00f4i tr\u01b0\u1eddng \u0111\u01b0\u1ee3c thi\u1ebft l\u1eadp cho n\u00fat \u0111\u00f3.<\/p>\n<h3 id=\"chef-client\">chef-client<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#chef-client\"><\/a><\/h3>\n<p>Tr\u00ean m\u1ed9t n\u00fat, chef-client ki\u1ec3m tra c\u1ea5u h\u00ecnh hi\u1ec7n t\u1ea1i c\u1ee7a n\u00fat so v\u1edbi c\u00e1c c\u00f4ng th\u1ee9c v\u00e0 ch\u00ednh s\u00e1ch \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef tr\u00ean m\u00e1y ch\u1ee7 Chef v\u00e0 c\u1eadp nh\u1eadt n\u00fat. Qu\u00e1 tr\u00ecnh b\u1eaft \u0111\u1ea7u b\u1eb1ng vi\u1ec7c chef-client ki\u1ec3m tra danh&nbsp;<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#run-lists\">s\u00e1ch ch\u1ea1y<\/a>&nbsp;c\u1ee7a n\u00fat , t\u1ea3i c\u00e1c s\u1ed5 tay n\u1ea5u \u0103n c\u1ea7n thi\u1ebft, sau \u0111\u00f3 ki\u1ec3m tra v\u00e0 \u0111\u1ed3ng b\u1ed9 c\u00e1c s\u1ed5 tay n\u1ea5u \u0103n v\u1edbi c\u1ea5u h\u00ecnh hi\u1ec7n t\u1ea1i c\u1ee7a n\u00fat.<\/p>\n<p>Chef-client ph\u1ea3i \u0111\u01b0\u1ee3c ch\u1ea1y v\u1edbi c\u00e1c \u0111\u1eb7c quy\u1ec1n n\u00e2ng cao \u0111\u1ec3 c\u1ea5u h\u00ecnh n\u00fat \u0111\u00fang c\u00e1ch. N\u00f3 ph\u1ea3i ch\u1ea1y \u0111\u1ecbnh k\u1ef3 \u0111\u1ec3 \u0111\u1ea3m b\u1ea3o m\u00e1y ch\u1ee7 lu\u00f4n \u0111\u01b0\u1ee3c c\u1eadp nh\u1eadt (th\u01b0\u1eddng l\u00e0 v\u1edbi m\u1ed9t c\u00f4ng vi\u1ec7c cron ho\u1eb7c b\u1eb1ng c\u00e1ch thi\u1ebft l\u1eadp chef-client \u0111\u1ec3 ch\u1ea1y nh\u01b0 m\u1ed9t d\u1ecbch v\u1ee5).<\/p>\n<h3 id=\"run-lists\">Danh s\u00e1ch ch\u1ea1y<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#run-lists\"><\/a><\/h3>\n<p>Danh s\u00e1ch ch\u1ea1y x\u00e1c \u0111\u1ecbnh&nbsp;<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#recipes\">c\u00f4ng th\u1ee9c<\/a>&nbsp;n\u00e0o m\u00e0 n\u00fat Chef s\u1ebd s\u1eed d\u1ee5ng. Danh s\u00e1ch ch\u1ea1y l\u00e0 danh s\u00e1ch c\u00f3 th\u1ee9 t\u1ef1 c\u1ee7a t\u1ea5t c\u1ea3&nbsp;<a href=\"http:\/\/docs.chef.io\/server_manage_roles.html\" target=\"_blank\" rel=\"noreferrer noopener\"><em>c\u00e1c vai tr\u00f2<\/em><\/a>&nbsp;v\u00e0 c\u00f4ng th\u1ee9c m\u00e0 chef-client c\u1ea7n k\u00e9o t\u1eeb m\u00e1y ch\u1ee7 Chef. Vai tr\u00f2 x\u00e1c \u0111\u1ecbnh c\u00e1c m\u1eabu v\u00e0 thu\u1ed9c t\u00ednh tr\u00ean c\u00e1c n\u00fat.<\/p>\n<h3 id=\"ohai\">Ohai<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#ohai\"><\/a><\/h3>\n<p><a href=\"https:\/\/docs.chef.io\/ohai\/\" target=\"_blank\" rel=\"noreferrer noopener\">Ohai<\/a>&nbsp;thu th\u1eadp d\u1eef li\u1ec7u c\u1ea5u h\u00ecnh h\u1ec7 th\u1ed1ng \u0111\u1ec3 s\u1eed d\u1ee5ng trong s\u00e1ch h\u01b0\u1edbng d\u1eabn n\u1ea5u \u0103n v\u00e0 ph\u1ea3i c\u00f3 tr\u00ean m\u1ecdi n\u00fat Chef. D\u1eef li\u1ec7u n\u00e0y \u0111\u01b0\u1ee3c c\u00e0i \u0111\u1eb7t nh\u01b0 m\u1ed9t ph\u1ea7n c\u1ee7a quy tr\u00ecnh kh\u1edfi \u0111\u1ed9ng.<\/p>\n<p>Ohai thu th\u1eadp d\u1eef li\u1ec7u v\u1ec1 vi\u1ec7c s\u1eed d\u1ee5ng m\u1ea1ng v\u00e0 b\u1ed9 nh\u1edb, d\u1eef li\u1ec7u CPU, d\u1eef li\u1ec7u h\u1ea1t nh\u00e2n, t\u00ean m\u00e1y ch\u1ee7, FQDN v\u00e0 c\u00e1c thu\u1ed9c t\u00ednh t\u1ef1 \u0111\u1ed9ng kh\u00e1c. D\u1eef li\u1ec7u n\u00e0y gi\u00fap m\u00e1y kh\u00e1ch Chef x\u00e1c \u0111\u1ecbnh tr\u1ea1ng th\u00e1i c\u1ee7a n\u00fat tr\u01b0\u1edbc khi \u00e1p d\u1ee5ng danh s\u00e1ch ch\u1ea1y c\u1ee7a n\u00fat \u0111\u00f3.<\/p>\n<h2 id=\"environments\">M\u00f4i tr\u01b0\u1eddng<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#environments\"><\/a><\/h2>\n<p>M\u00f4i tr\u01b0\u1eddng \u0111\u1ea7u b\u1ebfp m\u00f4 ph\u1ecfng quy tr\u00ecnh l\u00e0m vi\u1ec7c th\u1ef1c t\u1ebf, cho ph\u00e9p c\u00e1c n\u00fat \u0111\u01b0\u1ee3c t\u1ed5 ch\u1ee9c th\u00e0nh c\u00e1c nh\u00f3m kh\u00e1c nhau x\u00e1c \u0111\u1ecbnh vai tr\u00f2 c\u1ee7a n\u00fat trong \u0111\u1ed9i t\u00e0u. \u0110i\u1ec1u n\u00e0y cho ph\u00e9p ng\u01b0\u1eddi d\u00f9ng k\u1ebft h\u1ee3p c\u00e1c m\u00f4i tr\u01b0\u1eddng v\u00e0 s\u1ed5 tay n\u1ea5u \u0103n c\u00f3 phi\u00ean b\u1ea3n \u0111\u1ec3 c\u00f3 c\u00e1c thu\u1ed9c t\u00ednh kh\u00e1c nhau cho c\u00e1c n\u00fat kh\u00e1c nhau. V\u00ed d\u1ee5: n\u1ebfu th\u1eed nghi\u1ec7m gi\u1ecf h\u00e0ng, b\u1ea1n c\u00f3 th\u1ec3 kh\u00f4ng mu\u1ed1n th\u1eed nghi\u1ec7m b\u1ea5t k\u1ef3 thay \u0111\u1ed5i n\u00e0o tr\u00ean trang web tr\u1ef1c ti\u1ebfp, nh\u01b0ng v\u1edbi m\u1ed9t t\u1eadp h\u1ee3p c\u00e1c n\u00fat \u0111ang ph\u00e1t tri\u1ec3n.<\/p>\n<p>M\u00f4i tr\u01b0\u1eddng \u0111\u01b0\u1ee3c \u0111\u1ecbnh ngh\u0129a&nbsp;<code>chef-repo\/environments<\/code>v\u00e0 l\u01b0u d\u01b0\u1edbi d\u1ea1ng t\u1ec7p Ruby ho\u1eb7c JSON.<\/p>\n<p>D\u01b0\u1edbi d\u1ea1ng t\u1ec7p Ruby:<\/p>\n<pre class=\"wp-block-code\"><code>name \"environmentname\"\ndescription \"environment_description\"\ncookbook_versions  \"cookbook\" =&gt; \"cookbook_version\"\ndefault_attributes \"node\" =&gt; { \"attribute\" =&gt; &#91; \"value\", \"value\", \"etc.\" ] }\noverride_attributes \"node\" =&gt; { \"attribute\" =&gt; &#91; \"value\", \"value\", \"etc.\" ] }<\/code><\/pre>\n<p>D\u01b0\u1edbi d\u1ea1ng JSON:<\/p>\n<pre class=\"wp-block-code\"><code>{\n  \"name\": \"environmentname\",\n  \"description\": \"a description of the environment\",\n  \"cookbook_versions\": {\n\n  },\n  \"json_class\": \"Chef::Environment\",\n  \"chef_type\": \"environment\",\n  \"default_attributes\": {\n\n  },\n  \"override_attributes\": {\n\n  }<\/code><\/pre>\n<p>T\u1ea5t c\u1ea3 c\u00e1c n\u00fat \u0111\u01b0\u1ee3c \u0111\u1eb7t th\u00e0nh m\u00f4i tr\u01b0\u1eddng &#8220;m\u1eb7c \u0111\u1ecbnh&#8221; khi kh\u1edfi \u0111\u1ed9ng. \u0110\u1ec3 thay \u0111\u1ed5i m\u00f4i tr\u01b0\u1eddng c\u1ee7a m\u1ed9t n\u00fat, h\u00e3y ch\u1ec9nh s\u1eeda&nbsp;<code>\/etc\/chef\/client.rb<\/code>tr\u00ean c\u00e1c n\u00fat.<\/p>\n<h2 id=\"cookbooks\">S\u00e1ch d\u1ea1y n\u1ea5u \u0103n<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#cookbooks\"><\/a><\/h2>\n<p>Cookbook l\u00e0 c\u01a1 s\u1edf \u0111\u1ec3 qu\u1ea3n l\u00fd c\u1ea5u h\u00ecnh tr\u00ean b\u1ea5t k\u1ef3 n\u00fat n\u00e0o. Cookbook ch\u1ee9a c\u00e1c gi\u00e1 tr\u1ecb v\u00e0 th\u00f4ng tin v\u1ec1&nbsp;<em>tr\u1ea1ng th\u00e1i mong mu\u1ed1n<\/em>&nbsp;c\u1ee7a m\u1ed9t n\u00fat. S\u1eed d\u1ee5ng cookbook, m\u00e1y ch\u1ee7 Chef v\u00e0 m\u00e1y kh\u00e1ch Chef \u0111\u1ea3m b\u1ea3o \u0111\u1ea1t \u0111\u01b0\u1ee3c tr\u1ea1ng th\u00e1i \u0111\u00e3 x\u00e1c \u0111\u1ecbnh.<\/p>\n<p>S\u00e1ch d\u1ea1y n\u1ea5u \u0103n bao g\u1ed3m c\u00e1c c\u00f4ng th\u1ee9c n\u1ea5u \u0103n, si\u00eau d\u1eef li\u1ec7u, thu\u1ed9c t\u00ednh, t\u00e0i nguy\u00ean, m\u1eabu, th\u01b0 vi\u1ec7n v\u00e0 b\u1ea5t k\u1ef3 th\u1ee9 g\u00ec kh\u00e1c \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 t\u1ea1o ra m\u1ed9t h\u1ec7 th\u1ed1ng ho\u1ea1t \u0111\u1ed9ng (thu\u1ed9c t\u00ednh v\u00e0 c\u00f4ng th\u1ee9c n\u1ea5u \u0103n l\u00e0 hai ph\u1ea7n c\u1ed1t l\u00f5i). C\u00e1c th\u00e0nh ph\u1ea7n c\u1ee7a s\u00e1ch d\u1ea1y n\u1ea5u \u0103n ph\u1ea3i l\u00e0 m\u00f4-\u0111un, v\u1edbi c\u00e1c c\u00f4ng th\u1ee9c n\u1ea5u \u0103n nh\u1ecf v\u00e0 c\u00f3 li\u00ean quan.<\/p>\n<p>S\u00e1ch d\u1ea1y n\u1ea5u \u0103n n\u00ean \u0111\u01b0\u1ee3c ki\u1ec3m so\u00e1t phi\u00ean b\u1ea3n. C\u00e1c phi\u00ean b\u1ea3n c\u00f3 th\u1ec3 h\u1eefu \u00edch khi s\u1eed d\u1ee5ng c\u00e1c m\u00f4i tr\u01b0\u1eddng Chef kh\u00e1c nhau, cho ph\u00e9p ph\u00e2n ph\u1ed1i v\u00e0 c\u1ed9ng t\u00e1c v\u1edbi c\u00e1c th\u00e0nh vi\u00ean kh\u00e1c trong nh\u00f3m.<\/p>\n<h3 id=\"recipes\">C\u00f4ng th\u1ee9c n\u1ea5u \u0103n<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#recipes\"><\/a><\/h3>\n<p>Recipes \u0111\u01b0\u1ee3c vi\u1ebft b\u1eb1ng Ruby v\u00e0 ch\u1ee9a th\u00f4ng tin v\u1ec1 m\u1ecdi th\u1ee9 c\u1ea7n ch\u1ea1y, thay \u0111\u1ed5i ho\u1eb7c t\u1ea1o tr\u00ean m\u1ed9t n\u00fat. Recipes ho\u1ea1t \u0111\u1ed9ng nh\u01b0 m\u1ed9t t\u1eadp h\u1ee3p&nbsp;<em>c\u00e1c t\u00e0i nguy\u00ean<\/em>&nbsp;x\u00e1c \u0111\u1ecbnh c\u1ea5u h\u00ecnh ho\u1eb7c ch\u00ednh s\u00e1ch c\u1ee7a m\u1ed9t n\u00fat (v\u1edbi c\u00e1c t\u00e0i nguy\u00ean l\u00e0 m\u1ed9t ph\u1ea7n t\u1eed c\u1ea5u h\u00ecnh c\u1ee7a recipe). \u0110\u1ec3 m\u1ed9t n\u00fat ch\u1ea1y recipe, n\u00f3 ph\u1ea3i n\u1eb1m trong danh s\u00e1ch ch\u1ea1y c\u1ee7a n\u00fat \u0111\u00f3.<\/p>\n<p>C\u00f4ng th\u1ee9c v\u00ed d\u1ee5 b\u00ean d\u01b0\u1edbi l\u00e0 m\u1ed9t ph\u1ea7n c\u1ee7a&nbsp;<a href=\"https:\/\/github.com\/chef-cookbooks\/vim\" target=\"_blank\" rel=\"noreferrer noopener\">s\u00e1ch h\u01b0\u1edbng d\u1eabn n\u1ea5u \u0103n Vim<\/a>&nbsp;c\u1ee7a Chef . S\u00e1ch n\u00e0y ch\u1ec9 ra g\u00f3i Vim c\u1ea7n thi\u1ebft d\u1ef1a tr\u00ean b\u1ea3n ph\u00e2n ph\u1ed1i Linux c\u1ee7a m\u1ed9t n\u00fat:<\/p>\n<pre class=\"wp-block-code\"><code>...\n\nvim_base_pkgs = value_for_platform_family(\n  %w(debian arch) =&gt; &#91;'vim'],\n  %w(rhel fedora) =&gt; &#91;'vim-minimal', 'vim-enhanced'],\n  'default' =&gt; &#91;'vim']\n)\n\npackage vim_base_pkgs\n\npackage node&#91;'vim']&#91;'extra_packages'] unless node&#91;'vim']&#91;'extra_packages'].empty?<\/code><\/pre>\n<h3 id=\"attributes\">hu\u1ed9c t\u00ednh<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#attributes\"><\/a><\/h3>\n<p>Thu\u1ed9c t\u00ednh x\u00e1c \u0111\u1ecbnh c\u00e1c gi\u00e1 tr\u1ecb c\u1ee5 th\u1ec3 v\u1ec1 m\u1ed9t n\u00fat v\u00e0 c\u1ea5u h\u00ecnh c\u1ee7a n\u00f3. Thu\u1ed9c t\u00ednh th\u01b0\u1eddng \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng k\u1ebft h\u1ee3p v\u1edbi c\u00e1c m\u1eabu v\u00e0 c\u00f4ng th\u1ee9c \u0111\u1ec3 x\u00e1c \u0111\u1ecbnh c\u00e0i \u0111\u1eb7t v\u00e0 \u0111\u01b0\u1ee3c \u00e1p d\u1ee5ng th\u00f4ng qua danh s\u00e1ch thu\u1ed9c t\u00ednh c\u1ee7a m\u00e1y kh\u00e1ch Chef. M\u00e1y kh\u00e1ch Chef c\u00f3 th\u1ec3 nh\u1eadn c\u00e1c thu\u1ed9c t\u00ednh t\u1eeb c\u00e1c n\u00fat, t\u1ec7p thu\u1ed9c t\u00ednh, c\u00f4ng th\u1ee9c, m\u00f4i tr\u01b0\u1eddng v\u00e0 vai tr\u00f2. \u0110\u1ec3 t\u00ecm hi\u1ec3u th\u00eam v\u1ec1 c\u00e1c thu\u1ed9c t\u00ednh, h\u00e3y tham kh\u1ea3o&nbsp;<a href=\"https:\/\/docs.chef.io\/attributes.html\" target=\"_blank\" rel=\"noreferrer noopener\">t\u00e0i li\u1ec7u c\u1ee7a Chef<\/a>&nbsp;.<\/p>\n<h3 id=\"files\">T\u1eadp tin<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#files\"><\/a><\/h3>\n<p>Trong chef,&nbsp;<code>files<\/code>h\u00e3y tham kh\u1ea3o c\u00e1c t\u1ec7p t\u0129nh \u0111\u01b0\u1ee3c t\u1ea3i l\u00ean c\u00e1c n\u00fat. T\u1ec7p c\u00f3 th\u1ec3 l\u00e0 t\u1ec7p c\u1ea5u h\u00ecnh v\u00e0 thi\u1ebft l\u1eadp, t\u1eadp l\u1ec7nh, t\u1ec7p trang web, v.v. V\u00ed d\u1ee5: b\u1ea1n c\u00f3 th\u1ec3 c\u00f3 m\u1ed9t c\u00f4ng th\u1ee9c s\u1eed d\u1ee5ng m\u1ed9t&nbsp;<code>index.php<\/code>t\u1ec7p. B\u1ea1n c\u00f3 th\u1ec3 s\u1eed d\u1ee5ng&nbsp;<code>cookbook_file<\/code>kh\u1ed1i t\u00e0i nguy\u00ean trong c\u00f4ng th\u1ee9c \u0111\u1ec3 t\u1ea1o t\u1ec7p tr\u00ean m\u1ed9t n\u00fat. T\u1ea5t c\u1ea3 c\u00e1c t\u1ec7p t\u0129nh ph\u1ea3i \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef trong th\u01b0 m\u1ee5c &#8220;t\u1ec7p&#8221; c\u1ee7a s\u1ed5 tay n\u1ea5u \u0103n.<\/p>\n<h3 id=\"libraries\">Th\u01b0 vi\u1ec7n<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#libraries\"><\/a><\/h3>\n<p>M\u1eb7c d\u00f9 Chef \u0111i k\u00e8m v\u1edbi c\u00e1c th\u01b0 vi\u1ec7n t\u00edch h\u1ee3p, nh\u01b0ng b\u1ea1n c\u00f3 th\u1ec3 \u0111\u1ecbnh ngh\u0129a th\u00eam c\u00e1c th\u01b0 vi\u1ec7n kh\u00e1c. Th\u01b0 vi\u1ec7n cho ph\u00e9p b\u1ea1n vi\u1ebft m\u00e3 Ruby \u0111\u1ec3 \u0111\u01b0a v\u00e0o s\u00e1ch d\u1ea1y n\u1ea5u \u0103n. Th\u01b0 vi\u1ec7n l\u00e0 c\u00e1ch thu\u1eadn ti\u1ec7n \u0111\u1ec3 \u0111\u01b0a m\u00e3 tr\u1ee3 gi\u00fap v\u00e0o c\u00e1c c\u00f4ng th\u1ee9c hi\u1ec7n c\u00f3 c\u1ee7a b\u1ea1n. Th\u01b0 vi\u1ec7n cung c\u1ea5p m\u1ed9t c\u00e1ch m\u1ea1nh m\u1ebd \u0111\u1ec3 m\u1edf r\u1ed9ng c\u00e1c t\u00e0i nguy\u00ean \u0111\u01b0\u1ee3c t\u1ea1o ra b\u1edfi c\u00e1c c\u00f4ng th\u1ee9c c\u1ee7a b\u1ea1n.<\/p>\n<h3 id=\"resources\">T\u00e0i nguy\u00ean<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#resources\"><\/a><\/h3>\n<p>T\u00e0i nguy\u00ean \u0111\u01b0\u1ee3c vi\u1ebft b\u1eb1ng Ruby v\u00e0 \u0111\u01b0\u1ee3c \u0111\u1ecbnh ngh\u0129a trong c\u00e1c t\u1ec7p c\u00f4ng th\u1ee9c. T\u00e0i nguy\u00ean ph\u1ea3i ch\u1ee9a m\u1ed9t lo\u1ea1i, m\u1ed9t t\u00ean, m\u1ed9t ho\u1eb7c nhi\u1ec1u thu\u1ed9c t\u00ednh v\u00e0 m\u1ed9t ho\u1eb7c nhi\u1ec1u h\u00e0nh \u0111\u1ed9ng. T\u00e0i nguy\u00ean l\u00e0 c\u00e1c th\u00e0nh ph\u1ea7n ch\u00ednh t\u1ea1o n\u00ean b\u1ea5t k\u1ef3 c\u00f4ng th\u1ee9c n\u00e0o. \u0110\u1ec3 t\u00ecm hi\u1ec3u th\u00eam, h\u00e3y truy c\u1eadp&nbsp;<a href=\"https:\/\/docs.chef.io\/resource.html\" target=\"_blank\" rel=\"noreferrer noopener\">t\u00e0i li\u1ec7u ch\u00ednh th\u1ee9c c\u1ee7a Chef<\/a>&nbsp;.<\/p>\n<h3 id=\"templates\">M\u1eabu<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#templates\"><\/a><\/h3>\n<p>M\u1eabu l\u00e0 c\u00e1c t\u1ec7p Ruby nh\u00fang (&nbsp;<code>.erb<\/code>) \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 t\u1ea1o \u0111\u1ed9ng c\u00e1c t\u1ec7p v\u0103n b\u1ea3n t\u0129nh. \u0110\u1ec3 s\u1eed d\u1ee5ng m\u1eabu trong s\u00e1ch d\u1ea1y n\u1ea5u \u0103n Chef, t\u00e0i nguy\u00ean m\u1eabu ph\u1ea3i \u0111\u01b0\u1ee3c khai b\u00e1o trong c\u00f4ng th\u1ee9c v\u00e0 bao g\u1ed3m t\u1ec7p t\u01b0\u01a1ng \u1ee9ng&nbsp;<code>.erb<\/code>trong&nbsp;<code>template<\/code>th\u01b0 m\u1ee5c con. T\u00e0i nguy\u00ean m\u1eabu c\u1ee7a b\u1ea1n c\u00f3 th\u1ec3 ch\u1ee9a c\u00e1c bi\u1ebfn \u0111\u01b0\u1ee3c m\u1eabu s\u1eed d\u1ee5ng \u0111\u1ec3 cung c\u1ea5p \u0111\u1ed9ng c\u00e1c gi\u00e1 tr\u1ecb \u0111\u00f3 d\u1ef1a tr\u00ean ng\u1eef c\u1ea3nh c\u1ee5 th\u1ec3 c\u1ee7a m\u1ed9t n\u00fat.<\/p>\n<h2 id=\"chef-beginners-qa\">H\u1ecfi &amp; \u0110\u00e1p d\u00e0nh cho ng\u01b0\u1eddi m\u1edbi b\u1eaft \u0111\u1ea7u l\u00e0m \u0111\u1ea7u b\u1ebfp<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#chef-beginners-qa\"><\/a><\/h2>\n<h3 id=\"why-use-chef\">T\u1ea1i sao n\u00ean s\u1eed d\u1ee5ng Chef?<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#why-use-chef\"><\/a><\/h3>\n<p>Ngo\u00e0i vi\u1ec7c t\u1ef1 \u0111\u1ed9ng tri\u1ec3n khai, Chef c\u00f2n cho ph\u00e9p ph\u00e2n ph\u1ed1i li\u00ean t\u1ee5c b\u1eb1ng ph\u01b0\u01a1ng ph\u00e1p&nbsp;<a href=\"https:\/\/en.wikipedia.org\/wiki\/Infrastructure_as_code\" target=\"_blank\" rel=\"noreferrer noopener\">\u201cC\u01a1 s\u1edf h\u1ea1 t\u1ea7ng d\u01b0\u1edbi d\u1ea1ng M\u00e3\u201d<\/a>&nbsp;, \u0111\u00e2y c\u00f3 th\u1ec3 l\u00e0 ch\u00eca kh\u00f3a cho b\u1ea5t k\u1ef3 t\u1ed5 ch\u1ee9c n\u00e0o \u00e1p d\u1ee5ng c\u00e1c nguy\u00ean t\u1eafc&nbsp;<a href=\"https:\/\/en.wikipedia.org\/wiki\/DevOps\" target=\"_blank\" rel=\"noreferrer noopener\">DevOps<\/a>&nbsp;.<\/p>\n<h3 id=\"what-are-the-disadvantages-to-chef\">Nh\u01b0\u1ee3c \u0111i\u1ec3m c\u1ee7a Chef l\u00e0 g\u00ec?<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#what-are-the-disadvantages-to-chef\"><\/a><\/h3>\n<p>Ng\u01b0\u1eddi d\u00f9ng Chef kh\u00f4ng quen v\u1edbi m\u00e3 h\u00f3a (c\u1ee5 th\u1ec3 l\u00e0 Ruby) c\u00f3 th\u1ec3 g\u1eb7p ph\u1ea3i kh\u00f3 kh\u0103n khi h\u1ecdc.<\/p>\n<h3 id=\"where-can-i-learn-about-chef-in-depth\">T\u00f4i c\u00f3 th\u1ec3 t\u00ecm hi\u1ec3u s\u00e2u h\u01a1n v\u1ec1 Chef \u1edf \u0111\u00e2u?<a href=\"https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/#where-can-i-learn-about-chef-in-depth\"><\/a><\/h3>\n<p>B\u1ea1n c\u00f3 th\u1ec3 t\u00ecm th\u1ea5y kh\u00f3a \u0111\u00e0o t\u1ea1o \u0111\u1ea7u b\u1ebfp chuy\u00ean s\u00e2u (v\u00e0 mi\u1ec5n ph\u00ed) tr\u00ean trang gi\u00e1o d\u1ee5c c\u1ee7a Chef t\u1ea1i&nbsp;<a href=\"https:\/\/learn.chef.io\/\" target=\"_blank\" rel=\"noreferrer noopener\">learn.chef.io<\/a>&nbsp;.<\/p>\n<h2 id=\"more-information\">Th\u00f4ng tin th\u00eam<\/h2>\n<p>B\u1ea1n c\u00f3 th\u1ec3 mu\u1ed1n tham kh\u1ea3o c\u00e1c ngu\u1ed3n sau \u0111\u1ec3 bi\u1ebft th\u00eam th\u00f4ng tin v\u1ec1 ch\u1ee7 \u0111\u1ec1 n\u00e0y. M\u1eb7c d\u00f9 ch\u00fang t\u00f4i cung c\u1ea5p v\u1edbi hy v\u1ecdng r\u1eb1ng ch\u00fang s\u1ebd h\u1eefu \u00edch, nh\u01b0ng xin l\u01b0u \u00fd r\u1eb1ng ch\u00fang t\u00f4i kh\u00f4ng th\u1ec3 \u0111\u1ea3m b\u1ea3o t\u00ednh ch\u00ednh x\u00e1c ho\u1eb7c t\u00ednh k\u1ecbp th\u1eddi c\u1ee7a c\u00e1c t\u00e0i li\u1ec7u \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef b\u00ean ngo\u00e0i.<\/p>\n<ul>\n<li><a href=\"http:\/\/www.chef.io\/\" target=\"_blank\" rel=\"noreferrer noopener\">\u0110\u1ea7u b\u1ebfp<\/a><\/li>\n<li><a href=\"https:\/\/www.linode.com\/docs\/guides\/install-a-chef-server-workstation-on-ubuntu-18-04\/\">Thi\u1ebft l\u1eadp Chef Server, Workstation v\u00e0 Node tr\u00ean Ubuntu 18.04<\/a><\/li>\n<li><a href=\"https:\/\/www.linode.com\/docs\/guides\/creating-your-first-chef-cookbook\/\">T\u1ea1o s\u00e1ch d\u1ea1y n\u1ea5u \u0103n \u0111\u1ea7u ti\u00ean c\u1ee7a b\u1ea1n<\/a><\/li>\n<\/ul>\n<p>Ngu\u1ed3n: https:\/\/www.linode.com\/docs\/guides\/beginners-guide-chef\/<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Chef&nbsp;l\u00e0 m\u1ed9t n\u1ec1n t\u1ea3ng qu\u1ea3n l\u00fd c\u1ea5u h\u00ecnh khai b\u00e1o v\u00e0 t\u1ef1 \u0111\u1ed9ng h\u00f3a \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 d\u1ecbch c\u01a1 s\u1edf h\u1ea1 t\u1ea7ng th\u00e0nh m\u00e3. \u0110i\u1ec1u n\u00e0y cho ph\u00e9p qu\u00e1 tr\u00ecnh ph\u00e1t tri\u1ec3n v\u00e0 tri\u1ec3n khai v\u1edbi th\u1eed nghi\u1ec7m t\u1ed1t h\u01a1n, tri\u1ec3n khai hi\u1ec7u qu\u1ea3 v\u00e0 c\u00f3 th\u1ec3 d\u1ef1 \u0111o\u00e1n, qu\u1ea3n l\u00fd phi\u00ean b\u1ea3n t\u1eadp<\/p>\n","protected":false},"author":1,"featured_media":35796,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[131],"tags":[],"class_list":["post-34934","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-chef"],"_links":{"self":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/posts\/34934","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/comments?post=34934"}],"version-history":[{"count":0,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/posts\/34934\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/media\/35796"}],"wp:attachment":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/media?parent=34934"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/categories?post=34934"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/tags?post=34934"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}