global deployment of nodejs with app engine as described in the docs












0















In this article, Google describes a global deployment of a nodejs app in app engine flex.



This image is from the article.



enter image description here



The problem is on my understanding is this not possible from two reasons.




  1. It is not possible to access cross project resources in GCLB to create a bakend service.


  2. It is not possible to see the instance groups form GAE Flex to create a bakend service.



My first idea was to proxy all requests over nginx running on compute engine instances in each region on separate project.



How can i do that?



Thanks for any help.










share|improve this question

























  • I am unsure what you are asking. The graph shows how it's done already, why would you want to proxy all requests over Google Compute Engine? You can simply build a Google App Engine Flex app in three different regions (three projects) and use HTTP LB to distribute requests among them.

    – Ying Li
    Nov 25 '18 at 22:18











  • @YingLi I understand the graph, but how can i do that with the cloud load balancer? I can’t see the app engine flex instance group to create a backend service. For the Cloud Load Balancer.

    – Aron
    Nov 25 '18 at 22:37













  • @Ying Li Any idea?

    – Aron
    Nov 26 '18 at 16:27













  • Oh I see what you mean, thanks for the clarification. For future issues where the instruction doesn't work due to a bug, please file the issue with us directly on the Public Issue Tracker

    – Ying Li
    Nov 27 '18 at 14:40


















0















In this article, Google describes a global deployment of a nodejs app in app engine flex.



This image is from the article.



enter image description here



The problem is on my understanding is this not possible from two reasons.




  1. It is not possible to access cross project resources in GCLB to create a bakend service.


  2. It is not possible to see the instance groups form GAE Flex to create a bakend service.



My first idea was to proxy all requests over nginx running on compute engine instances in each region on separate project.



How can i do that?



Thanks for any help.










share|improve this question

























  • I am unsure what you are asking. The graph shows how it's done already, why would you want to proxy all requests over Google Compute Engine? You can simply build a Google App Engine Flex app in three different regions (three projects) and use HTTP LB to distribute requests among them.

    – Ying Li
    Nov 25 '18 at 22:18











  • @YingLi I understand the graph, but how can i do that with the cloud load balancer? I can’t see the app engine flex instance group to create a backend service. For the Cloud Load Balancer.

    – Aron
    Nov 25 '18 at 22:37













  • @Ying Li Any idea?

    – Aron
    Nov 26 '18 at 16:27













  • Oh I see what you mean, thanks for the clarification. For future issues where the instruction doesn't work due to a bug, please file the issue with us directly on the Public Issue Tracker

    – Ying Li
    Nov 27 '18 at 14:40
















0












0








0


0






In this article, Google describes a global deployment of a nodejs app in app engine flex.



This image is from the article.



enter image description here



The problem is on my understanding is this not possible from two reasons.




  1. It is not possible to access cross project resources in GCLB to create a bakend service.


  2. It is not possible to see the instance groups form GAE Flex to create a bakend service.



My first idea was to proxy all requests over nginx running on compute engine instances in each region on separate project.



How can i do that?



Thanks for any help.










share|improve this question
















In this article, Google describes a global deployment of a nodejs app in app engine flex.



This image is from the article.



enter image description here



The problem is on my understanding is this not possible from two reasons.




  1. It is not possible to access cross project resources in GCLB to create a bakend service.


  2. It is not possible to see the instance groups form GAE Flex to create a bakend service.



My first idea was to proxy all requests over nginx running on compute engine instances in each region on separate project.



How can i do that?



Thanks for any help.







google-app-engine google-cloud-platform google-compute-engine app-engine-flexible






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 26 '18 at 16:22







Aron

















asked Nov 25 '18 at 12:51









AronAron

555419




555419













  • I am unsure what you are asking. The graph shows how it's done already, why would you want to proxy all requests over Google Compute Engine? You can simply build a Google App Engine Flex app in three different regions (three projects) and use HTTP LB to distribute requests among them.

    – Ying Li
    Nov 25 '18 at 22:18











  • @YingLi I understand the graph, but how can i do that with the cloud load balancer? I can’t see the app engine flex instance group to create a backend service. For the Cloud Load Balancer.

    – Aron
    Nov 25 '18 at 22:37













  • @Ying Li Any idea?

    – Aron
    Nov 26 '18 at 16:27













  • Oh I see what you mean, thanks for the clarification. For future issues where the instruction doesn't work due to a bug, please file the issue with us directly on the Public Issue Tracker

    – Ying Li
    Nov 27 '18 at 14:40





















  • I am unsure what you are asking. The graph shows how it's done already, why would you want to proxy all requests over Google Compute Engine? You can simply build a Google App Engine Flex app in three different regions (three projects) and use HTTP LB to distribute requests among them.

    – Ying Li
    Nov 25 '18 at 22:18











  • @YingLi I understand the graph, but how can i do that with the cloud load balancer? I can’t see the app engine flex instance group to create a backend service. For the Cloud Load Balancer.

    – Aron
    Nov 25 '18 at 22:37













  • @Ying Li Any idea?

    – Aron
    Nov 26 '18 at 16:27













  • Oh I see what you mean, thanks for the clarification. For future issues where the instruction doesn't work due to a bug, please file the issue with us directly on the Public Issue Tracker

    – Ying Li
    Nov 27 '18 at 14:40



















I am unsure what you are asking. The graph shows how it's done already, why would you want to proxy all requests over Google Compute Engine? You can simply build a Google App Engine Flex app in three different regions (three projects) and use HTTP LB to distribute requests among them.

– Ying Li
Nov 25 '18 at 22:18





I am unsure what you are asking. The graph shows how it's done already, why would you want to proxy all requests over Google Compute Engine? You can simply build a Google App Engine Flex app in three different regions (three projects) and use HTTP LB to distribute requests among them.

– Ying Li
Nov 25 '18 at 22:18













@YingLi I understand the graph, but how can i do that with the cloud load balancer? I can’t see the app engine flex instance group to create a backend service. For the Cloud Load Balancer.

– Aron
Nov 25 '18 at 22:37







@YingLi I understand the graph, but how can i do that with the cloud load balancer? I can’t see the app engine flex instance group to create a backend service. For the Cloud Load Balancer.

– Aron
Nov 25 '18 at 22:37















@Ying Li Any idea?

– Aron
Nov 26 '18 at 16:27







@Ying Li Any idea?

– Aron
Nov 26 '18 at 16:27















Oh I see what you mean, thanks for the clarification. For future issues where the instruction doesn't work due to a bug, please file the issue with us directly on the Public Issue Tracker

– Ying Li
Nov 27 '18 at 14:40







Oh I see what you mean, thanks for the clarification. For future issues where the instruction doesn't work due to a bug, please file the issue with us directly on the Public Issue Tracker

– Ying Li
Nov 27 '18 at 14:40














1 Answer
1






active

oldest

votes


















1














As you mentioned, the issue with that diagram is that, although App Engine Flex instances actually run in your project, they are not visible to you and you can't use them as backend for the global load balancer. Indeed, this diagram is wrong and can't be implemented as-is. I've requested a documentation update to correct that.



One workaround, as you also mentioned, is to proxy requests to App Engine via Compute Engine VMs running in the same region. This isn't optimal though and may introduce a single point of failure.



Since App Engine Flex actually runs Docker containers on VMs, you can achieve a similar setup using Google Kubernetes Engine, with the advantage that you can run one cluster per region, all in the same project.






share|improve this answer
























  • Thank you! Best Aron

    – Aron
    Nov 27 '18 at 13:08











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53467607%2fglobal-deployment-of-nodejs-with-app-engine-as-described-in-the-docs%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









1














As you mentioned, the issue with that diagram is that, although App Engine Flex instances actually run in your project, they are not visible to you and you can't use them as backend for the global load balancer. Indeed, this diagram is wrong and can't be implemented as-is. I've requested a documentation update to correct that.



One workaround, as you also mentioned, is to proxy requests to App Engine via Compute Engine VMs running in the same region. This isn't optimal though and may introduce a single point of failure.



Since App Engine Flex actually runs Docker containers on VMs, you can achieve a similar setup using Google Kubernetes Engine, with the advantage that you can run one cluster per region, all in the same project.






share|improve this answer
























  • Thank you! Best Aron

    – Aron
    Nov 27 '18 at 13:08
















1














As you mentioned, the issue with that diagram is that, although App Engine Flex instances actually run in your project, they are not visible to you and you can't use them as backend for the global load balancer. Indeed, this diagram is wrong and can't be implemented as-is. I've requested a documentation update to correct that.



One workaround, as you also mentioned, is to proxy requests to App Engine via Compute Engine VMs running in the same region. This isn't optimal though and may introduce a single point of failure.



Since App Engine Flex actually runs Docker containers on VMs, you can achieve a similar setup using Google Kubernetes Engine, with the advantage that you can run one cluster per region, all in the same project.






share|improve this answer
























  • Thank you! Best Aron

    – Aron
    Nov 27 '18 at 13:08














1












1








1







As you mentioned, the issue with that diagram is that, although App Engine Flex instances actually run in your project, they are not visible to you and you can't use them as backend for the global load balancer. Indeed, this diagram is wrong and can't be implemented as-is. I've requested a documentation update to correct that.



One workaround, as you also mentioned, is to proxy requests to App Engine via Compute Engine VMs running in the same region. This isn't optimal though and may introduce a single point of failure.



Since App Engine Flex actually runs Docker containers on VMs, you can achieve a similar setup using Google Kubernetes Engine, with the advantage that you can run one cluster per region, all in the same project.






share|improve this answer













As you mentioned, the issue with that diagram is that, although App Engine Flex instances actually run in your project, they are not visible to you and you can't use them as backend for the global load balancer. Indeed, this diagram is wrong and can't be implemented as-is. I've requested a documentation update to correct that.



One workaround, as you also mentioned, is to proxy requests to App Engine via Compute Engine VMs running in the same region. This isn't optimal though and may introduce a single point of failure.



Since App Engine Flex actually runs Docker containers on VMs, you can achieve a similar setup using Google Kubernetes Engine, with the advantage that you can run one cluster per region, all in the same project.







share|improve this answer












share|improve this answer



share|improve this answer










answered Nov 27 '18 at 12:22









LundinCastLundinCast

2,73641323




2,73641323













  • Thank you! Best Aron

    – Aron
    Nov 27 '18 at 13:08



















  • Thank you! Best Aron

    – Aron
    Nov 27 '18 at 13:08

















Thank you! Best Aron

– Aron
Nov 27 '18 at 13:08





Thank you! Best Aron

– Aron
Nov 27 '18 at 13:08




















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53467607%2fglobal-deployment-of-nodejs-with-app-engine-as-described-in-the-docs%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Tonle Sap (See)

I get strange results when I access the Sqlitedatabase with Unity C# via XAMPP

Guatemaltekische Davis-Cup-Mannschaft