Hi Akila, On Sun, Sep 20, 2015 at 11:30 PM, Akila Ravihansa Perera <raviha...@wso2.com > wrote:
> Hi Gayan, > > +1 for properly identifying attributes to be used for labels and > annotations. As I mentioned earlier I tried to use them as labels but ran > into length limitation issues. > > memberId and clusterId cannot be used directly since they are generated as > follows; > > memberId = clusterId + UUID > clusterId = applicationId + "." + alias + "." + cartridgeType + ".domain" > > As you can see those can go be beyond 63 characters since we don't have a > limitation for applicationId length. I'm -1 on imposing a character > limitation to applicationId only to get away with Kubernetes restriction. > What if some other provider comes out with a different limitation? It > should be restricted but only for good reasons concerning to Stratos. > Right. Let's say we are not going to restrict the application id length. So in that case we won't be able to use the application id as a pod label. IMO we used application id to identify the application. As it is a identifier I think it is OK to have a restriction.I think using a description for the application id is not practical.Also in most of the use cases identifiers comes up with some length restrictions.If we don't have a restriction on application id , users can enter description sort of a application id. > > I had an offline chat with Imesh and we were discussing about implementing > a sequence number based approach for generating clusterId and memberId > without using UUIDs. Any thoughts? > I am also +1 for this thinking. So how we are going to generate the cluster id? I think we need to generate the meaningful ids. > > Thanks. > > > > Thanks, Gayan > > > On Sun, Sep 20, 2015 at 10:55 PM, Gayan Gunarathne <gay...@wso2.com> > wrote: > >> As per Kubernetes definition I think we are using labels and annotation >> in a wrong way.As annotations are arbitrary non-identifying metadata , they >> might not shown them in their UI/CLI >> >> I think first we need to recognize what are the identifiers for the >> pod.In think we may need to use member id , application id >> >> Also what is the ration behind of using the md5Hex of the member id as a >> identifier. IMO we can directly use the member id. As member id is UUID it >> won't be more than 63 characters. >> >> Thanks, >> Gayan >> >> On Sun, Sep 20, 2015 at 10:13 PM, Imesh Gunaratne <im...@apache.org> >> wrote: >> >>> Hi Akila, >>> >>> Right, I get your point on the length limitation, but this is how >>> Kubernetes has described Labels and Annotations: >>> >>> *We'll eventually index and reverse-index labels for efficient queries >>> and watches, use them to sort and group in UIs and CLIs, etc. We don't want >>> to pollute labels with non-identifying, especially large and/or structured, >>> data. Non-identifying information should be recorded using annotations.* >>> >>> The idea is to use labels for all identifiers. >>> >>> http://kubernetes.io/v1.0/docs/user-guide/labels.html >>> >>> On Sun, Sep 20, 2015 at 10:05 PM, Akila Ravihansa Perera < >>> raviha...@wso2.com> wrote: >>> >>>> Hi Imesh, >>>> >>>> Yes, I tried adding them as labels but ran into a problem since label >>>> length cannot be greater than 63 characters. I'm not sure why we don't see >>>> annotations in the UI for pods created. But I can see the annotations added >>>> for services. Might have to raise this in K8s mailing list. >>>> >>>> Thanks. >>>> >>>> On Sun, Sep 20, 2015 at 10:00 PM, Imesh Gunaratne <im...@apache.org> >>>> wrote: >>>> >>>>> Hi Akila, >>>>> >>>>> We do not query pod labels, its handled by the Kubernetes service >>>>> selector, at the moment this is called "name". I have now fixed this issue >>>>> locally, will push in few minutes. >>>>> >>>>> In addition I think it would be better to use labels instead of >>>>> annotations because they are not visible in the UI: >>>>> >>>>> >>>>> >>>>> Thanks >>>>> >>>>> On Sun, Sep 20, 2015 at 9:52 PM, Akila Ravihansa Perera < >>>>> raviha...@wso2.com> wrote: >>>>> >>>>>> Hi Imesh, >>>>>> >>>>>> Where do we query those pod labels? >>>>>> >>>>>> I'm in the process of moving label names to constants. I can apply >>>>>> the same in all the places. I think better to change that label to >>>>>> md5Hex-memberId to avoid any confusion when troubleshooting issues. One >>>>>> might mistakenly take that as the actual memberId when it is not the >>>>>> case. >>>>>> >>>>>> Thanks. >>>>>> >>>>>> On Sun, Sep 20, 2015 at 9:40 PM, Imesh Gunaratne <im...@apache.org> >>>>>> wrote: >>>>>> >>>>>>> I'm seeing a problem, we have removed the "name" label in the pod >>>>>>> and added a new label called "md5Hex-memberId". Due to this load >>>>>>> balancing >>>>>>> would not work: >>>>>>> >>>>>>> Map<String, String> podLabels = new HashMap<>(); >>>>>>> podLabels.put("md5Hex-memberId", >>>>>>> DigestUtils.md5Hex(memberContext.getMemberId())); >>>>>>> >>>>>>> Map<String, String> podAnnotations = new HashMap<>(); >>>>>>> podAnnotations.put("memberId", memberContext.getMemberId()); >>>>>>> podAnnotations.put("cartridgeType", memberContext.getCartridgeType()); >>>>>>> podAnnotations.put("applicationId", memberContext.getApplicationId()); >>>>>>> podAnnotations.put("clusterId", memberContext.getClusterId()); >>>>>>> podAnnotations.put("clusterInstanceId", >>>>>>> memberContext.getClusterInstanceId()); >>>>>>> >>>>>>> kubernetesApi.createPod(podId, podName, podLabels, podAnnotations, >>>>>>> dockerImage, cpu, memory, ports, >>>>>>> environmentVariables); >>>>>>> >>>>>>> >>>>>>> On Sun, Sep 20, 2015 at 2:51 PM, Akila Ravihansa Perera < >>>>>>> raviha...@wso2.com> wrote: >>>>>>> >>>>>>>> Hi all, >>>>>>>> >>>>>>>> I've pushed release artifacts to staging repo at [1]. Please take >>>>>>>> few mins to verify the release. Also I've pushed cartridge-base, php >>>>>>>> and >>>>>>>> tomcat Docker images with 4.1.3 artifacts to DockerHub. >>>>>>>> >>>>>>>> [1] >>>>>>>> https://repository.apache.org/content/repositories/orgapachestratos-1057/ >>>>>>>> >>>>>>>> Thanks. >>>>>>>> >>>>>>>> -- >>>>>>>> Akila Ravihansa Perera >>>>>>>> WSO2 Inc.; http://wso2.com/ >>>>>>>> >>>>>>>> Blog: http://ravihansa3000.blogspot.com >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Imesh Gunaratne >>>>>>> >>>>>>> Senior Technical Lead, WSO2 >>>>>>> Committer & PMC Member, Apache Stratos >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Akila Ravihansa Perera >>>>>> WSO2 Inc.; http://wso2.com/ >>>>>> >>>>>> Blog: http://ravihansa3000.blogspot.com >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Imesh Gunaratne >>>>> >>>>> Senior Technical Lead, WSO2 >>>>> Committer & PMC Member, Apache Stratos >>>>> >>>> >>>> >>>> >>>> -- >>>> Akila Ravihansa Perera >>>> WSO2 Inc.; http://wso2.com/ >>>> >>>> Blog: http://ravihansa3000.blogspot.com >>>> >>> >>> >>> >>> -- >>> Imesh Gunaratne >>> >>> Senior Technical Lead, WSO2 >>> Committer & PMC Member, Apache Stratos >>> >> >> >> >> -- >> >> Gayan Gunarathne >> Technical Lead, WSO2 Inc. (http://wso2.com) >> Committer & PMC Member, Apache Stratos >> email : gay...@wso2.com | mobile : +94 775030545 <%2B94%20766819985> >> >> >> > > > > -- > Akila Ravihansa Perera > WSO2 Inc.; http://wso2.com/ > > Blog: http://ravihansa3000.blogspot.com > -- Gayan Gunarathne Technical Lead, WSO2 Inc. (http://wso2.com) Committer & PMC Member, Apache Stratos email : gay...@wso2.com | mobile : +94 775030545 <%2B94%20766819985>