Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id C75E4200C34 for ; Mon, 27 Feb 2017 21:48:50 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id C612B160B60; Mon, 27 Feb 2017 20:48:50 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id A3EB7160B5B for ; Mon, 27 Feb 2017 21:48:49 +0100 (CET) Received: (qmail 50480 invoked by uid 500); 27 Feb 2017 20:48:48 -0000 Mailing-List: contact dev-help@cloudstack.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cloudstack.apache.org Delivered-To: mailing list dev@cloudstack.apache.org Received: (qmail 50463 invoked by uid 99); 27 Feb 2017 20:48:48 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 27 Feb 2017 20:48:48 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id E2905C12C9 for ; Mon, 27 Feb 2017 20:48:47 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 2.99 X-Spam-Level: ** X-Spam-Status: No, score=2.99 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.001, HTML_MESSAGE=2, KAM_EU=0.5, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RCVD_IN_SORBS_SPAM=0.5, SPF_PASS=-0.001, T_REMOTE_IMAGE=0.01] autolearn=disabled Authentication-Results: spamd4-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id nMSby4753dli for ; Mon, 27 Feb 2017 20:48:42 +0000 (UTC) Received: from mail-ot0-f179.google.com (mail-ot0-f179.google.com [74.125.82.179]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id 546005F56F for ; Mon, 27 Feb 2017 20:48:41 +0000 (UTC) Received: by mail-ot0-f179.google.com with SMTP id i1so19644116ota.3 for ; Mon, 27 Feb 2017 12:48:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to; bh=oXnT788xaGauWM2ghtv3V1SSiom3N1YBdXKniT3XkFs=; b=cCgOwaYX7l3vbm5MOiZTXbrL9Hm6p+6P89mNLE2C4bRhb8IsEkqM2B3y0isyoV86F4 cX5PRUtGh+11H5bV8XbA6fLKDyz9ykrMVwQ8SgYHieTRqnJmYadgaRNkTAdyfgckIwx2 wwgFe75xxzJk8mBwbpdwraTA4Nx1MxcHVhcdfZT78MN1mchOQIicPT5nXJmYsgnD0ue9 4p6EibzFvpz6tXjUEESsw+84PHt0TPu422WAbi7ZNsPvS+LpdV12MAyDaKkqmBlX7GTC r15Qb7Negrm23IqeLvdY7qph97pCHmf9AIPqe9qD7q9ELkE0rqekw6TZMIICwh8UyhJF j1lw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to; bh=oXnT788xaGauWM2ghtv3V1SSiom3N1YBdXKniT3XkFs=; b=ew51D74aStk+kzuFFiNretRNkv7Of0IzRM0Zk4X5mvRQ7PSi9UtqICiu0aXsEU4yjb s+44U+I8k8itSYl2hzf6dkzMHdqfbbDAPtf9L9+K95PzfHv6xIhMrKwJ62zMqW2LAuPf SxDf+DD7HLPgcR3zOaJoO2dWbH4BJgxdS4zXGHLeuMW3i43mKaD4kGgAvyBORzlt2a6n RUeOitXnHRiAXUivNKIn+Bou+5sAglQ5yD/vg0oi9CzdIzcTQQaaDuYcRS1+KDI/KC0J l4ZO64VzcRwsBQg622P9oyem/g92vX3d9+TQn98JbXvlxZTQmvrZseokKar1RItJXvsU ZJCA== X-Gm-Message-State: AMke39k28SmpENuEgyprMzckXyN7gzCPmtjDqQTvTogyNWii3cupNeAtbgKEKdn56d9R/8iFrpjlP+h1lfr+tw== X-Received: by 10.157.54.139 with SMTP id h11mr10741300otc.86.1488228519648; Mon, 27 Feb 2017 12:48:39 -0800 (PST) MIME-Version: 1.0 Sender: williamstevens@gmail.com Received: by 10.182.227.234 with HTTP; Mon, 27 Feb 2017 12:48:39 -0800 (PST) In-Reply-To: References: <17491968-94FB-4B9B-B6B9-9C6469C21B43@ena.com> <71FCDA60-6A32-4F2F-B7D0-65FFFAA37260@persistent.co.in> From: Will Stevens Date: Mon, 27 Feb 2017 15:48:39 -0500 X-Google-Sender-Auth: UTQb9wAUxQRDKkkdv3XWTEhMBoo Message-ID: Subject: Re: Modern template hosting To: "dev@cloudstack.apache.org" Content-Type: multipart/alternative; boundary=001a113ed44c4225c405498934b5 archived-at: Mon, 27 Feb 2017 20:48:50 -0000 --001a113ed44c4225c405498934b5 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable so this is what I am looking to do. Please let me know if you have suggestions for me or think I should be solving the problem a different way= . - We request a new Github repository from the ASF at: 'apache/cloudstack-mirror-list' - In this repository we track a text file in the 'gh-pages' branch with a list of valid download mirrors. - I build a binary to be hosted by the ASF (or at least with the ASF pointing a domain at the binary and I could potentially host it). We will see how they want to handle the hosting of the binary. The binary would expose a web server which would behave as follows: - When the 'client' requests a download url the following flow is kicked off: -- The mirror list is queried from github (or from a static site hosted on asf, as we see fit). -- The Lat/Lon of the 'client' is determined based on their IP. -- The Lat/Lon for each of the 'mirror's is determined based on an IP lookup of the hostname. -- The closest geographical mirror is determined, the target is validated to be available and the user is redirected. Some questions I have right now: - Will every mirror have the same path structure to access the equivalent resources? - Should we support adding a path to the mirror url to specify the path to the base common path? -- Example: lets say the binary is hosted on 'dl.acs.com' and there are three mirrors 'abc.com', 'pqr.com/files' and 'xyx.com/downloads'. -- If the path being requested is ' dl.acs.com/templates/systemvm-4.6.xen.vhd.bz2', it would result in the following potential paths for the mirrors: -- 'abc.com/templates/systemvm-4.6.xen.vhd.bz2' -- 'pqr.com/files/templates/systemvm-4.6.xen.vhd.bz2' -- 'xyz.com/downloads/templates/systemvm-4.6.xen.vhd.bz2' Does this all make sense? *Will STEVENS* Lead Developer On Mon, Feb 27, 2017 at 1:31 PM, Chiradeep Vittal wrote: > My bad. A few lines down, this has been added recently: > > this.request.setFollowRedirects(true); > > On Mon, Feb 27, 2017 at 10:15 AM, Will Stevens > wrote: > > > OK. Thanks for the heads up. > > > > On Feb 27, 2017 1:08 PM, "Chiradeep Vittal" > wrote: > > > > > Sounds workable. The downloader code in the SSVM won't follow > redirects I > > > think. > > > https://github.com/apache/cloudstack/blob/ > 5511065fc20787619d9cd0444a65a3 > > > 155fc9c921/core/src/com/cloud/storage/template/ > > > HttpTemplateDownloader.java#L93 > > > https://goo.gl/dSi0r5 > > > Might need to add > > > client.setRedirectStrategy(new LaxRedirectStrategy()); > > > > > > On Mon, Feb 27, 2017 at 9:57 AM, Will Stevens > > > wrote: > > > > > > > We haven't opened a ticket yet because we don't have a strategy yet= . > > > > > > > > What do you guys think of this: > > > > - We setup a new github repo in the 'apache' org which consists of = a > > > single > > > > file with a list of active/supported mirrors. > > > > - I write a small web server, distributed as a binary, which can be > > > hosted > > > > by ASF Infra. This web server will query the current list of mirro= rs > > and > > > > will select one and then do a 302 redirect to that mirror. > > > > > > > > The act of 'choosing' a mirror could be done in a number of ways. > > > > - If we want to define an order, then it could just try from the to= p > of > > > the > > > > list and work its way down. It would curl the target to make sure = it > > > gets > > > > a 200 and if it does, it would do a 302 redirect. > > > > - Or, if we want to distribute the load across the mirrors, we coul= d > > pick > > > > from the list randomly. Again, doing a curl to verify the mirror i= s > up > > > and > > > > then doing a redirect. > > > > - If we want to get fancy, we could do a reverse IP lookup and try = to > > > match > > > > the requester with their closest geographical mirror. > > > > > > > > Thoughts? > > > > > > > > *Will STEVENS* > > > > Lead Developer > > > > > > > > > > > > > > > > On Mon, Feb 27, 2017 at 12:46 PM, Chiradeep Vittal < > > chiradeepv@gmail.com > > > > > > > > wrote: > > > > > > > > > What steps are needed to set up a mirror? What does Infra need to > do? > > > Has > > > > > anybody filed a ticket with Infra? > > > > > > > > > > On Sun, Feb 26, 2017 at 10:17 PM, Raja Pullela < > > > > > raja.pullela@accelerite.com> > > > > > wrote: > > > > > > > > > > > Hi will, > > > > > > > > > > > > I believe, we didn=E2=80=99t get to close =E2=80=98getting a mi= rror on Apache=E2=80=99 > > > because > > > > we > > > > > > needed someone on the Apache Infra side to close this. BTW, > > > > > > cloudstack-apt.get.eu (I think Nux manages this?) has all/most > of > > > the > > > > > > content. Once we can close on the Apache mirror for hosting th= e > > > > > content, I > > > > > > can help assist getting the content there. > > > > > > > > > > > > For now, we have replicated the download.cloud.com content to = =E2=80=98 > > > > > > s3.download.accelerite.com=E2=80=99. > > > > > > Also, we are working on a set of steps/procedure to help with > this > > > > > > change. I will update everyone in about a week=E2=80=99s time = on the > > > details. > > > > > > > > > > > > Best, > > > > > > Raja Pullela > > > > > > Engineering Team, > > > > > > Accelerite, 2055 Laurelwood Road, > > > > > > Santa Clara, CA, 95054 > > > > > > > > > > > > On 2/24/17, 11:23 PM, "williamstevens@gmail.com on behalf of > Will > > > > > > Stevens" > > wstevens@cloudops.com> > > > > > > wrote: > > > > > > > > > > > > unfortunately the template mirror conversation got caught up in > > > details > > > > > and > > > > > > nobody took the lead on implementing a solution. > > > > > > > > > > > > citrix has been pinging me every couple months to say 'dude, we > > need > > > to > > > > > > remove the dependency on download.citrix.com', but i have not > had > > > the > > > > > > cycles to get in and solve the problem. the shutdown of that i= s > > > > imminent > > > > > > right now, so we need to solve it asap. > > > > > > > > > > > > > > > > > > > > > > > > *Will STEVENS* > > > > > > Lead Developer > > > > > > > > > > > > > > > > > > > > > > > > On Fri, Feb 24, 2017 at 12:38 PM, Paul Angus < > > > paul.angus@shapeblue.com > > > > > > > > > > > wrote: > > > > > > > > > > > > > Hi Nathan, > > > > > > > > > > > > > > Ideally, if you put the template location in (or use a templa= te > > > > defined > > > > > > > in) test_data.py then the actual location can be overridden = by > > > > anyone > > > > > > > testing. > > > > > > > > > > > > > > For Trillian, we've copied all of the templates that people > have > > > > define > > > > > > to > > > > > > > a local repo and then replace the URLs in test_data.py to > reduce > > > > > > bandwidth > > > > > > > use and download times. > > > > > > > > > > > > > > Ie: > > > > > > > > > > > > > > "bootableIso": > > > > > > > { > > > > > > > "displaytext": "Test Bootable ISO", > > > > > > > "name": "testISO", > > > > > > > "bootable": True, > > > > > > > "ispublic": False, > > > > > > > "url": "{{ marvin_images_location > > > > > > > }}/TinyCore-current.iso", > > > > > > > "ostype": 'Other Linux (64-bit)', > > > > > > > "mode": 'HTTP_DOWNLOAD' > > > > > > > }, > > > > > > > > > > > > > > > > > > > > > > > > > > > > I thought that we had come up with a solution for > > > download.cloud.com > > > > , > > > > > by > > > > > > > having a mirrorlist hosted in Community Apache 'space' with > > anyone > > > > able > > > > > > to > > > > > > > out themselves forward as a mirror. > > > > > > > But I must admit I lost track of whether anyone made the > > requisite > > > > > > changes > > > > > > > in code.... > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Kind regards, > > > > > > > > > > > > > > Paul Angus > > > > > > > > > > > > > > paul.angus@shapeblue.com > > > > > > > www.shapeblue.com > > > > > > > 53 Chandos Place, Covent Garden, London WC2N 4HSUK > > > > > > > @shapeblue > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -----Original Message----- > > > > > > > From: williamstevens@gmail.com [mailto:williamstevens@gmail. > com] > > > On > > > > > > > Behalf Of Will Stevens > > > > > > > Sent: 24 February 2017 16:30 > > > > > > > To: dev@cloudstack.apache.org > > > > > > > Subject: Re: Modern template hosting > > > > > > > > > > > > > > this is a hard questions. in general, we should be setting u= p > a > > > > mirror > > > > > > on > > > > > > > some cloudstack/apache domain and then mirror to other provid= ed > > > > > > templates. > > > > > > > > > > > > > > we MUST come up with a solution to deprecate ' > download.cloud.com > > ', > > > > > that > > > > > > > is going to be going away any day now. > > > > > > > > > > > > > > i don't know the right way to solve this to be honest, but if > you > > > > have > > > > > > > ideas, i am willing to help. > > > > > > > > > > > > > > > > > > > > > > > > > > > > *Will STEVENS* > > > > > > > Lead Developer > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Fri, Feb 24, 2017 at 11:25 AM, Nathan Johnson < > > njohnson@ena.com > > > > > > > > > > wrote: > > > > > > > > > > > > > > > So not to re-open a can of worms, but I=E2=80=99m in a situ= ation > where > > I > > > > need > > > > > > > > to come up with a Marvin component test that depends on a > > > template > > > > > > > > based on a kernel that=E2=80=99s relatively new, i.e., newe= r than > > Centos > > > > 5.3 > > > > > / > > > > > > > Ubuntu 10.04 . > > > > > > > > I see openvm.eu has a suitable template (Ubuntu 16.0.4 for > > KVM), > > > > but > > > > > > > > from looking at the thread "Migrating CloudStack content fr= om > > > > > > > > download.cloud.com=E2=80=9D it looks like there is resistan= ce to > using > > > > this > > > > > at > > > > > > > > least for hosting system vm templates over concerns of > > > neutrality. > > > > > > > > Would this be suitable for a component test? If not, what > is a > > > > > > =E2=80=9Cblessed=E2=80=9D > > > > > > > > template location? > > > > > > > > > > > > > > > > Thanks in advance! > > > > > > > > > > > > > > > > Nathan Johnson > > > > > > > > R&D Engineer > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 618 Grassmere Park Drive, Suite 12 > > > > > > > > Nashville, TN 37211 > > > > > > > > General Office: 615-312-6000 > > > > > > > > > > > > > > > > website | blog | support > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > DISCLAIMER > > > > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > > > > > This e-mail may contain privileged and confidential information > > which > > > > is > > > > > > the property of Accelerite, a Persistent Systems business. It i= s > > > > intended > > > > > > only for the use of the individual or entity to which it is > > > addressed. > > > > If > > > > > > you are not the intended recipient, you are not authorized to > read, > > > > > retain, > > > > > > copy, print, distribute or use this message. If you have receiv= ed > > > this > > > > > > communication in error, please notify the sender and delete all > > > copies > > > > of > > > > > > this message. Accelerite, a Persistent Systems business does no= t > > > accept > > > > > any > > > > > > liability for virus infected mails. > > > > > > > > > > > > > > > > > > > > > --001a113ed44c4225c405498934b5--