{"id":46772,"date":"2023-10-29T18:27:06","date_gmt":"2023-01-05T17:11:03","guid":{"rendered":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/"},"modified":"2024-05-04T06:35:35","modified_gmt":"2024-05-03T22:35:35","slug":"%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/","title":{"rendered":"\u6211\u4f7f\u7528Confluent for Kubernetes\u5728AKS\u4e0a\u914d\u7f6e\u4e86Confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206"},"content":{"rendered":"<h2>\u6458\u8981<\/h2>\n<p>CFK\uff08Confluent for Kubernetes\uff09\u662f\u7528\u4e8e\u5728\u79c1\u6709\u4e91\u73af\u5883\uff08\u4f8b\u5982 Azure Kubernetes Service\uff08AKS\uff09\uff09\u4e0a\u90e8\u7f72\u548c\u7ba1\u7406Confluent\u7684\u4e91\u539f\u751f\u63a7\u5236\u5e73\u53f0\u3002\u5b83\u5177\u6709\u57fa\u4e8e\u58f0\u660e\u6027API\u7684\u6807\u51c6\u4e14\u7b80\u5355\u7684\u63a5\u53e3\uff0c\u53ef\u7528\u4e8e\u5b9a\u5236\u3001\u90e8\u7f72\u548c\u7ba1\u7406Confluent Platform\u3002<\/p>\n<p>\u4f7f\u7528CFK\u5728AKS\u4e0a\u90e8\u7f72\u7684Confluent Platform\u4e0a\u521b\u5efaTopic\u7684\u5de5\u4f5c\u6d41\u7a0b\u6982\u8ff0\u5982\u4e0b\u3002<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u51c6\u5907 Kubernetes \u73af\u5883\uff08\u9884\u5148\u5b8c\u6210\u7684\u51c6\u5907\u5de5\u4f5c\uff09<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u90e8\u7f72 Confluent for Kubernetes\uff08\u9884\u5148\u5b8c\u6210\u7684\u51c6\u5907\u5de5\u4f5c\uff09<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u90e8\u7f72 Confluent \u5e73\u53f0\uff08\u9884\u5148\u5b8c\u6210\u7684\u51c6\u5907\u5de5\u4f5c\uff09<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u914d\u7f6e Confluent \u5e73\u53f0\u7684\u9644\u52a0\u8bbe\u7f6e<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\u6267\u884c Confluent \u5e73\u53f0\u7684\u9644\u52a0\u90e8\u7f72\uff08\u521b\u5efa\u4e3b\u9898\uff09<\/ol>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d7aca913a08637a697421\/4-0.png\" alt=\"image.png\" \/><\/div>\n<hr \/>\n<h3>\u672c\u5730\u73af\u5883<\/h3>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">macOS Monterey 12.3.1<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">python 3.8.12<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">Azure CLI 2.34.1<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">helm v3.6.3<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">kubectl v1.21.3<\/ul>\n<h3>\u51c6\u5907\u4e8b\u524d<\/h3>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u901a\u8fc7\u6267\u884c\u672c\u6587\uff0c\u786e\u8ba4\u5df2\u7ecf\u6210\u529f\u642d\u5efa\u4e86AKS\u96c6\u7fa4\u73af\u5883\u3002<\/ol>\n<\/li>\n<\/ol>\n<p>\u901a\u8fc7\u6267\u884c\u672c\u6587\uff0c\u786e\u8ba4\u5df2\u7ecf\u6210\u529f\u5728AKS\u4e0a\u90e8\u7f72\u4e86Confluent Platform\u3002<\/p>\n<hr \/>\n<h2>\u8bf7\u6dfb\u52a0 Confluent \u5e73\u53f0\u7684\u914d\u7f6e\u3002<\/h2>\n<h3>Bearer authentication secret \u7684\u521b\u5efa\uff08Bearer\u8ba4\u8bc1\uff09<\/h3>\n<p>\u4e3a\u4e86\u521b\u5efaTopic\uff0c\u521b\u5efaKafka Rest Class\u65f6\uff0c\u6211\u4eec\u5c06\u521b\u5efa\u4e00\u4e2a\u7528\u4e8e\u8eab\u4efd\u9a8c\u8bc1\u7684ID\/\u5bc6\u7801\u5b9a\u4e49\u6587\u4ef6\u3002<\/p>\n<pre class=\"post-pre\"><code>username=kafka\r\npassword=kafka-secret\r\n<\/code><\/pre>\n<h3>\u521b\u5efaKafka Rest Class\uff08Admin Rest API\uff09\u7684yaml\u6587\u4ef6<\/h3>\n<pre class=\"post-pre\"><code><span class=\"na\">apiVersion<\/span><span class=\"pi\">:<\/span> <span class=\"s\">platform.confluent.io\/v1beta1<\/span>\r\n<span class=\"na\">kind<\/span><span class=\"pi\">:<\/span> <span class=\"s\">KafkaRestClass<\/span>\r\n<span class=\"na\">metadata<\/span><span class=\"pi\">:<\/span>\r\n  <span class=\"na\">name<\/span><span class=\"pi\">:<\/span> <span class=\"s\">default<\/span>\r\n  <span class=\"na\">namespace<\/span><span class=\"pi\">:<\/span> <span class=\"s\">akscfk231<\/span>\r\n<span class=\"na\">spec<\/span><span class=\"pi\">:<\/span>\r\n  <span class=\"na\">kafkaRest<\/span><span class=\"pi\">:<\/span>\r\n    <span class=\"na\">authentication<\/span><span class=\"pi\">:<\/span>\r\n      <span class=\"na\">type<\/span><span class=\"pi\">:<\/span> <span class=\"s\">bearer<\/span>\r\n      <span class=\"na\">bearer<\/span><span class=\"pi\">:<\/span>\r\n        <span class=\"na\">secretRef<\/span><span class=\"pi\">:<\/span> <span class=\"s\">rest-credential<\/span>\r\n<\/code><\/pre>\n<h3>\u521b\u5efa\u4e3b\u9898\u65f6\u7684YAML\u6587\u4ef6\u5b9a\u4e49<\/h3>\n<pre class=\"post-pre\"><code><span class=\"nn\">---<\/span>\r\n<span class=\"na\">apiVersion<\/span><span class=\"pi\">:<\/span> <span class=\"s\">platform.confluent.io\/v1beta1<\/span>\r\n<span class=\"na\">kind<\/span><span class=\"pi\">:<\/span> <span class=\"s\">KafkaTopic<\/span>\r\n<span class=\"na\">metadata<\/span><span class=\"pi\">:<\/span>\r\n  <span class=\"na\">name<\/span><span class=\"pi\">:<\/span> <span class=\"s\">topic001<\/span>\r\n  <span class=\"na\">namespace<\/span><span class=\"pi\">:<\/span> <span class=\"s\">akscfk231<\/span>\r\n<span class=\"na\">spec<\/span><span class=\"pi\">:<\/span>\r\n  <span class=\"na\">replicas<\/span><span class=\"pi\">:<\/span> <span class=\"m\">3<\/span>\r\n  <span class=\"na\">partitionCount<\/span><span class=\"pi\">:<\/span> <span class=\"m\">1<\/span>\r\n  <span class=\"na\">kafkaRest<\/span><span class=\"pi\">:<\/span>\r\n    <span class=\"na\">authentication<\/span><span class=\"pi\">:<\/span>\r\n      <span class=\"na\">type<\/span><span class=\"pi\">:<\/span> <span class=\"s\">bearer<\/span>\r\n      <span class=\"na\">bearer<\/span><span class=\"pi\">:<\/span>\r\n        <span class=\"na\">secretRef<\/span><span class=\"pi\">:<\/span> <span class=\"s\">rest-credential<\/span>\r\n  <span class=\"na\">configs<\/span><span class=\"pi\">:<\/span>\r\n    <span class=\"na\">cleanup.policy<\/span><span class=\"pi\">:<\/span> <span class=\"s2\">\"<\/span><span class=\"s\">delete\"<\/span>\r\n<span class=\"nn\">---<\/span>\r\n<span class=\"na\">apiVersion<\/span><span class=\"pi\">:<\/span> <span class=\"s\">platform.confluent.io\/v1beta1<\/span>\r\n<span class=\"na\">kind<\/span><span class=\"pi\">:<\/span> <span class=\"s\">KafkaTopic<\/span>\r\n<span class=\"na\">metadata<\/span><span class=\"pi\">:<\/span>\r\n  <span class=\"na\">name<\/span><span class=\"pi\">:<\/span> <span class=\"s\">topic002<\/span>\r\n  <span class=\"na\">namespace<\/span><span class=\"pi\">:<\/span> <span class=\"s\">akscfk231<\/span>\r\n<span class=\"na\">spec<\/span><span class=\"pi\">:<\/span>\r\n  <span class=\"na\">replicas<\/span><span class=\"pi\">:<\/span> <span class=\"m\">3<\/span>\r\n  <span class=\"na\">partitionCount<\/span><span class=\"pi\">:<\/span> <span class=\"m\">1<\/span>\r\n  <span class=\"na\">kafkaRest<\/span><span class=\"pi\">:<\/span>\r\n    <span class=\"na\">authentication<\/span><span class=\"pi\">:<\/span>\r\n      <span class=\"na\">type<\/span><span class=\"pi\">:<\/span> <span class=\"s\">bearer<\/span>\r\n      <span class=\"na\">bearer<\/span><span class=\"pi\">:<\/span>\r\n        <span class=\"na\">secretRef<\/span><span class=\"pi\">:<\/span> <span class=\"s\">rest-credential<\/span>\r\n  <span class=\"na\">configs<\/span><span class=\"pi\">:<\/span>\r\n    <span class=\"na\">cleanup.policy<\/span><span class=\"pi\">:<\/span> <span class=\"s2\">\"<\/span><span class=\"s\">delete\"<\/span>\r\n<\/code><\/pre>\n<hr \/>\n<h2>\u5c06Confluent\u5e73\u53f0\u90e8\u7f72\u5728\u989d\u5916\u7684\u73af\u5883\u4e0a<\/h2>\n<h3>\u6211\u5c06\u5728AKS\u73af\u5883\u4e2d\u521b\u5efa\u8ba4\u8bc1\u4fe1\u606f\u3002<\/h3>\n<pre class=\"post-pre\"><code>$ kubectl create secret generic rest-credential --from-file=bearer.txt=.\/restapibearer.txt\r\n<\/code><\/pre>\n<h3>\u7ba1\u7406\u5458 REST API \u7684\u90e8\u7f72<\/h3>\n<p>\u5728AKS\u96c6\u7fa4\u4e2d\u521b\u5efaAdmin REST API\u3002<\/p>\n<pre class=\"post-pre\"><code>$ kubectl apply -f kafka_rest_class.yaml\r\n<\/code><\/pre>\n<h3>\u521b\u5efa\u4e00\u4e2a Confluent \u5e73\u53f0\u7684\u4e3b\u9898<\/h3>\n<p>\u901a\u8fc7\u81ea\u5b9a\u4e49\u8d44\u6e90\uff0c\u901a\u8fc7\u7ba1\u7406\u5458 REST API \u521b\u5efa\u4e3b\u9898\u3002<\/p>\n<pre class=\"post-pre\"><code>$ kubectl apply -f kafka_topic.yaml\r\n<\/code><\/pre>\n<p>\u786e\u8ba4\u521b\u5efa\u7684\u4e3b\u9898<\/p>\n<pre class=\"post-pre\"><code>$ kubectl get topic \r\nNAME       REPLICAS   PARTITION   STATUS    CLUSTERID                AGE\r\ntopic001   3          1           CREATED   b7gKmMeBQK2NEKC139fsog   42s\r\ntopic002   3          1           CREATED   b7gKmMeBQK2NEKC139fsog   42s\r\n<\/code><\/pre>\n<h3>\u786e\u8ba4\u5df2\u90e8\u7f72\u7684Confluent\u5e73\u53f0\u8d44\u6e90\u3002<\/h3>\n<pre class=\"post-pre\"><code>$ kubectl get confluent\r\nNAME                                        REPLICAS   PARTITION   STATUS    CLUSTERID                AGE\r\nkafkatopic.platform.confluent.io\/topic001   3          1           CREATED   b7gKmMeBQK2NEKC139fsog   2m35s\r\nkafkatopic.platform.confluent.io\/topic002   3          1           CREATED   b7gKmMeBQK2NEKC139fsog   2m35s\r\n\r\nNAME                                                  REPLICAS   READY   STATUS    AGE\r\nschemaregistry.platform.confluent.io\/schemaregistry   1          1       RUNNING   63m\r\n\r\nNAME                                        REPLICAS   READY   STATUS    AGE\r\nzookeeper.platform.confluent.io\/zookeeper   3          3       RUNNING   63m\r\n\r\nNAME                                                  REPLICAS   READY   STATUS    AGE\r\nkafkarestproxy.platform.confluent.io\/kafkarestproxy   1          1       RUNNING   63m\r\n\r\nNAME                                REPLICAS   READY   STATUS    AGE\r\nkafka.platform.confluent.io\/kafka   3          3       RUNNING   63m\r\n\r\nNAME                                           AGE\r\nkafkarestclass.platform.confluent.io\/default   4m55s\r\n\r\nNAME                                  REPLICAS   READY   STATUS    AGE\r\nksqldb.platform.confluent.io\/ksqldb   1          1       RUNNING   63m\r\n\r\nNAME                                                REPLICAS   READY   STATUS    AGE\r\ncontrolcenter.platform.confluent.io\/controlcenter   1          1       RUNNING   63m\r\n\r\nNAME                                    REPLICAS   READY   STATUS    AGE\r\nconnect.platform.confluent.io\/connect   1          1       RUNNING   63m\r\n\r\n\r\n## kafka rest class \u306e\u8a73\u7d30\u78ba\u8a8d\r\n$ kubectl describe kafkarestclass          \r\nName:         default\r\nNamespace:    akscfk231\r\nLabels:       &lt;none&gt;\r\nAnnotations:  &lt;none&gt;\r\nAPI Version:  platform.confluent.io\/v1beta1\r\nKind:         KafkaRestClass\r\nMetadata:\r\n  Creation Timestamp:  2022-06-29T06:28:19Z\r\n  Finalizers:\r\n    kafkarestclass.finalizers.platform.confluent.io\r\n  Generation:  1\r\n  Managed Fields:\r\n    API Version:  platform.confluent.io\/v1beta1\r\n    Fields Type:  FieldsV1\r\n    fieldsV1:\r\n      f:metadata:\r\n        f:annotations:\r\n          .:\r\n          f:kubectl.kubernetes.io\/last-applied-configuration:\r\n      f:spec:\r\n        .:\r\n        f:kafkaRest:\r\n          .:\r\n          f:authentication:\r\n            .:\r\n            f:bearer:\r\n              .:\r\n              f:secretRef:\r\n            f:type:\r\n    Manager:      kubectl-client-side-apply\r\n    Operation:    Update\r\n    Time:         2022-06-29T06:28:19Z\r\n    API Version:  platform.confluent.io\/v1beta1\r\n    Fields Type:  FieldsV1\r\n    fieldsV1:\r\n      f:metadata:\r\n        f:finalizers:\r\n          .:\r\n          v:\"kafkarestclass.finalizers.platform.confluent.io\":\r\n    Manager:      manager\r\n    Operation:    Update\r\n    Time:         2022-06-29T06:28:19Z\r\n    API Version:  platform.confluent.io\/v1beta1\r\n    Fields Type:  FieldsV1\r\n    fieldsV1:\r\n      f:status:\r\n        .:\r\n        f:endpoint:\r\n        f:kafkaClusterID:\r\n    Manager:         manager\r\n    Operation:       Update\r\n    Subresource:     status\r\n    Time:            2022-06-29T06:28:20Z\r\n  Resource Version:  27349\r\n  UID:               15aaae84-8330-4459-89b2-a3f19d2a1dd5\r\nSpec:\r\n  Kafka Rest:\r\n    Authentication:\r\n      Bearer:\r\n        Secret Ref:  rest-credential\r\n      Type:          bearer\r\nStatus:\r\n  Endpoint:          http:\/\/kafka.akscfk231.svc.cluster.local:8090\r\n  Kafka Cluster ID:  b7gKmMeBQK2NEKC139fsog\r\nEvents:              &lt;none&gt;\r\n\r\n\r\n## kafkatopic \u306e\u8a73\u7d30\u78ba\u8a8d\r\n$ kubectl describe kafkatopic       \r\nName:         topic001\r\n     :\r\n    \u7701\u7565\r\n     :\r\n\r\n\r\nName:         topic002\r\nNamespace:    akscfk231\r\nLabels:       &lt;none&gt;\r\nAnnotations:  platform.confluent.io\/last-spec-hash: WzQ9Vg\/QcNB+03C54Sk+\/m2scCu9E6oQpByPckcUWJ0=\r\nAPI Version:  platform.confluent.io\/v1beta1\r\nKind:         KafkaTopic\r\nMetadata:\r\n  Creation Timestamp:  2022-06-29T06:30:39Z\r\n  Finalizers:\r\n    kafkatopic.finalizers.platform.confluent.io\r\n  Generation:  1\r\n  Managed Fields:\r\n    API Version:  platform.confluent.io\/v1beta1\r\n    Fields Type:  FieldsV1\r\n    fieldsV1:\r\n      f:metadata:\r\n        f:annotations:\r\n          .:\r\n          f:kubectl.kubernetes.io\/last-applied-configuration:\r\n      f:spec:\r\n        .:\r\n        f:configs:\r\n          .:\r\n          f:cleanup.policy:\r\n        f:kafkaRest:\r\n          .:\r\n          f:authentication:\r\n            .:\r\n            f:bearer:\r\n              .:\r\n              f:secretRef:\r\n            f:type:\r\n        f:partitionCount:\r\n        f:replicas:\r\n    Manager:      kubectl-client-side-apply\r\n    Operation:    Update\r\n    Time:         2022-06-29T06:30:39Z\r\n    API Version:  platform.confluent.io\/v1beta1\r\n    Fields Type:  FieldsV1\r\n    fieldsV1:\r\n      f:metadata:\r\n        f:annotations:\r\n          f:platform.confluent.io\/last-spec-hash:\r\n        f:finalizers:\r\n          .:\r\n          v:\"kafkatopic.finalizers.platform.confluent.io\":\r\n        f:ownerReferences:\r\n          .:\r\n          k:{\"uid\":\"86f23b17-6529-4e6f-974d-ea6af118c9a0\"}:\r\n    Manager:    manager\r\n    Operation:  Update\r\n    Time:       2022-06-29T06:30:40Z\r\n  Owner References:\r\n    API Version:           platform.confluent.io\/v1beta1\r\n    Block Owner Deletion:  true\r\n    Controller:            true\r\n    Kind:                  Kafka\r\n    Name:                  kafka\r\n    UID:                   86f23b17-6529-4e6f-974d-ea6af118c9a0\r\n  Resource Version:        28028\r\n  UID:                     df9489f5-b097-4607-9c0a-c50e97355dcf\r\nSpec:\r\n  Configs:\r\n    cleanup.policy:  delete\r\n  Kafka Rest:\r\n    Authentication:\r\n      Bearer:\r\n        Secret Ref:  rest-credential\r\n      Type:          bearer\r\n  Partition Count:   1\r\n  Replicas:          3\r\nStatus:\r\n  Kafka Cluster:        akscfk231\/kafka\r\n  Kafka Cluster ID:     b7gKmMeBQK2NEKC139fsog\r\n  Kafka Rest Endpoint:  http:\/\/kafka.akscfk231.svc.cluster.local:8090\r\n  Partition Count:      1\r\n  Replicas:             3\r\n  State:                CREATED\r\nEvents:                 &lt;none&gt;\r\n<\/code><\/pre>\n<h3>\u4f7f\u7528Confluent\u63d2\u4ef6CLI\u5de5\u5177\u8fdb\u884c\u786e\u8ba4<\/h3>\n<pre class=\"post-pre\"><code>## Confluent \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u78ba\u8a8d\r\n$ kubectl confluent version\r\nCOMPONENT       NAME            VERSION  OPERATOR-VERSION\r\nZookeeper       zookeeper       7.1.0    v0.435.23\r\nKafka           kafka           7.1.0    v0.435.23\r\nConnect         connect         1.0      v0.435.23\r\nSchemaRegistry  schemaregistry  7.1.0    v0.435.23\r\nKsqlDB          ksqldb          7.1.0    v0.435.23\r\nControlCenter   controlcenter   7.1.0    v0.435.23\r\n\r\n\r\n## Confluent \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3078\u306e\u30a2\u30af\u30bb\u30b9\u306b\u4f7f\u7528\u3067\u304d\u308b\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u306e\u78ba\u8a8d\r\n$ kubectl confluent http-endpoints\r\nCOMPONENT       NAME            ACCESS    ADDRESS                                                 AUTH   AUTHORIZATION\r\nKafka           kafka-rest      INTERNAL  http:\/\/kafka.akscfk231.svc.cluster.local:8090                  \r\nConnect         connect         INTERNAL  http:\/\/connect.akscfk231.svc.cluster.local:8083                \r\nSchemaRegistry  schemaregistry  INTERNAL  http:\/\/schemaregistry.akscfk231.svc.cluster.local:8081         \r\nKsqlDB          ksqldb          INTERNAL  http:\/\/ksqldb.akscfk231.svc.cluster.local:8088                 \r\nControlCenter   controlcenter   INTERNAL  http:\/\/controlcenter.akscfk231.svc.cluster.local:9021   basic  \r\n<\/code><\/pre>\n<hr \/>\n<h3>\u9a8c\u8bc1\u4e0eConfluent Control Center\u7684\u8fde\u63a5<\/h3>\n<pre class=\"post-pre\"><code>$ kubectl confluent dashboard controlcenter\r\nhttp:\/\/localhost:9021\r\n<\/code><\/pre>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d7aca913a08637a697421\/38-0.png\" alt=\"\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8 2022-06-27 22.07.13.png\" \/><\/div>\n<hr \/>\n<h2>\u4e8b\u540e\u5904\u7406<\/h2>\n<h3>Pod \/ secret \/ namespace \u7684\u5378\u8f7d\u65b9\u6cd5<\/h3>\n<pre class=\"post-pre\"><code>## Pod : confluent-operator\r\n$ helm delete confluent-operator             \r\n\r\n## Pod : confluent-platform\r\n$ kubectl delete -f confluent_platform_ccc.yaml\r\n$ kubectl delete -f kafka_rest_class.yaml\r\n$ kubectl delete -f kafka_topic.yaml\r\n\r\n## secret\u60c5\u5831\r\n$ kubectl delete secret rest-credential\r\n\r\n## namespace \u306e\u524a\u9664\u65b9\u6cd5\uff08namespace\u914d\u4e0b\u306ePod\u306f\u5168\u3066\u524a\u9664\u3055\u308c\u308b\uff09\r\n$ kubectl delete namespace akscfk231\r\n<\/code><\/pre>\n<h3>AKS\u96c6\u7fa4\u7684\u505c\u6b62\u4e0e\u542f\u52a8<\/h3>\n<pre class=\"post-pre\"><code>$ az aks stop -g rg_ituru_aks01 -n aks_ituru_cp01\r\n$ az aks start -g rg_ituru_aks01 -n aks_ituru_cp01\r\n<\/code><\/pre>\n<h3>\u8bf7\u68c0\u67e5\u4e8b\u4ef6\u4e2d\u662f\u5426\u6709\u4efb\u4f55\u9519\u8bef\u6d88\u606f<\/h3>\n<pre class=\"post-pre\"><code>kubectl get events\r\n<\/code><\/pre>\n<hr \/>\n<h2>\u603b\u7ed3<\/h2>\n<p>\u6211\u5df2\u7ecf\u786e\u8ba4\u6211\u53ef\u4ee5\u5728AKS\u96c6\u7fa4\u4e2d\u521b\u5efa\u4e00\u4e2aAdmin REST API\uff0c\u5e76\u4e14\u53ef\u4ee5\u901a\u8fc7Custom Resource\u901a\u8fc7\u8be5API\u521b\u5efa\u4e3b\u9898\u3002<\/p>\n<h3>\u8bf7\u63d0\u4f9b\u4e00\u4e9b\u76f8\u5173\u8d44\u6599<\/h3>\n<p>\u6211\u5df2\u9605\u8bfb\u5e76\u53c2\u8003\u4e86\u60a8\u63d0\u4f9b\u7684\u4fe1\u606f\u3002<\/p>\n<p>Kubernetes \u5e73\u53f0\u4e0a\u7684 Confluent<br \/>\n\u7ba1\u7406 Confluent Admin REST API<br \/>\nconfluent-kubernetes-examples\/security\/production-secure-deploy\/ \u6587\u4ef6\u8def\u5f84<br \/>\nKafka REST API \u90e8\u7f72\u793a\u4f8b<br \/>\n\u7528\u4e8e\u521b\u5efa\u4e3b\u9898\u7684\u793a\u4f8b<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u6458\u8981 CFK\uff08Confluent for Kubernetes\uff09\u662f\u7528\u4e8e\u5728\u79c1\u6709\u4e91\u73af\u5883\uff08\u4f8b\u5982 Azure Kube [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-46772","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u6211\u4f7f\u7528Confluent for Kubernetes\u5728AKS\u4e0a\u914d\u7f6e\u4e86Confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206 - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/zh\/blog\/\u6211\u4f7f\u7528confluent-for-kubernetes\u5728aks\u4e0a\u914d\u7f6e\u4e86confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206\u3002\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u6211\u4f7f\u7528Confluent for Kubernetes\u5728AKS\u4e0a\u914d\u7f6e\u4e86Confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206\" \/>\n<meta property=\"og:description\" content=\"\u6458\u8981 CFK\uff08Confluent for Kubernetes\uff09\u662f\u7528\u4e8e\u5728\u79c1\u6709\u4e91\u73af\u5883\uff08\u4f8b\u5982 Azure Kube [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/zh\/blog\/\u6211\u4f7f\u7528confluent-for-kubernetes\u5728aks\u4e0a\u914d\u7f6e\u4e86confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206\u3002\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2023-01-05T17:11:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-03T22:35:35+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d7aca913a08637a697421\/4-0.png\" \/>\n<meta name=\"author\" content=\"\u96c5, \u609f\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u96c5, \u609f\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/\",\"name\":\"\u6211\u4f7f\u7528Confluent for Kubernetes\u5728AKS\u4e0a\u914d\u7f6e\u4e86Confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206 - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\"},\"datePublished\":\"2023-01-05T17:11:03+00:00\",\"dateModified\":\"2024-05-03T22:35:35+00:00\",\"author\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/f044a4b7fa4ee2701702942002419ca6\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.silicloud.com\/zh\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u6211\u4f7f\u7528Confluent for Kubernetes\u5728AKS\u4e0a\u914d\u7f6e\u4e86Confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/\",\"name\":\"Blog - Silicon Cloud\",\"description\":\"\",\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/f044a4b7fa4ee2701702942002419ca6\",\"name\":\"\u96c5, \u609f\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e71a913e914f1aad1efc391f92084294bac54bc782acd289638580134cf667a6?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e71a913e914f1aad1efc391f92084294bac54bc782acd289638580134cf667a6?s=96&d=mm&r=g\",\"caption\":\"\u96c5, \u609f\"},\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/author\/yawu\/\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/#local-main-organization-logo\",\"url\":\"\",\"contentUrl\":\"\",\"caption\":\"Blog - Silicon Cloud\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u6211\u4f7f\u7528Confluent for Kubernetes\u5728AKS\u4e0a\u914d\u7f6e\u4e86Confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206 - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/zh\/blog\/\u6211\u4f7f\u7528confluent-for-kubernetes\u5728aks\u4e0a\u914d\u7f6e\u4e86confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206\u3002\/","og_locale":"zh_CN","og_type":"article","og_title":"\u6211\u4f7f\u7528Confluent for Kubernetes\u5728AKS\u4e0a\u914d\u7f6e\u4e86Confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206","og_description":"\u6458\u8981 CFK\uff08Confluent for Kubernetes\uff09\u662f\u7528\u4e8e\u5728\u79c1\u6709\u4e91\u73af\u5883\uff08\u4f8b\u5982 Azure Kube [&hellip;]","og_url":"https:\/\/www.silicloud.com\/zh\/blog\/\u6211\u4f7f\u7528confluent-for-kubernetes\u5728aks\u4e0a\u914d\u7f6e\u4e86confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206\u3002\/","og_site_name":"Blog - Silicon Cloud","article_published_time":"2023-01-05T17:11:03+00:00","article_modified_time":"2024-05-03T22:35:35+00:00","og_image":[{"url":"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d7aca913a08637a697421\/4-0.png"}],"author":"\u96c5, \u609f","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"\u96c5, \u609f","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"5 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/","url":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/","name":"\u6211\u4f7f\u7528Confluent for Kubernetes\u5728AKS\u4e0a\u914d\u7f6e\u4e86Confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206 - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website"},"datePublished":"2023-01-05T17:11:03+00:00","dateModified":"2024-05-03T22:35:35+00:00","author":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/f044a4b7fa4ee2701702942002419ca6"},"breadcrumb":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.silicloud.com\/zh\/blog\/"},{"@type":"ListItem","position":2,"name":"\u6211\u4f7f\u7528Confluent for Kubernetes\u5728AKS\u4e0a\u914d\u7f6e\u4e86Confluent\u5e73\u53f0-\u4e3b\u9898\u521b\u5efa\u90e8\u5206"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website","url":"https:\/\/www.silicloud.com\/zh\/blog\/","name":"Blog - Silicon Cloud","description":"","inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/f044a4b7fa4ee2701702942002419ca6","name":"\u96c5, \u609f","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e71a913e914f1aad1efc391f92084294bac54bc782acd289638580134cf667a6?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e71a913e914f1aad1efc391f92084294bac54bc782acd289638580134cf667a6?s=96&d=mm&r=g","caption":"\u96c5, \u609f"},"url":"https:\/\/www.silicloud.com\/zh\/blog\/author\/yawu\/"},{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e4%bd%bf%e7%94%a8confluent-for-kubernetes%e5%9c%a8aks%e4%b8%8a%e9%85%8d%e7%bd%ae%e4%ba%86confluent%e5%b9%b3%e5%8f%b0-%e4%b8%bb%e9%a2%98%e5%88%9b%e5%bb%ba%e9%83%a8%e5%88%86%e3%80%82\/#local-main-organization-logo","url":"","contentUrl":"","caption":"Blog - Silicon Cloud"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/46772","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/comments?post=46772"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/46772\/revisions"}],"predecessor-version":[{"id":96705,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/46772\/revisions\/96705"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/media?parent=46772"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/categories?post=46772"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/tags?post=46772"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}