{"id":1580,"date":"2024-08-28T18:25:59","date_gmt":"2024-08-28T10:25:59","guid":{"rendered":"https:\/\/www.chencuo.top\/?p=1580"},"modified":"2024-08-28T18:25:59","modified_gmt":"2024-08-28T10:25:59","slug":"openstack-v%e7%89%88-centos-stream-8-%e6%89%8b%e5%b7%a5%e6%90%ad%e5%bb%ba-placement%e6%90%ad%e5%bb%ba","status":"publish","type":"post","link":"https:\/\/www.chencuo.top\/?p=1580","title":{"rendered":"openstack v\u7248 centos stream 8 \u624b\u5de5\u642d\u5efa\u2014\u2014Placement\u642d\u5efa(\u56db)"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\"><strong>\u6ce8\u610f<\/strong><\/h2>\n\n\n\n<p>1.\u672c\u6559\u7a0b\u4e3aopenstack \u642d\u5efa\u5e73\u53f0victoria \u7248\uff0c\u865a\u62df\u673a\u4e3acentos stream 8<\/p>\n\n\n\n<p>2.\u672c\u6559\u7a0b\u8bbe\u8ba1\u5185\u5bb9\u975e\u5e38\u591a\uff0c\u5f88\u590d\u6742\uff0c\u4f46\u4e5f\u5f88\u6709\u6280\u5de7\uff0c\u8bf7\u6ce8\u610f\u6bcf\u4e00\u6b65\uff0c\u6211\u8bf4\u53ef\u4ee5\u66f4\u6539\u7684\u5730\u65b9\u53ef\u4ee5\u66f4\u6539\uff0c\u5176\u4f59\u5efa\u8bae\u548c\u6211\u4e00\u6837<\/p>\n\n\n\n<p>3.\u5185\u5bb9\u677f\u5757\u5927\u4f53\u5305\u62ec\uff1a\u57fa\u7840\u73af\u5883\u8bbe\u7f6e\uff0c keystone\u7ec4\u5efa\u5b89\u88c5\uff0cglance\u7ec4\u5efa\u5b89\u88c5\uff0cplacement\u7ec4\u5efa\u5b89\u88c5\uff0cnova\u7ec4\u5efa\u5b89\u88c5\uff0cneutron\u7ec4\u5efa\u5b89\u88c5\uff0cdashboard\u7ec4\u5efa\u5b89\u88c5<\/p>\n\n\n\n<p><strong>4.\u5bc6\u7801\u7ea6\u5b9a\uff1a\u672c\u6587\u6240\u6709\u548c\u6570\u636e\u5e93\u53ca\u6d88\u606f\u961f\u5217\u76f8\u5173\u7684\u5bc6\u7801\u7edf\u4e00\u8bbe\u5b9a rootroot\uff0copenstack \u7ec4\u4ef6\u7528\u6237\u5bc6\u7801\u7edf\u4e00\u8bbe\u5b9a redhat<\/strong><\/p>\n\n\n\n<p>5.\u5b66\u4e60\u6b64\u7ae0\u8282\uff0c\u4f60\u9700\u8981\u4e86\u89e3\u7684\u77e5\u8bc6\uff1a\u6570\u636e\u5e93sql\u4e2ddcl\u7528\u6237\u7ba1\u7406\u7684\u77e5\u8bc6\uff0clinux\u57fa\u7840\u547d\u4ee4\uff0copenstack\u57fa\u7840\u547d\u4ee4<\/p>\n\n\n\n<p>6.\u5b98\u65b9\u7f51\u5740\uff1a<\/p>\n\n\n\n<p><a href=\"https:\/\/docs.openstack.org\/placement\/victoria\/install\/install-rdo.html\">OpenStack Docs: Install and configure Placement for Red Hat Enterprise Linux and CentOS<\/a><\/p>\n\n\n\n<p>7.\u73af\u5883\u914d\u7f6e\uff1a<\/p>\n\n\n\n<p>\u73af\u5883\u7528\u5230 2\u53f0 \u865a\u62df\u673a\uff0c\u5355\u7f51\u5361\uff0c\u5e76\u4e3a\u5176\u914d\u7f6e \u9759\u6001 IP \u53ca DNS<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>\u4e3b\u673a\u540d<\/td><td>ip<\/td><td>\u7f51\u5173<\/td><td>DNS<\/td><td>cpu\/\u5185\u5b58<\/td><td>\u78c1\u76d8<\/td><td>\u89d2\u8272<\/td><td>\u5907\u6ce8<\/td><\/tr><tr><td>controller<\/td><td>192.168.100.128<\/td><td>192.168.100.2<\/td><td>114.114.114.114<\/td><td>4c\/6g<\/td><td>100g<\/td><td>\u63a7\u5236\u8282\u70b9<\/td><td>\u5f00\u542f\u865a\u62df\u5316\u5f15\u64ce<\/td><\/tr><tr><td>compute<\/td><td>192.168.100.129<\/td><td>192.168.100.2<\/td><td>114.114.114.114<\/td><td>4c\/6g<\/td><td>100g<\/td><td>\u8ba1\u7b97\u8282\u70b9<\/td><td>\u5f00\u542f\u865a\u62df\u5316\u5f15\u64ce<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u5efa\u5e93\u53ca\u6388\u6743\uff08\u4ec5\u63a7\u5236\u8282\u70b9\uff09<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;root@controller ~(admin)]$ mysql -u root -prootroot\nWelcome to the MariaDB monitor.  Commands end with ; or \\g.\nYour MariaDB connection id is 38\nServer version: 10.3.28-MariaDB MariaDB Server\n\nCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.\n\nType 'help;' or '\\h' for help. Type '\\c' to clear the current input statement.\n\nMariaDB &#91;(none)]> create database placement;\nQuery OK, 1 row affected (0.013 sec)\n\nMariaDB &#91;(none)]> grant all privileges on placement.* to 'placement'@'localhost' identified by 'rootroot';\n##\u4e3aplacement\u7528\u6237\u5728\u672c\u5730\u5bf9placement\u6570\u636e\u5e93\u6240\u6709\u5bf9\u8c61\u7ed9\u4e88\u5168\u90e8\u6743\u9650\uff0c\u6307\u5b9a\u5bc6\u7801\u4e3arootroot\nQuery OK, 0 rows affected (0.007 sec)\n\nMariaDB &#91;(none)]> grant all privileges on placement.* to 'placement'@'%' identified by 'rootroot';\n##\u4e3aplacement\u7528\u6237\u5728\u4efb\u4f55\u5730\u70b9\u5bf9placement\u6570\u636e\u5e93\u6240\u6709\u5bf9\u8c61\u7ed9\u4e88\u5168\u90e8\u6743\u9650\uff0c\u6307\u5b9a\u5bc6\u7801\u4e3arootroot\nQuery OK, 0 rows affected (0.001 sec)\n\nMariaDB &#91;(none)]> show databases;\n+--------------------+\n| Database           |\n+--------------------+\n| glance             |\n| information_schema |\n| keystone           |\n| mysql              |\n| performance_schema |\n| placement          |\n+--------------------+\n6 rows in set (0.012 sec)\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u521b\u5efa\u7528\u6237\u53ca\u5173\u8054\u89d2\u8272\uff08\u4ec5\u63a7\u5236\u8282\u70b9\uff09<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;root@controller ~(admin)]$ source keystonerc_admin\n&#91;root@controller ~(admin)]$ openstack user create --domain default --password-prompt placement \nUser Password:          ##\u5bc6\u7801\u4f9d\u65e7redhat\nRepeat User Password:\n+---------------------+----------------------------------+\n| Field               | Value                            |\n+---------------------+----------------------------------+\n| domain_id           | default                          |\n| enabled             | True                             |\n| id                  | 3e66c60b57354be89ac3d5e85fb2f485 |\n| name                | placement                        |\n| options             | {}                               |\n| password_expires_at | None                             |\n+---------------------+----------------------------------+\n&#91;root@controller ~(admin)]$ openstack role add --project service --user placement admin\n##placement\u7528\u6237\u4f5c\u4e3aadmin\u89d2\u8272\u7ed1\u5b9aservice\u9879\u76ee\n&#91;root@controller ~(admin)]$ openstack role assignment list --user placement\n##\u67e5\u770bplacement\u7528\u6237\u7684\u9879\u76ee\u7ed1\u5b9a\n+----------------------------------+----------------------------------+-------+----------------------------------+--------+--------+-----------+\n| Role                             | User                             | Group | Project                          | Domain | System | Inherited |\n+----------------------------------+----------------------------------+-------+----------------------------------+--------+--------+-----------+\n| 35eb6220a4b14503b1672de9f0ffcae9 | 3e66c60b57354be89ac3d5e85fb2f485 |       | 578eca45e7e549858c97314e3f2ec1e3 |        |        | False     |\n+----------------------------------+----------------------------------+-------+----------------------------------+--------+--------+-----------+\n&#91;root@controller ~(admin)]$ openstack user list\n+----------------------------------+-----------+\n| ID                               | Name      |\n+----------------------------------+-----------+\n| cda7fc3c6ff74289b8f40e149d397710 | admin     |\n| 9688822b0dcd41929430ab48335fceb2 | myuser    |\n| 2c401bee20a245ac88cf4629ed4ee440 | glance    |\n| 3e66c60b57354be89ac3d5e85fb2f485 | placement |\n+----------------------------------+-----------+\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u521b\u5efa\u670d\u52a1\u53ca\u6ce8\u518cAPI\uff08\u4ec5\u63a7\u5236\u8282\u70b9\uff09<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;root@controller ~(admin)]$ openstack service create --name placement --description \"Placement API\" placement\n+-------------+----------------------------------+\n| Field       | Value                            |\n+-------------+----------------------------------+\n| description | Placement API                    |\n| enabled     | True                             |\n| id          | 3a634a06b4864190bb69cf15bea97a19 |\n| name        | placement                        |\n| type        | placement                        |\n+-------------+----------------------------------+\n&#91;root@controller ~(admin)]$ openstack endpoint create --region RegionOne placement public http:\/\/controller:8778\n+--------------+----------------------------------+\n| Field        | Value                            |\n+--------------+----------------------------------+\n| enabled      | True                             |\n| id           | deb57dd079d1434b8ba2560d13aa8757 |\n| interface    | public                           |\n| region       | RegionOne                        |\n| region_id    | RegionOne                        |\n| service_id   | 3a634a06b4864190bb69cf15bea97a19 |\n| service_name | placement                        |\n| service_type | placement                        |\n| url          | http:\/\/controller:8778           |\n+--------------+----------------------------------+\n&#91;root@controller ~(admin)]$ openstack endpoint create --region RegionOne placement internal http:\/\/controller:8778\n+--------------+----------------------------------+\n| Field        | Value                            |\n+--------------+----------------------------------+\n| enabled      | True                             |\n| id           | 5b07ad93e892406da4bac5dd0338e3cf |\n| interface    | internal                         |\n| region       | RegionOne                        |\n| region_id    | RegionOne                        |\n| service_id   | 3a634a06b4864190bb69cf15bea97a19 |\n| service_name | placement                        |\n| service_type | placement                        |\n| url          | http:\/\/controller:8778           |\n+--------------+----------------------------------+\n&#91;root@controller ~(admin)]$ openstack endpoint create --region RegionOne placement admin http:\/\/controller:8778\n+--------------+----------------------------------+\n| Field        | Value                            |\n+--------------+----------------------------------+\n| enabled      | True                             |\n| id           | dc77bcd015344f4c9406495cba143841 |\n| interface    | admin                            |\n| region       | RegionOne                        |\n| region_id    | RegionOne                        |\n| service_id   | 3a634a06b4864190bb69cf15bea97a19 |\n| service_name | placement                        |\n| service_type | placement                        |\n| url          | http:\/\/controller:8778           |\n+--------------+----------------------------------+\n&#91;root@controller ~(admin)]$ openstack endpoint list\n+----------------------------------+-----------+--------------+--------------+---------+-----------+----------------------------+\n| ID                               | Region    | Service Name | Service Type | Enabled | Interface | URL                        |\n+----------------------------------+-----------+--------------+--------------+---------+-----------+----------------------------+\n| 0347ebc573814319b61f2b061d12a76d | RegionOne | glance       | image        | True    | internal  | http:\/\/controller:9292     |\n| 5b07ad93e892406da4bac5dd0338e3cf | RegionOne | placement    | placement    | True    | internal  | http:\/\/controller:8778     |\n| 6395f0c625274f4b90e9137f38e93882 | RegionOne | keystone     | identity     | True    | admin     | http:\/\/controller:5000\/v3\/ |\n| 810eab1198cc44dc8a2f4de04d227da4 | RegionOne | glance       | image        | True    | admin     | http:\/\/controller:9292     |\n| 861dc3b20d324e4892e506058c2c7b1f | RegionOne | glance       | image        | True    | public    | http:\/\/controller:9292     |\n| ca45bbfeef81436688974a8d04e75d88 | RegionOne | keystone     | identity     | True    | internal  | http:\/\/controller:5000\/v3\/ |\n| dc77bcd015344f4c9406495cba143841 | RegionOne | placement    | placement    | True    | admin     | http:\/\/controller:8778     |\n| deb57dd079d1434b8ba2560d13aa8757 | RegionOne | placement    | placement    | True    | public    | http:\/\/controller:8778     |\n| ff9d2f5be3c54026a27d8661b68460b9 | RegionOne | keystone     | identity     | True    | public    | http:\/\/controller:5000\/v3\/ |\n+----------------------------------+-----------+--------------+--------------+---------+-----------+----------------------------+\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u5b89\u88c5placement\uff08\u4ec5\u63a7\u5236\u8282\u70b9\uff09<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;root@controller ~(admin)]$ yum install openstack-placement-api -y\n\u4e0a\u6b21\u5143\u6570\u636e\u8fc7\u671f\u68c0\u67e5\uff1a3:54:32 \u524d\uff0c\u6267\u884c\u4e8e 2024\u5e7408\u670828\u65e5 \u661f\u671f\u4e09 02\u65f644\u520632\u79d2\u3002\n\u4f9d\u8d56\u5173\u7cfb\u89e3\u51b3\u3002\n================================================================================================================================================\n \u8f6f\u4ef6\u5305                                      \u67b6\u6784                   \u7248\u672c                        \u4ed3\u5e93                                       \u5927\u5c0f\n================================================================================================================================================\n\u5b89\u88c5:\n openstack-placement-api                     noarch                 4.0.0-1.el8                 centos-openstack-victoria                  12 k\n\u5b89\u88c5\u4f9d\u8d56\u5173\u7cfb:\n openstack-placement-common                  noarch                 4.0.0-1.el8                 centos-openstack-victoria                  25 k\n python3-microversion-parse                  noarch                 1.0.1-1.el8                 centos-openstack-victoria                  32 k\n python3-os-resource-classes                 noarch                 1.0.0-1.el8                 centos-openstack-victoria                  17 k\n python3-os-traits                           noarch                 2.4.0-2.el8                 centos-openstack-victoria                  43 k\n python3-placement                           noarch                 4.0.0-1.el8                 centos-openstack-victoria                 250 k\n\n\u4e8b\u52a1\u6982\u8981\n================================================================================================================================================\n\u5b89\u88c5  6 \u8f6f\u4ef6\u5305\n\n\u603b\u4e0b\u8f7d\uff1a379 k\n\u5b89\u88c5\u5927\u5c0f\uff1a1.2 M\n\u4e0b\u8f7d\u8f6f\u4ef6\u5305\uff1a\n(1\/6): openstack-placement-common-4.0.0-1.el8.noarch.rpm                                                         86 kB\/s |  25 kB     00:00    \n(2\/6): openstack-placement-api-4.0.0-1.el8.noarch.rpm                                                            38 kB\/s |  12 kB     00:00    \n(3\/6): python3-os-resource-classes-1.0.0-1.el8.noarch.rpm                                                        62 kB\/s |  17 kB     00:00    \n(4\/6): python3-os-traits-2.4.0-2.el8.noarch.rpm                                                                 159 kB\/s |  43 kB     00:00    \n(5\/6): python3-microversion-parse-1.0.1-1.el8.noarch.rpm                                                         54 kB\/s |  32 kB     00:00    \n(6\/6): python3-placement-4.0.0-1.el8.noarch.rpm                                                                 445 kB\/s | 250 kB     00:00    \n------------------------------------------------------------------------------------------------------------------------------------------------\n\u603b\u8ba1                                                                                                            333 kB\/s | 379 kB     00:01     \n\u8fd0\u884c\u4e8b\u52a1\u68c0\u67e5\n\u4e8b\u52a1\u68c0\u67e5\u6210\u529f\u3002\n\u8fd0\u884c\u4e8b\u52a1\u6d4b\u8bd5\n\u4e8b\u52a1\u6d4b\u8bd5\u6210\u529f\u3002\n\u8fd0\u884c\u4e8b\u52a1\n  \u51c6\u5907\u4e2d  :                                                                                                                                 1\/1 \n  \u5b89\u88c5    : python3-os-traits-2.4.0-2.el8.noarch                                                                                            1\/6 \n  \u5b89\u88c5    : python3-os-resource-classes-1.0.0-1.el8.noarch                                                                                  2\/6 \n  \u5b89\u88c5    : python3-microversion-parse-1.0.1-1.el8.noarch                                                                                   3\/6 \n  \u5b89\u88c5    : python3-placement-4.0.0-1.el8.noarch                                                                                            4\/6 \n  \u8fd0\u884c\u811a\u672c: openstack-placement-common-4.0.0-1.el8.noarch                                                                                   5\/6 \n  \u5b89\u88c5    : openstack-placement-common-4.0.0-1.el8.noarch                                                                                   5\/6 \n  \u5b89\u88c5    : openstack-placement-api-4.0.0-1.el8.noarch                                                                                      6\/6 \n  \u8fd0\u884c\u811a\u672c: openstack-placement-api-4.0.0-1.el8.noarch                                                                                      6\/6 \n  \u9a8c\u8bc1    : openstack-placement-api-4.0.0-1.el8.noarch                                                                                      1\/6 \n  \u9a8c\u8bc1    : openstack-placement-common-4.0.0-1.el8.noarch                                                                                   2\/6 \n  \u9a8c\u8bc1    : python3-microversion-parse-1.0.1-1.el8.noarch                                                                                   3\/6 \n  \u9a8c\u8bc1    : python3-os-resource-classes-1.0.0-1.el8.noarch                                                                                  4\/6 \n  \u9a8c\u8bc1    : python3-os-traits-2.4.0-2.el8.noarch                                                                                            5\/6 \n  \u9a8c\u8bc1    : python3-placement-4.0.0-1.el8.noarch                                                                                            6\/6 \n\n\u5df2\u5b89\u88c5:\n  openstack-placement-api-4.0.0-1.el8.noarch      openstack-placement-common-4.0.0-1.el8.noarch  python3-microversion-parse-1.0.1-1.el8.noarch \n  python3-os-resource-classes-1.0.0-1.el8.noarch  python3-os-traits-2.4.0-2.el8.noarch           python3-placement-4.0.0-1.el8.noarch          \n\n\u5b8c\u6bd5\uff01\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u7f16\u8f91\u914d\u7f6e\u6587\u4ef6\uff08\u4ec5\u63a7\u5236\u8282\u70b9\uff09<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\n##\u8001\u65b9\u6cd5 \u5f88\u591a~\n&#91;placement_database]\nconnection = mysql+pymysql:\/\/placement:rootroot@controller\/placement  ##\u5927\u7ea6510\u884c\n\n&#91;api]\nauth_strategy = keystone                 ##\u5927\u7ea6190\u884c\n\n&#91;keystone_authtoken]\nauth_url = http:\/\/controller:5000\/v3                           ##\u5927\u7ea6240\u884c\nmemcached_servers = controller:11211\nauth_type = password\nproject_domain_name = Default\nuser_domain_name = Default\nproject_name = service\nusername = placement\npassword = redhat\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u521d\u59cb\u5316\u6570\u636e\u5e93\uff08\u4ec5\u63a7\u5236\u8282\u70b9\uff09<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;root@controller ~(admin)]$ su -s \/bin\/sh -c \"placement-manage db sync\" placement\n##\u521d\u59cb\u5316placement \u5e93\n&#91;root@controller ~(admin)]$ mysql -u root -prootroot\nWelcome to the MariaDB monitor.  Commands end with ; or \\g.\nYour MariaDB connection id is 41\nServer version: 10.3.28-MariaDB MariaDB Server\n\nCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.\n\nType 'help;' or '\\h' for help. Type '\\c' to clear the current input statement.\n\nMariaDB &#91;(none)]> show databases;\n+--------------------+\n| Database           |\n+--------------------+\n| glance             |\n| information_schema |\n| keystone           |\n| mysql              |\n| performance_schema |\n| placement          |\n+--------------------+\n6 rows in set (0.001 sec)\n\nMariaDB &#91;(none)]> use placement;\nReading table information for completion of table and column names\nYou can turn off this feature to get a quicker startup with -A\n\nDatabase changed\nMariaDB &#91;placement]> show tables;\n+------------------------------+\n| Tables_in_placement          |\n+------------------------------+\n| alembic_version              |\n| allocations                  |\n| consumers                    |\n| inventories                  |\n| placement_aggregates         |\n| projects                     |\n| resource_classes             |\n| resource_provider_aggregates |\n| resource_provider_traits     |\n| resource_providers           |\n| traits                       |\n| users                        |\n+------------------------------+\n12 rows in set (0.000 sec)\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u91cd\u542f\u670d\u52a1\u5e76\u6d4b\u8bd5\uff08\u4ec5\u63a7\u5236\u8282\u70b9\uff09<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;root@controller ~(admin)]$ systemctl restart httpd\n&#91;root@controller ~(admin)]$ placement-status upgrade check\n+----------------------------------+\n| Upgrade Check Results            |\n+----------------------------------+\n| Check: Missing Root Provider IDs |\n| Result: Success                  |\n| Details: None                    |\n+----------------------------------+\n| Check: Incomplete Consumers      |\n| Result: Success                  |\n| Details: None                    |\n+----------------------------------+\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u6ce8\u610f 1.\u672c\u6559\u7a0b\u4e3aopenstack \u642d\u5efa\u5e73\u53f0victoria \u7248\uff0c\u865a\u62df\u673a\u4e3acentos stream 8 2 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,9,14],"tags":[30,32],"class_list":["post-1580","post","type-post","status-publish","format-standard","hentry","category-5","category-9","category-14","tag-openstack","tag-victoria"],"_links":{"self":[{"href":"https:\/\/www.chencuo.top\/index.php?rest_route=\/wp\/v2\/posts\/1580","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.chencuo.top\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.chencuo.top\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.chencuo.top\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.chencuo.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1580"}],"version-history":[{"count":0,"href":"https:\/\/www.chencuo.top\/index.php?rest_route=\/wp\/v2\/posts\/1580\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.chencuo.top\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1580"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.chencuo.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1580"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.chencuo.top\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1580"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}