sap on azure_Kubernetes Cluster on Azure和Expose Couchbase服务

sap on azure

该博客是一个由多个部分组成的博客系列的一部分,该系列介绍如何在Kubernetes上运行您的应用程序。 它将使用开源NoSQL分布式文档数据库Couchbase作为Docker容器。

  • 第1部分介绍了如何使用Vagrant启动Kubernetes集群-Vagrant上的Kubernetes
  • 第2部分对Amazon Web Services进行了相同的操作-Amazon Web Services上的Kubernetes
  • 第3部分对Google Cloud执行了相同的操作– Google Cloud上的Kubernetes

第四部分将显示:

  • 如何在Azure上设置和启动Kubernetes群集
  • 在Kubernetes集群中运行Docker容器
  • 在Kubernetes上公开Pod服务
  • 关闭集群

Azure-kubernetes-couchbase-集群

非常感谢@colemickens帮助我完成了此食谱。 该博客内容主要基于colemickens.github.io/docs/getting-started-guides/azure/上的说明。

安装和配置Azure CLI

Azure CLI是用于开发,部署和管理Azure应用程序的命令行界面。 为了在Azure上安装Kubernetes集群,这是必需的。

  • 安装节点:
brew install node
==> Downloading https://homebrew.bintray.com/bottles/node-6.2.0.yosemite.bottle.tar.gz
######################################################################## 100.0%
==> Pouring node-6.2.0.yosemite.bottle.tar.gz
==> Caveats
Please note by default only English locale support is provided. If you need
full locale support you should either rebuild with full icu:
  `brew reinstall node --with-full-icu`
or add full icu data at runtime following:
  https://github.com/nodejs/node/wiki/Intl#using-and-customizing-the-small-icu-build
 
Bash completion has been installed to:
  /usr/local/etc/bash_completion.d
==> Summary
🍺  /usr/local/Cellar/node/6.2.0: 3,979 files, 40.4M
  • 安装Azure CLI:
npm install -g azure-cli
/usr/local/bin/azure -> /usr/local/lib/node_modules/azure-cli/bin/azure
 
> fibers@1.0.13 install /usr/local/lib/node_modules/azure-cli/node_modules/fibers
> node build.js || nodejs build.js
 
`darwin-x64-v8-5.0` exists; testing
Binary is fine; exiting
/usr/local/lib
└─┬ azure-cli@0.10.0
  ├─┬ adal-node@0.1.17
  │ ├── date-utils@1.2.21
  │ ├─┬ jws@3.1.3
  │ │ ├─┬ base64url@1.0.6
  │ │ │ └─┬ meow@2.0.0
  │ │ │   ├─┬ camelcase-keys@1.0.0
  │ │ │   │ ├── camelcase@1.2.1
  │ │ │   │ └── map-obj@1.0.1
  │ │ │   ├─┬ indent-string@1.2.2
  │ │ │   │ ├── get-stdin@4.0.1
  │ │ │   │ └─┬ repeating@1.1.3
  │ │ │   │   └── is-finite@1.0.1
  │ │ │   ├── minimist@1.2.0
  │ │ │   └── object-assign@1.0.0
  │ │ └─┬ jwa@1.1.3
  │ │   ├── buffer-equal-constant-time@1.0.1
  │ │   └─┬ ecdsa-sig-formatter@1.0.5
  │ │     └── base64-url@1.2.2
  │ ├── node-uuid@1.4.1
  │ ├── xmldom@0.1.22
  │ └── xpath.js@1.0.6
  ├── applicationinsights@0.15.12
  ├── async@1.4.2
  ├── azure-arm-authorization@2.0.0
  ├── azure-arm-batch@0.1.0
  ├── azure-arm-cdn@0.1.0-preview
  ├── azure-arm-commerce@0.1.1
  ├── azure-arm-compute@0.18.0
  ├── azure-arm-datalake-analytics@0.3.2
  ├── azure-arm-datalake-store@0.3.0
  ├── azure-arm-dns@0.10.1
  ├── azure-arm-hdinsight@0.2.0
  ├── azure-arm-hdinsight-jobs@0.1.0
  ├── azure-arm-insights@0.11.1
  ├── azure-arm-network@0.13.1
  ├── azure-arm-rediscache@0.2.1
  ├── azure-arm-resource@1.4.4-preview
  ├── azure-arm-storage@0.13.1-preview
  ├── azure-arm-trafficmanager@0.10.5
  ├─┬ azure-arm-website@0.10.0
  │ ├─┬ azure-common@0.9.12
  │ │ ├─┬ request@2.45.0
  │ │ │ ├── aws-sign2@0.5.0
  │ │ │ ├── bl@0.9.5
  │ │ │ ├── caseless@0.6.0
  │ │ │ ├── forever-agent@0.5.2
  │ │ │ ├─┬ form-data@0.1.4
  │ │ │ │ ├── async@0.9.2
  │ │ │ │ └─┬ combined-stream@0.0.7
  │ │ │ │   └── delayed-stream@0.0.5
  │ │ │ ├─┬ hawk@1.1.1
  │ │ │ │ ├── boom@0.4.2
  │ │ │ │ ├── cryptiles@0.2.2
  │ │ │ │ ├── hoek@0.9.1
  │ │ │ │ └── sntp@0.2.4
  │ │ │ ├─┬ http-signature@0.10.1
  │ │ │ │ ├── asn1@0.1.11
  │ │ │ │ └── assert-plus@0.1.5
  │ │ │ ├── mime-types@1.0.2
  │ │ │ ├── node-uuid@1.4.7
  │ │ │ ├── oauth-sign@0.4.0
  │ │ │ └── qs@1.2.2
  │ │ └── xml2js@0.2.7
  │ └── moment@2.6.0
  ├── azure-asm-compute@0.15.0
  ├── azure-asm-hdinsight@0.10.2
  ├── azure-asm-mgmt@0.10.1
  ├── azure-asm-network@0.11.0
  ├── azure-asm-sb@0.10.1
  ├── azure-asm-sql@0.10.1
  ├── azure-asm-storage@0.10.1
  ├── azure-asm-subscription@0.10.1
  ├── azure-asm-trafficmanager@0.10.3
  ├─┬ azure-asm-website@0.10.1
  │ └── moment@2.6.0
  ├── azure-batch@0.3.0
  ├─┬ azure-common@0.9.16
  │ ├── dateformat@1.0.2-1.2.3
  │ ├── duplexer@0.1.1
  │ ├── envconf@0.0.4
  │ ├─┬ request@2.45.0
  │ │ ├── aws-sign2@0.5.0
  │ │ ├── bl@0.9.5
  │ │ ├── caseless@0.6.0
  │ │ ├── forever-agent@0.5.2
  │ │ ├─┬ form-data@0.1.4
  │ │ │ ├── async@0.9.2
  │ │ │ ├─┬ combined-stream@0.0.7
  │ │ │ │ └── delayed-stream@0.0.5
  │ │ │ └── mime@1.2.11
  │ │ ├─┬ hawk@1.1.1
  │ │ │ ├── boom@0.4.2
  │ │ │ ├── cryptiles@0.2.2
  │ │ │ ├── hoek@0.9.1
  │ │ │ └── sntp@0.2.4
  │ │ ├─┬ http-signature@0.10.1
  │ │ │ ├── asn1@0.1.11
  │ │ │ ├── assert-plus@0.1.5
  │ │ │ └── ctype@0.5.3
  │ │ ├── mime-types@1.0.2
  │ │ ├── node-uuid@1.4.7
  │ │ ├── oauth-sign@0.4.0
  │ │ └── qs@1.2.2
  │ ├── validator@3.22.2
  │ └── xml2js@0.2.7
  ├── azure-gallery@2.0.0-pre.18
  ├── azure-graph@0.1.1
  ├─┬ azure-keyvault@0.10.1
  │ └── node-uuid@1.4.7
  ├─┬ azure-monitoring@0.10.2
  │ └── moment@2.6.0
  ├─┬ azure-storage@0.7.0
  │ ├── browserify-mime@1.2.9
  │ ├── extend@1.2.1
  │ ├── node-uuid@1.4.7
  │ ├─┬ readable-stream@2.0.6
  │ │ ├── isarray@1.0.0
  │ │ ├── process-nextick-args@1.0.7
  │ │ └── util-deprecate@1.0.2
  │ ├─┬ request@2.57.0
  │ │ ├── aws-sign2@0.5.0
  │ │ ├─┬ bl@0.9.5
  │ │ │ └─┬ readable-stream@1.0.34
  │ │ │   └── isarray@0.0.1
  │ │ ├── caseless@0.10.0
  │ │ ├─┬ form-data@0.2.0
  │ │ │ ├── async@0.9.2
  │ │ │ └─┬ combined-stream@0.0.7
  │ │ │   └── delayed-stream@0.0.5
  │ │ ├─┬ har-validator@1.8.0
  │ │ │ ├── bluebird@2.10.2
  │ │ │ └── commander@2.9.0
  │ │ ├── hawk@2.3.1
  │ │ ├─┬ http-signature@0.11.0
  │ │ │ ├── asn1@0.1.11
  │ │ │ └── assert-plus@0.1.5
  │ │ ├─┬ mime-types@2.0.14
  │ │ │ └── mime-db@1.12.0
  │ │ └── qs@3.1.0
  │ ├── validator@3.22.2
  │ └── xml2js@0.2.7
  ├─┬ caller-id@0.1.0
  │ └── stack-trace@0.0.9
  ├── colors@0.6.2
  ├─┬ commander@1.0.4
  │ └── keypress@0.1.0
  ├── easy-table@0.0.1
  ├─┬ event-stream@3.1.5
  │ ├── from@0.1.3
  │ ├── map-stream@0.1.0
  │ ├── pause-stream@0.0.11
  │ ├── split@0.2.10
  │ └── stream-combiner@0.0.4
  ├── eyes@0.1.8
  ├── fast-json-patch@0.5.6
  ├── github@0.1.6
  ├── js2xmlparser@1.0.0
  ├── jsrsasign@4.8.2
  ├─┬ kuduscript@1.0.6
  │ ├── commander@1.1.1
  │ └── streamline@0.4.11
  ├── moment@2.13.0
  ├── ms-rest@1.14.2
  ├─┬ ms-rest-azure@1.14.2
  │ ├── async@0.2.7
  │ └── uuid@2.0.1
  ├── node-forge@0.6.23
  ├── node-uuid@1.2.0
  ├── number-is-nan@1.0.0
  ├── omelette@0.1.0
  ├─┬ openssl-wrapper@0.2.1
  │ ├── debug@0.7.4
  │ └── q@0.9.7
  ├─┬ read@1.0.7
  │ └── mute-stream@0.0.6
  ├─┬ readable-stream@1.0.34
  │ ├── core-util-is@1.0.2
  │ ├── inherits@2.0.1
  │ ├── isarray@0.0.1
  │ └── string_decoder@0.10.31
  ├─┬ request@2.69.0
  │ ├── aws-sign2@0.6.0
  │ ├── aws4@1.4.1
  │ ├─┬ bl@1.0.3
  │ │ └─┬ readable-stream@2.0.6
  │ │   └── isarray@1.0.0
  │ ├── caseless@0.11.0
  │ ├─┬ combined-stream@1.0.5
  │ │ └── delayed-stream@1.0.0
  │ ├── extend@3.0.0
  │ ├── forever-agent@0.6.1
  │ ├─┬ form-data@1.0.0-rc4
  │ │ └── async@1.5.2
  │ ├─┬ har-validator@2.0.6
  │ │ ├─┬ chalk@1.1.3
  │ │ │ ├── ansi-styles@2.2.1
  │ │ │ ├── escape-string-regexp@1.0.5
  │ │ │ ├─┬ has-ansi@2.0.0
  │ │ │ │ └── ansi-regex@2.0.0
  │ │ │ ├── strip-ansi@3.0.1
  │ │ │ └── supports-color@2.0.0
  │ │ ├─┬ commander@2.9.0
  │ │ │ └── graceful-readlink@1.0.1
  │ │ ├─┬ is-my-json-valid@2.13.1
  │ │ │ ├── generate-function@2.0.0
  │ │ │ ├─┬ generate-object-property@1.2.0
  │ │ │ │ └── is-property@1.0.2
  │ │ │ ├── jsonpointer@2.0.0
  │ │ │ └── xtend@4.0.1
  │ │ └─┬ pinkie-promise@2.0.1
  │ │   └── pinkie@2.0.4
  │ ├─┬ hawk@3.1.3
  │ │ ├── boom@2.10.1
  │ │ ├── cryptiles@2.0.5
  │ │ ├── hoek@2.16.3
  │ │ └── sntp@1.0.9
  │ ├─┬ http-signature@1.1.1
  │ │ ├── assert-plus@0.2.0
  │ │ ├─┬ jsprim@1.2.2
  │ │ │ ├── extsprintf@1.0.2
  │ │ │ ├── json-schema@0.2.2
  │ │ │ └── verror@1.3.6
  │ │ └─┬ sshpk@1.8.3
  │ │   ├── asn1@0.2.3
  │ │   ├── assert-plus@1.0.0
  │ │   ├─┬ dashdash@1.13.1
  │ │   │ └── assert-plus@1.0.0
  │ │   ├── ecc-jsbn@0.1.1
  │ │   ├─┬ getpass@0.1.6
  │ │   │ └── assert-plus@1.0.0
  │ │   ├── jodid25519@1.0.2
  │ │   ├── jsbn@0.1.0
  │ │   └── tweetnacl@0.13.3
  │ ├── is-typedarray@1.0.0
  │ ├── isstream@0.1.2
  │ ├── json-stringify-safe@5.0.1
  │ ├─┬ mime-types@2.1.11
  │ │ └── mime-db@1.23.0
  │ ├── node-uuid@1.4.7
  │ ├── oauth-sign@0.8.2
  │ ├── qs@6.0.2
  │ ├── stringstream@0.0.5
  │ ├── tough-cookie@2.2.2
  │ └── tunnel-agent@0.4.3
  ├─┬ ssh-key-to-pem@0.11.0
  │ ├── asn1@0.1.11
  │ └── ctype@0.5.2
  ├─┬ streamline@0.10.17
  │ ├── fibers@1.0.13
  │ ├── galaxy@0.1.12
  │ └─┬ source-map@0.1.43
  │   └── amdefine@1.0.0
  ├── streamline-streams@0.1.5
  ├─┬ sync-request@3.0.0
  │ ├─┬ concat-stream@1.4.10
  │ │ ├── readable-stream@1.1.14
  │ │ └── typedarray@0.0.6
  │ ├── http-response-object@1.1.0
  │ └─┬ then-request@2.2.0
  │   ├── http-basic@2.5.1
  │   ├─┬ promise@7.1.1
  │   │ └── asap@2.0.4
  │   └── qs@6.2.0
  ├── through@2.3.4
  ├── tunnel@0.0.2
  ├── underscore@1.4.4
  ├── validator@3.1.0
  ├─┬ winston@0.6.2
  │ ├── async@0.1.22
  │ ├── cycle@1.0.3
  │ ├── pkginfo@0.2.3
  │ └── request@2.9.203
  ├── wordwrap@0.0.2
  ├─┬ xml2js@0.1.14
  │ └── sax@0.5.2
  └── xmlbuilder@0.4.3
azure login
info:    Executing command login
\info:    To sign in, use a web browser to open the page https://aka.ms/devicelogin. Enter the code BS5P64ANU to authenticate.
|info:    Added subscription Free Trial
info:    Setting subscription "Free Trial" as default
+
info:    login command OK
  • 使用azure account show命令获取帐户信息:
azure account show
info:    Executing command account show
data:    Name                        : Free Trial
data:    ID                          : XXX
data:    State                       : Enabled
data:    Tenant ID                   : YYY
data:    Is Default                  : true
data:    Environment                 : AzureCloud
data:    Has Certificate             : No
data:    Has Access Token            : Yes
data:    User name                   : arun.gupta@gmail.com
data:
info:    account show command OK

请注意显示的值,而不是XXX和YYY。 这些将用于配置Kubernetes集群。

启动Kubernetes集群

  • 下载Kubernetes 1.2.4并将其解压缩。
  • Azure上的Kubernetes集群可以通过以下方式启动:
export KUBERNETES_PROVIDER=azure
export AZURE_SUBSCRIPTION_ID=XXX
export AZURE_TENANT_ID=YYY
./cluster/kube-up.sh

确保从上一个命令中为XXXYYY指定适当的值。 AZURE_SUBSCRIPTION_IDAZURE_TENANT_ID特定于Azure。
这些值也可以在cluster/azure/config-default.sh进行编辑。

    1. 启动Kubernetes集群:
./kubernetes/cluster/kube-up.sh 
... Starting cluster using provider: azure
... calling verify-prereqs
... calling kube-up
++> AZURE KUBE-UP STARTED: Tue May 31 16:15:26 PDT 2016
This will be interactive. (export AZURE_AUTH_METHOD=client_secret to avoid the prompt)
hyperkube-amd64:v1.2.4 was found in the gcr.io/google_containers repository
Flag --tenant-id has been deprecated, tenant-id is deprecated. it is now determined automatically from the subscription id
WARN[0000] --resource-group is unset. Derived one from --deployment-name: "kube-20160531-161525" 
WARN[0000] --master-fqdn is unset. Derived one from input: "kube-20160531-161525.westus.cloudapp.azure.com". 
To sign in, use a web browser to open the page https://aka.ms/devicelogin. Enter the code BPRLH2ARJ to authenticate.
INFO[0034] Starting ARM Deployment. This will take some time. deployment="kube-20160531-161525-1464736561" 
INFO[0279] Finished ARM Deployment. deployment="kube-20160531-161525-1464736561" 
INFO[0279] Validating Kubernetes cluster.               
WARN[0279] Failed to validate components: Get https://kube-20160531-161525.westus.cloudapp.azure.com:6443/api/v1/componentstatuses: dial tcp 23.99.60.138:6443: getsockopt: connection refused 
INFO[0294] Validating Kubernetes cluster.               
WARN[0294] Failed to validate components: Get https://kube-20160531-161525.westus.cloudapp.azure.com:6443/api/v1/componentstatuses: dial tcp 23.99.60.138:6443: getsockopt: connection refused 
INFO[0309] Validating Kubernetes cluster.               
WARN[0309] Failed to validate components: Get https://kube-20160531-161525.westus.cloudapp.azure.com:6443/api/v1/componentstatuses: dial tcp 23.99.60.138:6443: getsockopt: connection refused 
INFO[0324] Validating Kubernetes cluster.               
WARN[0347] validate: incorrect healthy count. expected=3 actual=4 
INFO[0347] Deployment Complete!                         
INFO[0347] master: "https://kube-20160531-161525.westus.cloudapp.azure.com:6443" 
INFO[0347] output: "/opt/azkube/_deployments/kube-20160531-161525" 
cluster "kube-20160531-161525" set.
user "kube-20160531-161525_user" set.
context "kube-20160531-161525" set.
switched to context "kube-20160531-161525".
++> AZURE KUBE-UP FINISHED: Tue May 31 16:21:15 PDT 2016 (duration: -349 seconds)
... calling validate-cluster
Detected 4 ready nodes, found 4 nodes out of expected 3. Found more nodes than expected, your cluster may not behave correctly.
Found 4 node(s).
NAME                             STATUS                     AGE
kube-20160531-161525-vm-master   Ready,SchedulingDisabled   21s
kube-20160531-161525-vm-node-0   Ready                      18s
kube-20160531-161525-vm-node-1   Ready                      19s
kube-20160531-161525-vm-node-2   Ready                      19s
Flag --api-version has been deprecated, flag is no longer respected and will be deleted in the next release
Validate output:
NAME                 STATUS    MESSAGE              ERROR
scheduler            Healthy   ok                   
controller-manager   Healthy   ok                   
etcd-1               Healthy   {"health": "true"}   
etcd-0               Healthy   {"health": "true"}   
Cluster validation succeeded
Done, listing cluster services:
 
Kubernetes master is running at https://kube-20160531-161525.westus.cloudapp.azure.com:6443

它开始四个Standard_A1大小的节点。 每个节点为您提供1个内核,1.75 GB RAM和40GB HDD。

在Azure的Kubernetes群集中运行Docker容器

现在集群已启动并正在运行,获取所有节点的列表:

./kubernetes/cluster/kubectl.sh get no
NAME                             STATUS                     AGE
kube-20160531-161525-vm-master   Ready,SchedulingDisabled   3m
kube-20160531-161525-vm-node-0   Ready                      3m
kube-20160531-161525-vm-node-1   Ready                      3m
kube-20160531-161525-vm-node-2   Ready                      3m

如图所示,创建了四个实例–一个用于主节点,三个用于工作节点。

Azure门户显示资源组中所有创建的工件:

如图所示,创建了四个实例–一个用于主节点,三个用于工作节点。

Azure门户显示资源组中所有创建的工件:

天蓝色门户Kubernetes资源组

提供有关创建的节点的更多详细信息:

天蓝色门户Kubernetes vnet

创建一个Couchbase窗格:

./kubernetes/cluster/kubectl.sh run couchbase --image=arungupta/couchbase
deployment "couchbase" created

注意,如何在CLI上指定映像名称。 Kubernetes 1.2之前的版本使用此命令创建了一个Replication Controller。 这在Amazon Web Services上的 KubernetesGoogle Cloud上的 Kubernetes中进行了解释 Kubernetes 1.2引入了Deployments ,因此这将创建一个Deployment。 这样可以简化应用程序的部署和管理,包括版本控制,多个同时推出,汇总所有Pod的状态,保持应用程序可用性和回滚。

该Pod使用arungupta / couchbase Docker映像,该映像提供了预配置的Couchbase服务器。 可以在此处指定任何Docker映像。

可以查看广告连播的状态:

./kubernetes/cluster/kubectl.sh get -w po
NAME                         READY     STATUS              RESTARTS   AGE
couchbase-2830197765-f0s9c   0/1       ContainerCreating   0          5s
NAME                         READY     STATUS    RESTARTS   AGE
couchbase-2830197765-f0s9c   1/1       Running   0          1m

获取有关广告连播的更多详细信息:

./kubernetes/cluster/kubectl.sh describe po couchbase-2830197765-f0s9c
Name:        couchbase-2830197765-f0s9c
Namespace:    default
Node:        kube-20160531-161525-vm-node-2/10.0.0.6
Start Time:    Tue, 31 May 2016 16:28:02 -0700
Labels:        pod-template-hash=2830197765,run=couchbase
Status:        Running
IP:        10.2.74.2
Controllers:    ReplicaSet/couchbase-2830197765
Containers:
  couchbase:
    Container ID:    docker://eba043085c95645cf650206469be5c7e2d6c7395883a053d197446a14e757440
    Image:        arungupta/couchbase
    Image ID:        docker://sha256:f6b013d9694354148ace6804127dadee01c733151b5ff5e169f7c3b0e4faf321
    Port:        
    QoS Tier:
      cpu:        BestEffort
      memory:        BestEffort
    State:        Running
      Started:        Tue, 31 May 2016 16:29:04 -0700
    Ready:        True
    Restart Count:    0
    Environment Variables:
Conditions:
  Type        Status
  Ready     True 
Volumes:
  default-token-ylszs:
    Type:    Secret (a volume populated by a Secret)
    SecretName:    default-token-ylszs
Events:
  FirstSeen    LastSeen    Count    From                        SubobjectPath            Type        Reason        Message
  ---------    --------    -----    ----                        -------------            --------    ------        -------
  7m        7m        1    {default-scheduler }                                Normal        Scheduled    Successfully assigned couchbase-2830197765-f0s9c to kube-20160531-161525-vm-node-2
  7m        7m        1    {kubelet kube-20160531-161525-vm-node-2}    spec.containers{couchbase}    Normal        Pulling        pulling image "arungupta/couchbase"
  6m        6m        1    {kubelet kube-20160531-161525-vm-node-2}    spec.containers{couchbase}    Normal        Pulled        Successfully pulled image "arungupta/couchbase"
  6m        6m        1    {kubelet kube-20160531-161525-vm-node-2}    spec.containers{couchbase}    Normal        Created        Created container with docker id eba043085c95
  6m        6m        1    {kubelet kube-20160531-161525-vm-node-2}    spec.containers{couchbase}    Normal        Started        Started container with docker id eba043085c95

在Kubernetes上公开Pod服务

现在,我们的Pod正在运行,如何访问Couchbase服务器? 您需要在Kubernetes集群外部公开部署即服务。

通常,这将使用以下命令公开:

./kubernetes/cluster/kubectl.sh expose deployment couchbase --target-port=8091 --port=8091 --type=LoadBalancer

但是Azure目前不支持--type=LoadBalancer 。 此功能正在开发中,有望在不久的将来可用。 因此,与此同时,我们将服务公开为:

./kubernetes/cluster/kubectl.sh expose deployment couchbase --target-port=8091 --port=8091
service "couchbase" exposed

现在,使用kubectl proxy命令将此服务kubectl proxy

./kubernetes/cluster/kubectl.sh proxy --address='0.0.0.0' --port=9999 --accept-hosts='.*'
Starting to serve on [::]:9999

现在,可以在http://127.0.0.1:9999/api/v1/proxy/namespaces/default/services/couchbase/index.html上访问此公开的服务。 这将显示Couchbase Web Console的登录屏幕:

Azure-kubernetes-couchbase-web-console

关闭Kubernetes集群

最后,使用cluster/kube-down.sh脚本关闭集群。

./kubernetes/cluster/kube-down.sh 
Bringing down cluster using provider: azure
Bringing down cluster
 
You must do this manually (for now)!
This can be done with:
./kubernetes/cluster/../cluster/../cluster/azure/util.sh: line 246: AZ_RESOURCE_GROUP: unbound variable

该脚本关闭了群集,但是需要显式删除Azure资源组。 这可以通过从portal.azure.com选择资源组来完成

天蓝色门户Kubernetes删除资源组

文件号为#26601

请享用!

翻译自: https://www.javacodegeeks.com/2016/06/kubernetes-cluster-azure-expose-couchbase-service.html

sap on azure

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值