This is an automated email from the ASF dual-hosted git repository.
liujun pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/incubator-dubbo-website.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 70b2e06 Merge pull request #115, english version for blog dubbo-k8s.
70b2e06 is described below
commit 70b2e06f6dd5c69b8adb58a039b1a0ce861e0a56
Author: IaMJamesHuang <38498283+iamjameshu...@users.noreply.github.com>
AuthorDate: Thu Aug 30 12:08:14 2018 +0800
Merge pull request #115, english version for blog dubbo-k8s.
---
blog/en-us/dubbo-k8s.md | 67 +++--
blog/zh-cn/dubbo-k8s.md | 39 ++--
2 files changed, 84 insertions(+), 22 deletions(-)
diff --git a/blog/en-us/dubbo-k8s.md b/blog/en-us/dubbo-k8s.md
index 7da6bdc..ecd151a 100644
--- a/blog/en-us/dubbo-k8s.md
+++ b/blog/en-us/dubbo-k8s.md
@@ -1,2 +1,65 @@
-Part 1
-Part 2
+At first sight, the service of kubernetes has its own IP, while under the
original fixed mindset: Dubbo/HSF service is aggregated by the IP of the entire
service cluster, that means, kubernetes and Dubbo/HSF look like something
different in natural, but when carefully thinking, the difference becomes
insignificant. Because the only IP under kubernetes is just a Virtural IP--VIP,
behind the vip are multiple endpoints, which is the factual processing node.
+
+Here we only discuss the situation that the Dubbo service in the cluster is
accessed in the same kubernetes cluster, As for the provider outside kubernetes
to access the provider in kubernetes, since it involves the problem of network
address space, and it usually requires GateWay/loadbalance for mapping
conversion, which there not detail discussion for this case. Besides, there are
two options available for kubernetes:
+
+1. DNS: The default kubernetes service is based on the DNS plugin (The latest
version of the recommendation is coreDNS), one proposal on Dubbo is about this.
since HSF/Dubbo has always highlighted its soft-load address discovery
capability, it ignores Static's strategy insteadily, my understanding is that
as a service discovery mechanism, the static resolution mechanism is one of the
simplest and most needed to support mechanism, you can also refer to Envoy's
point of views. While at th [...]
+
+ ![img](https://img.alicdn.com/tfs/TB1Kj1ktpkoBKNjSZFEXXbrEVXa-985-213.png)
+
+2. API:DNS relies on the DNS plugin, which will generate additional operation,
so consider directly obtaining the endpoint through the client of kubernetes.
In fact, by accessing the API server interface of kubernetes, you can directly
obtain the list of endpoints behind a certain servie, and can also monitor the
changes in its address list. Thereby implementing the soft load discovery
strategy recommended by Dubbo/HSF. Refer to the code for details:
+
+The above two thoughts need to consider the following two points:
+
+1. Kubernetes and Dubbo are consistent with the mapping name of service.
Dubbo's service is determined by serviename, group, version to determine its
uniqueness, and servicename generally has a longer package name for its service
interface. Need to map the servie name of kubernetes and the service name of
dubbo. Either add a property like SOFA to define it. This is a big change, but
it is most reasonable. Or it is a fixed rule to reference the deployed
environment variables, which can be [...]
+2. Port problem:The default Pod and Pod network interoperability is solved,
need to be validated.
+
+## Demo Verification
+
+The following is a demo deployment through kubernetes service in Alibaba
Cloud's Container Registry and EDAS. Visit Alibaba Cloud -》Container Registry.
+
+1. Create repo and bind the github codebase. As shown below.
+
+![img](https://img.alicdn.com/tfs/TB1m.tEtrorBKNjSZFjXXc_SpXa-1892-870.png)
+
+
+
+
+2. Click Manage enter the repository details page. Click Build in images
service panel, construct the demo into image and publish it to the specified
repository. As shown below.
+
+ ![img](https://img.alicdn.com/tfs/TB1oYqvtcIrBKNjSZK9XXagoVXa-1872-888.png)
+
+
+
+3. Switch to Enterprise Distributed Application Services (EDAS) products
panel, visit Resource Management -》Clusters. Create kubernetes cluster and bind
ECS. As shown below.
+
+ ![img](https://img.alicdn.com/tfs/TB1b1p2trZnBKNjSZFKXXcGOVXa-1858-833.png)
+
+
+
+4. Application Management - 》Create application, type kubernetes application
and specify the image in the container registry . As shown below.
+
+ ![img](https://img.alicdn.com/tfs/TB1_YywtDCWBKNjSZFtXXaC3FXa-1737-588.png)
+
+
+
+ ![](https://img.alicdn.com/tfs/TB18uzTtdcnBKNjSZR0XXcFqFXa-1820-861.png)
+
+
+
+5. After creation , then deploy applications. As shown below.
+
+ ![](https://img.alicdn.com/tfs/TB1fEpEtrorBKNjSZFjXXc_SpXa-1846-783.png)
+
+- The supplementary application name cannot have uppercase le