From 41d26827040b6ce18994099fae1f62dbb63e0ee2 Mon Sep 17 00:00:00 2001 From: Chenyang Gao Date: Tue, 13 Sep 2022 09:37:32 +0800 Subject: [PATCH 01/28] Fix mixed CN character in EN doc (#749) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Chenyang Gao There's a Chinese character '和' in this English document. Just removed it. --- docs/configurations/FATE_cluster_configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/configurations/FATE_cluster_configuration.md b/docs/configurations/FATE_cluster_configuration.md index 74aab32d2..504ec973f 100644 --- a/docs/configurations/FATE_cluster_configuration.md +++ b/docs/configurations/FATE_cluster_configuration.md @@ -43,7 +43,7 @@ | pulsar | mappings | Configuration of FATE cluster `pulsar` module. | | skippedKeys | sequences | you can customize some keys which will be ignored in yaml validation | -***Computing federation storage algorithm device configuration introduction reference [Introduction to Engine Architecture](../Introduction_to_Engine_Architecture.md) 和 [FATE Algorithm and Computational Acceleration Selection](../FATE_Algorithm_and_Computational_Acceleration_Selection.md)*** +***Computing federation storage algorithm device configuration introduction reference [Introduction to Engine Architecture](../Introduction_to_Engine_Architecture.md) and [FATE Algorithm and Computational Acceleration Selection](../FATE_Algorithm_and_Computational_Acceleration_Selection.md)*** ### list of modules From 5ded84737a2c68f89f4a8b664f7499aa2f2d2931 Mon Sep 17 00:00:00 2001 From: owlet42 Date: Wed, 14 Sep 2022 11:09:28 +0800 Subject: [PATCH 02/28] fix ipcl image select (#753) Signed-off-by: Chenlong Ma Signed-off-by: Chenlong Ma Co-authored-by: Chen Jing --- .../training_template/docker-compose-spark.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/docker-deploy/training_template/docker-compose-spark.yml b/docker-deploy/training_template/docker-compose-spark.yml index cef47153c..6b959a038 100644 --- a/docker-deploy/training_template/docker-compose-spark.yml +++ b/docker-deploy/training_template/docker-compose-spark.yml @@ -97,7 +97,7 @@ services: FATE_LOG_LEVEL: "INFO" namenode: - image: federatedai/hadoop-namenode:2.0.0-hadoop3.2.1-java8 + image: "federatedai/hadoop-namenode:2.0.0-hadoop3.2.1-java8" restart: always ports: - 9000:9000 @@ -114,7 +114,7 @@ services: - fate-network datanode-0: - image: federatedai/hadoop-datanode:2.0.0-hadoop3.2.1-java8 + image: "federatedai/hadoop-datanode:2.0.0-hadoop3.2.1-java8" restart: always volumes: - ./shared_dir/data/datanode-0:/hadoop/dfs/data @@ -126,7 +126,7 @@ services: - fate-network datanode-1: - image: federatedai/hadoop-datanode:2.0.0-hadoop3.2.1-java8 + image: "federatedai/hadoop-datanode:2.0.0-hadoop3.2.1-java8" restart: always volumes: - ./shared_dir/data/datanode-1:/hadoop/dfs/data @@ -138,7 +138,7 @@ services: - fate-network datanode-2: - image: federatedai/hadoop-datanode:2.0.0-hadoop3.2.1-java8 + image: "federatedai/hadoop-datanode:2.0.0-hadoop3.2.1-java8" restart: always volumes: - ./shared_dir/data/datanode:/hadoop/dfs/data @@ -152,7 +152,7 @@ services: - fate-network spark-master: - image: federatedai/spark-master:${TAG} + image: "federatedai/spark-master:${TAG}" restart: always ports: - "8888:8080" @@ -165,7 +165,7 @@ services: - fate-network spark-worker: - image: federatedai/spark-worker:${TAG} + image: "federatedai/spark-worker:${TAG}" restart: always depends_on: - spark-master @@ -180,7 +180,7 @@ services: - fate-network rabbitmq: - image: federatedai/rabbitmq:3.8.3-management + image: "federatedai/rabbitmq:3.8.3-management" ports: - "5672:5672" - "15672:15672" From 7ee24e08e2ae919089c9ca4baf4951a881cd8bb3 Mon Sep 17 00:00:00 2001 From: owlet42 Date: Wed, 14 Sep 2022 15:24:43 +0800 Subject: [PATCH 03/28] fix 'ERROR: Duplicate mount points' (#755) Signed-off-by: Chenlong Ma Signed-off-by: Chenlong Ma --- docker-deploy/training_template/docker-compose-spark.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docker-deploy/training_template/docker-compose-spark.yml b/docker-deploy/training_template/docker-compose-spark.yml index 6b959a038..a2cde18fc 100644 --- a/docker-deploy/training_template/docker-compose-spark.yml +++ b/docker-deploy/training_template/docker-compose-spark.yml @@ -117,6 +117,7 @@ services: image: "federatedai/hadoop-datanode:2.0.0-hadoop3.2.1-java8" restart: always volumes: + - /etc/localtime:/etc/localtime:ro - ./shared_dir/data/datanode-0:/hadoop/dfs/data environment: SERVICE_PRECONDITION: "namenode:9000" @@ -129,6 +130,7 @@ services: image: "federatedai/hadoop-datanode:2.0.0-hadoop3.2.1-java8" restart: always volumes: + - /etc/localtime:/etc/localtime:ro - ./shared_dir/data/datanode-1:/hadoop/dfs/data environment: SERVICE_PRECONDITION: "namenode:9000" @@ -141,7 +143,6 @@ services: image: "federatedai/hadoop-datanode:2.0.0-hadoop3.2.1-java8" restart: always volumes: - - ./shared_dir/data/datanode:/hadoop/dfs/data - /etc/localtime:/etc/localtime:ro - ./shared_dir/data/datanode-2:/hadoop/dfs/data environment: @@ -151,6 +152,7 @@ services: networks: - fate-network + spark-master: image: "federatedai/spark-master:${TAG}" restart: always From 9e5c55a24d245bccfd91c418a9050db46384b7c1 Mon Sep 17 00:00:00 2001 From: Chen Jing Date: Thu, 15 Sep 2022 11:43:21 +0800 Subject: [PATCH 04/28] Resolve the duplicated zooKeeper configuration issue (#756) * fix duplicate zookeeper issue Signed-off-by: Chen Jing * fix duplicate zookeeper issue Signed-off-by: Chen Jing * fix duplicate zookeeper issue Signed-off-by: Chen Jing * fix duplicate zookeeper issue Signed-off-by: Chen Jing * Optimize the doc of fate-serving verification Signed-off-by: Chen Jing Signed-off-by: Chen Jing --- docker-deploy/README.md | 243 ------------------ docker-deploy/README_zh.md | 243 ------------------ .../templates/core/fateflow/configmap.yaml | 15 +- helm-charts/FATE/values-template-example.yaml | 66 ++--- helm-charts/FATE/values.yaml | 6 +- 5 files changed, 46 insertions(+), 527 deletions(-) diff --git a/docker-deploy/README.md b/docker-deploy/README.md index c27f8ef75..bbc0a02ef 100644 --- a/docker-deploy/README.md +++ b/docker-deploy/README.md @@ -207,21 +207,6 @@ If the test passed, the output may look like the following: docker exec -it confs-10000_client_1 bash ``` -##### Modifying examples/upload_host.json - -```bash -cat > fateflow/examples/upload/upload_host.json < fateflow/examples/upload/upload_guest.json < fateflow/examples/lr/test_hetero_lr_job_conf.json < fateflow/examples/lr/test_hetero_lr_job_dsl.json < fateflow/examples/upload/upload_host.json < fateflow/examples/upload/upload_guest.json < fateflow/examples/lr/test_hetero_lr_job_conf.json < fateflow/examples/lr/test_hetero_lr_job_dsl.json < Date: Mon, 19 Sep 2022 10:19:10 +0800 Subject: [PATCH 05/28] add more pulsar config for external pulsar (#760) Signed-off-by: stone-wlg Signed-off-by: stone-wlg Co-authored-by: Chen Jing --- helm-charts/FATE/templates/core/fateflow/configmap.yaml | 4 +++- helm-charts/FATE/values-template-example.yaml | 3 +++ helm-charts/FATE/values-template.yaml | 3 +++ helm-charts/FATE/values.yaml | 5 ++++- 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/helm-charts/FATE/templates/core/fateflow/configmap.yaml b/helm-charts/FATE/templates/core/fateflow/configmap.yaml index dae098d1d..462aa4ea9 100644 --- a/helm-charts/FATE/templates/core/fateflow/configmap.yaml +++ b/helm-charts/FATE/templates/core/fateflow/configmap.yaml @@ -159,7 +159,9 @@ data: host: {{ .Values.modules.python.pulsar.host }} port: {{ .Values.modules.python.pulsar.port }} mng_port: {{ .Values.modules.python.pulsar.mng_port }} - topic_ttl: 3 + topic_ttl: {{ .Values.modules.python.pulsar.topic_ttl }} + cluster: {{ .Values.modules.python.pulsar.cluster }} + tenant: {{ .Values.modules.python.pulsar.tenant }} # default conf/pulsar_route_table.yaml route_table: conf/pulsar_route_table/pulsar_route_table.yaml # mode: replication / client, default: replication diff --git a/helm-charts/FATE/values-template-example.yaml b/helm-charts/FATE/values-template-example.yaml index 8f80b1131..c52a96686 100644 --- a/helm-charts/FATE/values-template-example.yaml +++ b/helm-charts/FATE/values-template-example.yaml @@ -202,6 +202,9 @@ skippedKeys: # host: pulsar # mng_port: 8080 # port: 6650 + # topic_ttl: 3 + # cluster: standalone + # tenant: fl-tenant # nginx: # host: nginx # http_port: 9300 diff --git a/helm-charts/FATE/values-template.yaml b/helm-charts/FATE/values-template.yaml index cdd68942e..56e5d1958 100644 --- a/helm-charts/FATE/values-template.yaml +++ b/helm-charts/FATE/values-template.yaml @@ -264,6 +264,9 @@ modules: host: {{ .host }} mng_port: {{ .mng_port }} port: {{ .port }} + topic_ttl: {{ .topic_ttl }} + cluster: {{ .cluster }} + tenant: {{ .tenant }} {{- end }} {{- with .rabbitmq }} rabbitmq: diff --git a/helm-charts/FATE/values.yaml b/helm-charts/FATE/values.yaml index a0c759caa..c536e3a1c 100644 --- a/helm-charts/FATE/values.yaml +++ b/helm-charts/FATE/values.yaml @@ -159,8 +159,11 @@ modules: password: fate pulsar: host: pulsar - mng_port: 8080 port: 6650 + mng_port: 8080 + topic_ttl: 3 + cluster: standalone + tenant: fl-tenant nginx: host: nginx http_port: 9300 From 88bc21e66188166740e3257997188da64240fb44 Mon Sep 17 00:00:00 2001 From: Chen Jing Date: Wed, 21 Sep 2022 11:47:47 +0800 Subject: [PATCH 06/28] Support sts info in kubefate cluster describe (#762) Signed-off-by: Chen Jing Signed-off-by: Chen Jing --- k8s-deploy/pkg/job/cluster_install.go | 12 +- k8s-deploy/pkg/job/job.go | 73 +++----- k8s-deploy/pkg/modules/cluster_kube.go | 48 ----- k8s-deploy/pkg/service/info.go | 22 +-- k8s-deploy/pkg/service/kube.go | 1 + k8s-deploy/pkg/service/kube/deployment.go | 2 +- k8s-deploy/pkg/service/kube/sts.go | 41 +++++ k8s-deploy/pkg/service/kube_deploy.go | 47 ----- k8s-deploy/pkg/service/kube_deploy_test.go | 193 --------------------- k8s-deploy/pkg/service/kube_sts.go | 61 +++++++ 10 files changed, 147 insertions(+), 353 deletions(-) delete mode 100644 k8s-deploy/pkg/modules/cluster_kube.go create mode 100644 k8s-deploy/pkg/service/kube/sts.go delete mode 100644 k8s-deploy/pkg/service/kube_deploy_test.go create mode 100644 k8s-deploy/pkg/service/kube_sts.go diff --git a/k8s-deploy/pkg/job/cluster_install.go b/k8s-deploy/pkg/job/cluster_install.go index 50f4bd5a8..63d2c5e15 100644 --- a/k8s-deploy/pkg/job/cluster_install.go +++ b/k8s-deploy/pkg/job/cluster_install.go @@ -321,17 +321,19 @@ func updateLastJobEvent(job *modules.Job, Event string) { log.Error().Err(dbErr).Msg("job.SetStatus error") } } + +// checkStatus returns a bool to indicate if the job is finished successfully func checkStatus(job *modules.Job, cluster *modules.Cluster) bool { // update subJobs - ClusterStatus, err := service.GetClusterDeployStatus(cluster.Name, cluster.NameSpace) + clusterComponentStatus, err := getClusterComponentsStatus(cluster.Name, cluster.NameSpace) if err != nil { - log.Error().Err(err).Msg("GetClusterDeployStatus error") + log.Error().Err(err).Msg("getClusterComponentsStatus error") return false } - log.Debug().Interface("ClusterStatus", ClusterStatus).Msg("GetClusterDeployStatus()") - subJobs := generateSubJobs(job, ClusterStatus) + log.Debug().Interface("ClusterStatus", clusterComponentStatus).Msg("the cluster component status") + subJobs := generateSubJobs(job, clusterComponentStatus) dbErr := job.SetSubJobs(subJobs) if dbErr != nil { @@ -339,7 +341,7 @@ func checkStatus(job *modules.Job, cluster *modules.Cluster) bool { return false } - if service.CheckClusterStatus(ClusterStatus) { + if service.CheckClusterStatus(clusterComponentStatus) { dbErr := job.SetStatus(modules.JobStatusSuccess) if dbErr != nil { log.Error().Err(dbErr).Msg("job setStatus error") diff --git a/k8s-deploy/pkg/job/job.go b/k8s-deploy/pkg/job/job.go index 2c07596c8..da195ef61 100644 --- a/k8s-deploy/pkg/job/job.go +++ b/k8s-deploy/pkg/job/job.go @@ -41,57 +41,32 @@ func stopJob(job *modules.Job, cluster *modules.Cluster) bool { return false } -func generateSubJobs_b(job *modules.Job, ClusterStatus map[string]string) modules.SubJobs { - - subJobs := make(modules.SubJobs) - if job.SubJobs != nil { - subJobs = job.SubJobs +func getClusterComponentsStatus(clusterName, clusterNamespace string) (map[string]string, error) { + deploymentStatus, err := service.GetClusterDeployStatus(clusterName, clusterNamespace) + if err != nil { + log.Error().Err(err).Msg("GetClusterDeployStatus error") + return deploymentStatus, err } - - for k, v := range ClusterStatus { - var subJobStatus string - if v == "Running" { - subJobStatus = "Success" - } else if v == "Failed" || v == "Unknown" || v == "Pending" { - subJobStatus = v - } else { - subJobStatus = "Running" - } - - var subJob modules.SubJob - if _, ok := subJobs[k]; !ok { - subJob = modules.SubJob{ - ModuleName: k, - Status: subJobStatus, - ModulesStatus: v, - StartTime: job.StartTime, - } - } else { - subJob = subJobs[k] - subJob.Status = subJobStatus - subJob.ModulesStatus = v - } - - if subJobStatus == "Success" && subJob.EndTime.IsZero() { - subJob.EndTime = time.Now() - } - - subJobs[k] = subJob - log.Debug().Interface("subJob", subJob).Msg("generate SubJobs") + stsStatus, err := service.GetClusterStsStatus(clusterName, clusterNamespace) + if err != nil { + log.Error().Err(err).Msg("GetClusterStsStatus error") + return deploymentStatus, err } - - job.SubJobs = subJobs - return subJobs + for k, v := range stsStatus { + deploymentStatus[k] = v + } + return deploymentStatus, nil } -func generateSubJobs(job *modules.Job, ClusterDeployStatus map[string]string) modules.SubJobs { +func generateSubJobs(job *modules.Job, clusterComponentStatus map[string]string) modules.SubJobs { subJobs := make(modules.SubJobs) if job.SubJobs != nil { subJobs = job.SubJobs } - for k, v := range ClusterDeployStatus { + // The cluster component status includes deployments and statefulSets + for k, v := range clusterComponentStatus { var subJobStatus string = "Running" if service.CheckStatus(v) { subJobStatus = "Success" @@ -281,19 +256,19 @@ func ClusterUpdate(clusterArgs *modules.ClusterArgs, creator string) (*modules.J } // update subJobs - ClusterStatus, err := service.GetClusterDeployStatus(clusterArgs.Name, clusterArgs.Namespace) + clusterComponentStatus, err := getClusterComponentsStatus(clusterArgs.Name, clusterArgs.Namespace) if err != nil { log.Error().Err(err).Msg("GetClusterDeployStatus error") } - subJobs := generateSubJobs(job, ClusterStatus) + subJobs := generateSubJobs(job, clusterComponentStatus) dbErr = job.SetSubJobs(subJobs) if dbErr != nil { log.Error().Err(dbErr).Msg("job.SetSubJobs error") } - if service.CheckClusterStatus(ClusterStatus) { + if service.CheckClusterStatus(clusterComponentStatus) { dbErr := job.SetStatus(modules.JobStatusSuccess) if dbErr != nil { log.Error().Err(dbErr).Msg("job.SetStatus error") @@ -380,21 +355,21 @@ func ClusterUpdate(clusterArgs *modules.ClusterArgs, creator string) (*modules.J } // update subJobs - ClusterStatus, err := service.GetClusterDeployStatus(clusterArgs.Name, clusterArgs.Namespace) + clusterComponentStatus, err := getClusterComponentsStatus(clusterArgs.Name, clusterArgs.Namespace) if err != nil { - log.Error().Err(err).Msg("GetClusterDeployStatus error") + log.Error().Err(err).Msg("clusterComponentStatus error") } - log.Debug().Interface("ClusterStatus", ClusterStatus).Msg("GetClusterDeployStatus()") + log.Debug().Interface("clusterComponentStatus", clusterComponentStatus).Msg("clusterComponentStatus()") - subJobs := generateSubJobs(job, ClusterStatus) + subJobs := generateSubJobs(job, clusterComponentStatus) dbErr = job.SetSubJobs(subJobs) if dbErr != nil { log.Error().Err(dbErr).Msg("job.SetSubJobs error") } - if service.CheckClusterStatus(ClusterStatus) { + if service.CheckClusterStatus(clusterComponentStatus) { dbErr := job.SetStatus(modules.JobStatusSuccess) if dbErr != nil { log.Error().Err(dbErr).Msg("job.SetStatus error") diff --git a/k8s-deploy/pkg/modules/cluster_kube.go b/k8s-deploy/pkg/modules/cluster_kube.go deleted file mode 100644 index 41d63115c..000000000 --- a/k8s-deploy/pkg/modules/cluster_kube.go +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright 2019-2021 VMware, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * http://www.apache.org/licenses/LICENSE-2.0 - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -package modules - -import ( - "github.com/FederatedAI/KubeFATE/k8s-deploy/pkg/service" - "github.com/rs/zerolog/log" -) - -func (e *Cluster) GetClusterStatus() (map[string]map[string]string, error) { - - ClusterPodStatus, err := service.GetClusterPodStatus(e.Name, e.NameSpace) - if err != nil { - log.Error().Err(err).Msg("GetClusterPodStatus error") - return nil, err - } - - //ClusterServiceStatus, err := service.GetClusterServiceStatus(e.Name, e.NameSpace) - //if err != nil { - // log.Error().Err(err).Msg("GetClusterServiceStatus error") - // return nil, err - //} - // - //ClusterIngressStatus, err := service.GetClusterIngressStatus(e.Name, e.NameSpace) - //if err != nil { - // log.Error().Err(err).Msg("ClusterIngressStatus error") - // return nil, err - //} - - return map[string]map[string]string{ - "modules": ClusterPodStatus, - //"service": ClusterServiceStatus, - //"ingress": ClusterIngressStatus, - }, nil -} diff --git a/k8s-deploy/pkg/service/info.go b/k8s-deploy/pkg/service/info.go index 83d6f7b81..63936a005 100644 --- a/k8s-deploy/pkg/service/info.go +++ b/k8s-deploy/pkg/service/info.go @@ -1,5 +1,5 @@ /* - * Copyright 2019-2021 VMware, Inc. + * Copyright 2019-2022 VMware, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,22 +30,29 @@ func GetClusterInfo(name, namespace string) (map[string]interface{}, error) { return nil, err } - containerList, err := GetPodContainersStatus(name, getDefaultNamespace(namespace)) + containerStatus, err := GetPodContainersStatus(name, getDefaultNamespace(namespace)) if err != nil { log.Error().Str("func", "GetPodContainersStatus()").Err(err).Msg("GetPodContainersStatus error") return nil, err } - deploymentList, err := GetClusterDeployStatus(name, getDefaultNamespace(namespace)) + deploymentStatus, err := GetClusterDeployStatus(name, getDefaultNamespace(namespace)) if err != nil { log.Error().Str("func", "GetClusterDeployStatus()").Err(err).Msg("GetClusterDeployStatus error") return nil, err } + stsStatus, err := GetClusterStsStatus(name, getDefaultNamespace(namespace)) + if err != nil { + log.Error().Str("func", "GetClusterStsStatus()").Err(err).Msg("GetClusterStsStatus error") + return nil, err + } + status := make(map[string]interface{}) - status["containers"] = containerList - status["deployments"] = deploymentList + status["containers"] = containerStatus + status["deployments"] = deploymentStatus + status["statefulSets"] = stsStatus ingressURLList, err := GetIngressURLList(name, getDefaultNamespace(namespace)) if err != nil { @@ -71,11 +78,6 @@ func GetClusterInfo(name, namespace string) (map[string]interface{}, error) { return info, nil } -//GetClusterStatus GetClusterStatus -func GetClusterStatus(name, namespace string) (map[string]string, error) { - return GetClusterDeployStatus(name, namespace) -} - // CheckClusterStatus CheckClusterStatus func CheckClusterStatus(ClusterStatus map[string]string) bool { if len(ClusterStatus) == 0 { diff --git a/k8s-deploy/pkg/service/kube.go b/k8s-deploy/pkg/service/kube.go index 3d66dac78..10335228d 100644 --- a/k8s-deploy/pkg/service/kube.go +++ b/k8s-deploy/pkg/service/kube.go @@ -35,6 +35,7 @@ type kubeClient interface { kube.Log kube.Deployment kube.Job + kube.Sts } var KubeClient kubeClient = &kube.KUBE diff --git a/k8s-deploy/pkg/service/kube/deployment.go b/k8s-deploy/pkg/service/kube/deployment.go index 89984408d..c0e31e39c 100644 --- a/k8s-deploy/pkg/service/kube/deployment.go +++ b/k8s-deploy/pkg/service/kube/deployment.go @@ -1,5 +1,5 @@ /* - * Copyright 2019-2021 VMware, Inc. + * Copyright 2019-2022 VMware, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/k8s-deploy/pkg/service/kube/sts.go b/k8s-deploy/pkg/service/kube/sts.go new file mode 100644 index 000000000..e38bfa748 --- /dev/null +++ b/k8s-deploy/pkg/service/kube/sts.go @@ -0,0 +1,41 @@ +/* + * Copyright 2019-2022 VMware, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +package kube + +import ( + "context" + + v1 "k8s.io/api/apps/v1" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" +) + +// Sts StatefulSet +type Sts interface { + GetSts(namespace, stsName string) (*v1.StatefulSet, error) + GetStsList(namespace, LabelSelector string) (*v1.StatefulSetList, error) +} + +// GetSts gets a StatefulSet +func (e *Kube) GetSts(namespace, stsName string) (*v1.StatefulSet, error) { + sts, err := e.client.AppsV1().StatefulSets(namespace).Get(context.Background(), stsName, metav1.GetOptions{}) + return sts, err +} + +// GetStsList gets a StatefulSet lis +func (e *Kube) GetStsList(namespace, LabelSelector string) (*v1.StatefulSetList, error) { + stsList, err := e.client.AppsV1().StatefulSets(namespace).List(context.Background(), metav1.ListOptions{LabelSelector: LabelSelector}) + return stsList, err +} diff --git a/k8s-deploy/pkg/service/kube_deploy.go b/k8s-deploy/pkg/service/kube_deploy.go index 321836fc1..f435dcbdc 100644 --- a/k8s-deploy/pkg/service/kube_deploy.go +++ b/k8s-deploy/pkg/service/kube_deploy.go @@ -34,43 +34,6 @@ func GetDeployList(clusterName, namespace string) (*v1.DeploymentList, error) { return list, nil } -// GetDeploy GetDeploy -func GetDeploy(deploymentName, namespace string) (*v1.Deployment, error) { - - deploy, err := KubeClient.GetDeployment(namespace, deploymentName) - if err != nil { - return nil, err - } - - return deploy, nil -} - -// CheckDeploy CheckDeploy -func CheckDeploy(deploy *v1.Deployment) bool { - if deploy == nil { - return false - } - for _, v := range deploy.Status.Conditions { - if v.Type == v1.DeploymentAvailable && v.Status == corev1.ConditionTrue { - return true - } - } - return false -} - -// CheckDeploys CheckDeploys -func CheckDeploys(deploys *v1.DeploymentList) bool { - if deploys == nil || len(deploys.Items) == 0 { - return false - } - for _, v := range deploys.Items { - if !CheckDeploy(&v) { - return false - } - } - return true -} - // GetDeployStatus GetDeployStatus func GetDeployStatus(deploy *v1.Deployment) (string, string) { @@ -92,16 +55,6 @@ func GetDeployStatus(deploy *v1.Deployment) (string, string) { return "Undefined", fmt.Sprintf("please use kubectl cli check deploy status of %s", deploy.Name) } -//GetDeploymentStatus GetDeploymentStatus -func GetDeploymentStatusInfo(deploys *v1.DeploymentList) (map[string]string, error) { - status := make(map[string]string) - for _, v := range deploys.Items { - Type, message := GetDeployStatus(&v) - status[v.Name] = fmt.Sprintf("%s, %s", Type, message) - } - return status, nil -} - func GetDeploymentStatus(deploys *v1.DeploymentList) (map[string]string, error) { status := make(map[string]string) for _, v := range deploys.Items { diff --git a/k8s-deploy/pkg/service/kube_deploy_test.go b/k8s-deploy/pkg/service/kube_deploy_test.go deleted file mode 100644 index 148006d30..000000000 --- a/k8s-deploy/pkg/service/kube_deploy_test.go +++ /dev/null @@ -1,193 +0,0 @@ -/* - * Copyright 2019-2021 VMware, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * http://www.apache.org/licenses/LICENSE-2.0 - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -package service - -import ( - "testing" - - v1 "k8s.io/api/apps/v1" - corev1 "k8s.io/api/core/v1" -) - -func TestCheckDeploy(t *testing.T) { - type args struct { - deploy *v1.Deployment - } - tests := []struct { - name string - args args - want bool - }{ - { - name: "True", - args: args{ - deploy: &v1.Deployment{ - Status: v1.DeploymentStatus{ - Conditions: []v1.DeploymentCondition{ - { - Type: v1.DeploymentAvailable, - Status: corev1.ConditionTrue, - }, - }, - }, - }, - }, - want: true, - }, - { - name: "nil", - args: args{ - deploy: &v1.Deployment{}, - }, - want: false, - }, - { - name: "Zero", - args: args{ - deploy: &v1.Deployment{}, - }, - want: false, - }, - } - for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - if got := CheckDeploy(tt.args.deploy); got != tt.want { - t.Errorf("CheckDeploy() = %v, want %v", got, tt.want) - } - }) - } -} - -func TestCheckDeploys(t *testing.T) { - type args struct { - deploys *v1.DeploymentList - } - tests := []struct { - name string - args args - want bool - }{ - { - name: "nil", - args: args{}, - want: false, - }, - { - name: "count-0", - args: args{ - deploys: &v1.DeploymentList{}, - }, - want: false, - }, - { - name: "one-false", - args: args{ - deploys: &v1.DeploymentList{ - Items: []v1.Deployment{ - { - Status: v1.DeploymentStatus{ - Conditions: []v1.DeploymentCondition{ - { - Type: v1.DeploymentAvailable, - Status: corev1.ConditionTrue, - }, - }, - }, - }, - { - Status: v1.DeploymentStatus{ - Conditions: []v1.DeploymentCondition{ - { - Type: v1.DeploymentAvailable, - Status: corev1.ConditionFalse, - }, - }, - }, - }, - }, - }, - }, - want: false, - }, - { - name: "one-not-Available", - args: args{ - deploys: &v1.DeploymentList{ - Items: []v1.Deployment{ - { - Status: v1.DeploymentStatus{ - Conditions: []v1.DeploymentCondition{ - { - Type: v1.DeploymentAvailable, - Status: corev1.ConditionTrue, - }, - }, - }, - }, - { - Status: v1.DeploymentStatus{ - Conditions: []v1.DeploymentCondition{ - { - Type: v1.DeploymentProgressing, - Status: corev1.ConditionTrue, - }, - }, - }, - }, - }, - }, - }, - want: false, - }, - { - name: "all-Available", - args: args{ - deploys: &v1.DeploymentList{ - Items: []v1.Deployment{ - { - Status: v1.DeploymentStatus{ - Conditions: []v1.DeploymentCondition{ - { - Type: v1.DeploymentAvailable, - Status: corev1.ConditionTrue, - }, - }, - }, - }, - { - Status: v1.DeploymentStatus{ - Conditions: []v1.DeploymentCondition{ - { - Type: v1.DeploymentAvailable, - Status: corev1.ConditionTrue, - }, - }, - }, - }, - }, - }, - }, - want: true, - }, - } - for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - if got := CheckDeploys(tt.args.deploys); got != tt.want { - t.Errorf("CheckDeploys() = %v, want %v", got, tt.want) - } - }) - } -} diff --git a/k8s-deploy/pkg/service/kube_sts.go b/k8s-deploy/pkg/service/kube_sts.go new file mode 100644 index 000000000..caeb2cb47 --- /dev/null +++ b/k8s-deploy/pkg/service/kube_sts.go @@ -0,0 +1,61 @@ +/* + * Copyright 2019-2021 VMware, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +package service + +import ( + "fmt" + + v1 "k8s.io/api/apps/v1" +) + +// GetStsList gets the statefulSets list under the namespace +func GetStsList(clusterName, namespace string) (*v1.StatefulSetList, error) { + + list, err := KubeClient.GetStsList(namespace, getLabelSelector(namespace, clusterName)) + if err != nil { + return nil, err + } + + return list, nil +} + +// GetStsStatus gets the status if a certain statefulSet +func GetStsStatus(sts *v1.StatefulSet) (string, string) { + if sts.Status.ReadyReplicas >= sts.Status.Replicas { + return "Available", "all the replicas are in the ready state" + } else { + return "Progressing", "Detailed status need to be checked by kubectl CLI" + } +} + +// GetStssStatus gets the status of a list of statefulSets +func GetStssStatus(stss *v1.StatefulSetList) (map[string]string, error) { + status := make(map[string]string) + for _, v := range stss.Items { + Type, _ := GetStsStatus(&v) + status[v.Name] = fmt.Sprintf("%s", Type) + } + return status, nil +} + +// GetClusterStsStatus gets all the statefulSet related information with the cluster name and namespace +func GetClusterStsStatus(name, namespace string) (map[string]string, error) { + stsList, err := GetStsList(name, namespace) + if err != nil { + return nil, err + } + return GetStssStatus(stsList) +} From d53337416a395e387b660fa155bdb38f54a9ffba Mon Sep 17 00:00:00 2001 From: Chen Jing Date: Thu, 22 Sep 2022 10:00:45 +0800 Subject: [PATCH 07/28] Fix the bug that cannot update fate exchange (#764) * Fix the bug that cannot update fate exchange Signed-off-by: Chen Jing * add a log Signed-off-by: Chen Jing * address comments Signed-off-by: Chen Jing Signed-off-by: Chen Jing --- .../FATE-Exchange/values-template-example.yaml | 1 + k8s-deploy/pkg/job/job.go | 8 +++++--- k8s-deploy/pkg/job/upgrade_manager.go | 18 ++++++++++++++++++ 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/helm-charts/FATE-Exchange/values-template-example.yaml b/helm-charts/FATE-Exchange/values-template-example.yaml index 5d6494c43..d3bbc51ef 100644 --- a/helm-charts/FATE-Exchange/values-template-example.yaml +++ b/helm-charts/FATE-Exchange/values-template-example.yaml @@ -4,6 +4,7 @@ chartName: fate-exchange chartVersion: v1.9.0 partyId: 1 registry: "" +pullPolicy: imagePullSecrets: - name: myregistrykey persistence: false diff --git a/k8s-deploy/pkg/job/job.go b/k8s-deploy/pkg/job/job.go index da195ef61..bc329f364 100644 --- a/k8s-deploy/pkg/job/job.go +++ b/k8s-deploy/pkg/job/job.go @@ -129,6 +129,9 @@ func ClusterUpdate(clusterArgs *modules.ClusterArgs, creator string) (*modules.J um = &FateUpgradeManager{ namespace: clusterArgs.Namespace, } + default: + um = &FallbackUpgradeManager{} + log.Info().Msgf("no upgrade manager is available for %s", cluster.Name) } err = um.validate(specOld, specNew) if err != nil { @@ -157,9 +160,8 @@ func ClusterUpdate(clusterArgs *modules.ClusterArgs, creator string) (*modules.J if dbErr != nil { log.Error().Err(dbErr).Msg("Cluster.SetStatus error") } - - if specOld["chartVersion"].(string) != specNew["chartVersion"].(string) { - umCluster := um.getCluster(specOld, specNew) + umCluster := um.getCluster(specOld, specNew) + if umCluster.Name != "fallbackUM" && specOld["chartVersion"].(string) != specNew["chartVersion"].(string) { // We will implicitly install a new cluster for the upgrade manager, and delete it after it finishes its job err := umCluster.HelmInstall() if err != nil { diff --git a/k8s-deploy/pkg/job/upgrade_manager.go b/k8s-deploy/pkg/job/upgrade_manager.go index 9611b39da..fbd75b58b 100644 --- a/k8s-deploy/pkg/job/upgrade_manager.go +++ b/k8s-deploy/pkg/job/upgrade_manager.go @@ -22,3 +22,21 @@ type UpgradeManager interface { getCluster(specOld, specNew modules.MapStringInterface) modules.Cluster waitFinish(interval, round int) bool } + +type FallbackUpgradeManager struct { + UpgradeManager +} + +func (um *FallbackUpgradeManager) validate(specold, specNew modules.MapStringInterface) error { + return nil +} + +func (um *FallbackUpgradeManager) getCluster(specold, specNew modules.MapStringInterface) modules.Cluster { + return modules.Cluster{ + Name: "fallbackUM", + } +} + +func (um *FallbackUpgradeManager) waitFinish(interval, round int) bool { + return true +} From 3710c8944b8ec8c487e58a1f5fc63231e942fbd0 Mon Sep 17 00:00:00 2001 From: Chen Jing Date: Wed, 28 Sep 2022 09:50:17 +0800 Subject: [PATCH 08/28] [issue-747] Support fate flow ha (#767) * support fateflow ha Signed-off-by: Chen Jing * imporve the pr template Signed-off-by: Chen Jing * enable model store Signed-off-by: Chen Jing Signed-off-by: Chen Jing --- PULL_REQUEST_TEMPLATE.md | 1 + .../FATE/templates/core/fateboard.yaml | 106 ++++++++++++++++ .../templates/core/fateboard/configmap.yaml | 5 + .../templates/core/fateboard/service.yaml | 4 +- .../templates/core/fateflow/configmap.yaml | 18 ++- .../FATE/templates/core/fateflow/service.yaml | 25 ---- .../FATE/templates/core/python-spark.yaml | 56 +-------- helm-charts/FATE/values-template-example.yaml | 119 +++++++++--------- helm-charts/FATE/values-template.yaml | 15 +++ helm-charts/FATE/values.yaml | 19 +-- k8s-deploy/cluster-spark-pulsar.yaml | 1 - k8s-deploy/cluster.yaml | 1 - 12 files changed, 213 insertions(+), 157 deletions(-) create mode 100644 helm-charts/FATE/templates/core/fateboard.yaml diff --git a/PULL_REQUEST_TEMPLATE.md b/PULL_REQUEST_TEMPLATE.md index 4f3872671..53f378d8c 100644 --- a/PULL_REQUEST_TEMPLATE.md +++ b/PULL_REQUEST_TEMPLATE.md @@ -3,6 +3,7 @@ Fixes ISSUE #xxx ## Description 1. Tell the story why you need to make this change from the user's perspective. 2. What will be the pain point if you don't make this change? +3. In summary, what did you change reach your goal? ## Tests ### Before fix diff --git a/helm-charts/FATE/templates/core/fateboard.yaml b/helm-charts/FATE/templates/core/fateboard.yaml new file mode 100644 index 000000000..7c16c9e65 --- /dev/null +++ b/helm-charts/FATE/templates/core/fateboard.yaml @@ -0,0 +1,106 @@ +# Copyright 2019-2022 VMware, Inc. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# http://www.apache.org/licenses/LICENSE-2.0 +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +{{- if .Values.modules.fateboard.include }} +apiVersion: apps/v1 +kind: Deployment +metadata: + name: fateboard + labels: + fateMoudle: fateboard +{{ include "fate.labels" . | indent 4 }} +spec: + replicas: 1 + strategy: + type: Recreate + selector: + matchLabels: + fateMoudle: fateboard +{{ include "fate.matchLabels" . | indent 6 }} + template: + metadata: + annotations: + {{- if .Values.istio.enabled }} + sidecar.istio.io/rewriteAppHTTPProbers: "false" + {{- end }} + labels: + fateMoudle: fateboard +{{ include "fate.labels" . | indent 8 }} + spec: + containers: + {{- if .Values.modules.fateboard.include }} + - image: {{ .Values.image.registry }}/fateboard:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: fateboard + ports: + - containerPort: 8080 + livenessProbe: + httpGet: + path: / + port: 8080 + httpHeaders: + - name: X-Custom-Header + value: livenessProbe + initialDelaySeconds: 1 + periodSeconds: 10 + timeoutSeconds: 3 + successThreshold: 1 + failureThreshold: 3 + readinessProbe: + httpGet: + path: / + port: 8080 + httpHeaders: + - name: X-Custom-Header + value: readinessProbe + initialDelaySeconds: 1 + periodSeconds: 10 + timeoutSeconds: 3 + successThreshold: 1 + failureThreshold: 3 + startupProbe: + httpGet: + path: / + port: 8080 + httpHeaders: + - name: X-Custom-Header + value: startupProbe + failureThreshold: 12 + periodSeconds: 10 + volumeMounts: + - mountPath: /data/projects/fate/fateboard/conf/application.properties + name: fateboard-confs + subPath: application.properties + {{- end }} + {{- with .Values.modules.fateboard.nodeSelector }} + nodeSelector: +{{ toYaml . | indent 8 }} + {{- end }} + {{- with .Values.modules.fateboard.tolerations }} + tolerations: +{{ toYaml . | indent 8 }} + {{- end }} + {{- with .Values.modules.fateboard.affinity }} + affinity: +{{ toYaml . | indent 8 }} + {{- end }} + {{- with .Values.image.imagePullSecrets }} + imagePullSecrets: +{{ toYaml . | indent 6 }} + {{- end }} + restartPolicy: Always + volumes: + {{- if .Values.modules.fateboard.include }} + - name: fateboard-confs + configMap: + name: fateboard-config + {{- end }} +{{- end }} diff --git a/helm-charts/FATE/templates/core/fateboard/configmap.yaml b/helm-charts/FATE/templates/core/fateboard/configmap.yaml index 29ec7bc01..b26dbf787 100644 --- a/helm-charts/FATE/templates/core/fateboard/configmap.yaml +++ b/helm-charts/FATE/templates/core/fateboard/configmap.yaml @@ -24,6 +24,11 @@ data: #priority is higher than {fateflow.url}, split by ; #below config can support configuring more than one fate flow for this fate board fateflow.url-list= + {{- $replicaCount := .Values.modules.python.replicas | int -}} + {{- range $index0 := until $replicaCount }} + {{- $index1 := $index0 | add1 -}} + http://python-{{ $index0 }}.fateflow:9380{{ if ne $index1 $replicaCount }};{{ end }} + {{- end }} fateflow.http_app_key= fateflow.http_secret_key= spring.http.encoding.charset=UTF-8 diff --git a/helm-charts/FATE/templates/core/fateboard/service.yaml b/helm-charts/FATE/templates/core/fateboard/service.yaml index 5059f5bc0..0920ff8d0 100644 --- a/helm-charts/FATE/templates/core/fateboard/service.yaml +++ b/helm-charts/FATE/templates/core/fateboard/service.yaml @@ -15,7 +15,7 @@ kind: Service metadata: name: fateboard labels: - fateMoudle: python + fateMoudle: fateboard {{ include "fate.labels" . | indent 4 }} spec: ports: @@ -25,6 +25,6 @@ spec: protocol: TCP type: {{ .Values.modules.fateboard.type }} selector: - fateMoudle: python + fateMoudle: fateboard {{ include "fate.matchLabels" . | indent 4 }} {{- end }} \ No newline at end of file diff --git a/helm-charts/FATE/templates/core/fateflow/configmap.yaml b/helm-charts/FATE/templates/core/fateflow/configmap.yaml index 462aa4ea9..c3b26e513 100644 --- a/helm-charts/FATE/templates/core/fateflow/configmap.yaml +++ b/helm-charts/FATE/templates/core/fateflow/configmap.yaml @@ -67,9 +67,19 @@ data: dataset: false fateflow: # you must set real ip address, 127.0.0.1 and 0.0.0.0 is not supported - host: fateflow + host: fateflow_ip http_port: 9380 grpc_port: 9360 + # when you have multiple fateflow server on one party, + # we suggest using nginx for load balancing. + nginx: + # under K8s mode, 'fateflow' is the service name, which will be a L4 load balancer. + host: fateflow + http_port: 9380 + grpc_port: 9360 + # use random instance_id instead of {host}:{http_port} + random_instance_id: false + # support rollsite/nginx/fateflow as a coordination proxy # rollsite support fate on eggroll, use grpc protocol # nginx support fate on eggroll and fate on spark, use http or grpc protocol, default is http @@ -174,7 +184,7 @@ data: fateboard: host: fateboard port: 8080 - enable_model_store: false + enable_model_store: true model_store_address: storage: mysql name: {{ .Values.externalMysqlDatabase | default .Values.modules.mysql.database | default "eggroll_meta" }} @@ -247,8 +257,8 @@ data: federated_command_trys: 3 end_status_job_scheduling_time_limit: 300000 # ms end_status_job_scheduling_updates: 1 - auto_retries: 0 - auto_retry_delay: 1 #seconds + auto_retries: {{ .Values.modules.python.failedTaskAutoRetryTimes }} + auto_retry_delay: {{ .Values.modules.python.failedTaskAutoRetryDelay }} #seconds # It can also be specified in the job configuration using the federated_status_collect_type parameter federated_status_collect_type: PUSH detect_connect_max_retry_count: 3 diff --git a/helm-charts/FATE/templates/core/fateflow/service.yaml b/helm-charts/FATE/templates/core/fateflow/service.yaml index e2d7bce37..796643e96 100644 --- a/helm-charts/FATE/templates/core/fateflow/service.yaml +++ b/helm-charts/FATE/templates/core/fateflow/service.yaml @@ -17,29 +17,6 @@ metadata: labels: fateMoudle: fateflow {{ include "fate.labels" . | indent 4 }} -spec: - ports: - - name: "tcp-grpc" - port: 9360 - targetPort: 9360 - protocol: TCP - - name: "tcp-http" - port: 9380 - targetPort: 9380 - protocol: TCP - type: ClusterIP - clusterIP: None - selector: - fateMoudle: python -{{ include "fate.matchLabels" . | indent 4 }} ---- -apiVersion: v1 -kind: Service -metadata: - name: fateflow-client - labels: - fateMoudle: fateflow -{{ include "fate.labels" . | indent 4 }} spec: ports: - name: "tcp-grpc" @@ -57,11 +34,9 @@ spec: {{- end }} protocol: TCP type: {{ .Values.modules.python.type }} - {{- if .Values.modules.python.loadBalancerIP }} loadBalancerIP: "{{ .Values.modules.python.loadBalancerIP }}" {{- end }} - selector: fateMoudle: python {{ include "fate.matchLabels" . | indent 4 }} diff --git a/helm-charts/FATE/templates/core/python-spark.yaml b/helm-charts/FATE/templates/core/python-spark.yaml index ca14a14be..ce597d5f6 100644 --- a/helm-charts/FATE/templates/core/python-spark.yaml +++ b/helm-charts/FATE/templates/core/python-spark.yaml @@ -19,7 +19,7 @@ metadata: {{ include "fate.labels" . | indent 4 }} spec: serviceName: fateflow - replicas: 1 + replicas: {{ .Values.modules.python.replicas }} selector: matchLabels: fateMoudle: python @@ -123,7 +123,7 @@ spec: cp /data/projects/fate/conf-tmp/component_registry.json /data/projects/fate/fateflow/conf/component_registry.json cp /data/projects/fate/conf-tmp/job_default_config.yaml /data/projects/fate/fateflow/conf/job_default_config.yaml # fix fateflow conf must use IP - sed -i "s/host: fateflow/host: ${POD_IP}/g" /data/projects/fate/conf/service_conf.yaml + sed -i "s/host: fateflow_ip/host: ${POD_IP}/g" /data/projects/fate/conf/service_conf.yaml cp /data/projects/spark-3.1.3-bin-hadoop3.2/conf/spark-defaults-template.conf /data/projects/spark-3.1.3-bin-hadoop3.2/conf/spark-defaults.conf sed -i "s/fateflow/${POD_IP}/g" /data/projects/spark-3.1.3-bin-hadoop3.2/conf/spark-defaults.conf @@ -178,53 +178,6 @@ spec: - mountPath: /data/projects/fate/fateflow/model_local_cache name: python-data subPath: model-local-cache - {{- if .Values.modules.fateboard.include }} - - image: {{ .Values.image.registry }}/fateboard:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: fateboard - ports: - - containerPort: 8080 - livenessProbe: - httpGet: - path: / - port: 8080 - httpHeaders: - - name: X-Custom-Header - value: livenessProbe - initialDelaySeconds: 1 - periodSeconds: 10 - timeoutSeconds: 3 - successThreshold: 1 - failureThreshold: 3 - readinessProbe: - httpGet: - path: / - port: 8080 - httpHeaders: - - name: X-Custom-Header - value: readinessProbe - initialDelaySeconds: 1 - periodSeconds: 10 - timeoutSeconds: 3 - successThreshold: 1 - failureThreshold: 3 - startupProbe: - httpGet: - path: / - port: 8080 - httpHeaders: - - name: X-Custom-Header - value: startupProbe - failureThreshold: 12 - periodSeconds: 10 - volumeMounts: - - mountPath: /data/projects/fate/fateboard/conf/application.properties - name: fateboard-confs - subPath: application.properties - - name: python-data - mountPath: /data/projects/fate/fateflow/logs - subPath: logs - {{- end }} {{- with .Values.modules.python.nodeSelector }} nodeSelector: {{ toYaml . | indent 8 }} @@ -266,11 +219,6 @@ spec: configMap: name: pulsar-route-table {{- end }} - {{- if .Values.modules.fateboard.include }} - - name: fateboard-confs - configMap: - name: fateboard-config - {{- end }} {{- if not .Values.persistence.enabled }} - name: python-data emptyDir: {} diff --git a/helm-charts/FATE/values-template-example.yaml b/helm-charts/FATE/values-template-example.yaml index c52a96686..7ced004fa 100644 --- a/helm-charts/FATE/values-template-example.yaml +++ b/helm-charts/FATE/values-template-example.yaml @@ -155,65 +155,70 @@ skippedKeys: # python: - # type: NodePort - # httpNodePort: 30097 - # grpcNodePort: 30092 - # loadBalancerIP: - # serviceAccountName: "" - # nodeSelector: - # tolerations: - # affinity: - # enabledNN: false - # logLevel: INFO - # existingClaim: "" - # storageClass: "python" - # accessMode: ReadWriteMany - # size: 1Gi - # resources: - # requests: - # cpu: "2" - # memory: "4Gi" - # limits: - # cpu: "4" - # memory: "8Gi" - # clustermanager: - # cores_per_node: 16 - # nodes: 2 - # spark: - # cores_per_node: 20 - # nodes: 2 - # master: spark://spark-master:7077 - # driverHost: - # driverHostType: - # portMaxRetries: - # driverStartPort: - # blockManagerStartPort: - # pysparkPython: - # hdfs: - # name_node: hdfs://namenode:9000 - # path_prefix: - # rabbitmq: - # host: rabbitmq - # mng_port: 15672 - # port: 5672 - # user: fate - # password: fate - # pulsar: - # host: pulsar - # mng_port: 8080 - # port: 6650 - # topic_ttl: 3 - # cluster: standalone - # tenant: fl-tenant - # nginx: - # host: nginx - # http_port: 9300 - # grpc_port: 9310 +# type: NodePort +# replicas: 1 +# httpNodePort: 30097 +# grpcNodePort: 30092 +# loadBalancerIP: +# serviceAccountName: "" +# nodeSelector: +# tolerations: +# affinity: +# failedTaskAutoRetryTimes: +# failedTaskAutoRetryDelay: +# logLevel: INFO +# existingClaim: "" +# storageClass: "python" +# accessMode: ReadWriteMany +# size: 1Gi +# resources: +# requests: +# cpu: "2" +# memory: "4Gi" +# limits: +# cpu: "4" +# memory: "8Gi" +# clustermanager: +# cores_per_node: 16 +# nodes: 2 +# spark: +# cores_per_node: 20 +# nodes: 2 +# master: spark://spark-master:7077 +# driverHost: +# driverHostType: +# portMaxRetries: +# driverStartPort: +# blockManagerStartPort: +# pysparkPython: +# hdfs: +# name_node: hdfs://namenode:9000 +# path_prefix: +# rabbitmq: +# host: rabbitmq +# mng_port: 15672 +# port: 5672 +# user: fate +# password: fate +# pulsar: +# host: pulsar +# mng_port: 8080 +# port: 6650 +# topic_ttl: 3 +# cluster: standalone +# tenant: fl-tenant +# nginx: +# host: nginx +# http_port: 9300 +# grpc_port: 9310 # fateboard: - # type: ClusterIP - # username: admin - # password: admin +# type: ClusterIP +# username: admin +# password: admin +# nodeSelector: +# tolerations: +# affinity: # client: # nodeSelector: diff --git a/helm-charts/FATE/values-template.yaml b/helm-charts/FATE/values-template.yaml index 56e5d1958..b35fa5f6f 100644 --- a/helm-charts/FATE/values-template.yaml +++ b/helm-charts/FATE/values-template.yaml @@ -217,6 +217,7 @@ modules: python: include: {{ has "python" .modules }} {{- with .python }} + replicas: {{ .replicas | default 1 }} {{- with .resources }} resources: {{ toYaml . | indent 6 }} @@ -239,6 +240,8 @@ modules: affinity: {{ toYaml . | indent 6 }} {{- end }} + failedTaskAutoRetryTimes: {{ .failedTaskAutoRetryTimes | default 5 }} + failedTaskAutoRetryDelay: {{ .failedTaskAutoRetryDelay | default 60 }} existingClaim: {{ .existingClaim }} claimName: {{ .claimName | default "python-data" }} storageClass: {{ .storageClass | default "python" }} @@ -405,6 +408,18 @@ modules: type: {{ .type }} username: {{ .username }} password: {{ .password }} + {{- with .nodeSelector }} + nodeSelector: +{{ toYaml . | indent 6 }} + {{- end }} + {{- with .tolerations }} + tolerations: +{{ toYaml . | indent 6 }} + {{- end }} + {{- with .affinity }} + affinity: +{{ toYaml . | indent 6 }} + {{- end }} {{- end}} spark: diff --git a/helm-charts/FATE/values.yaml b/helm-charts/FATE/values.yaml index c536e3a1c..509236e8e 100644 --- a/helm-charts/FATE/values.yaml +++ b/helm-charts/FATE/values.yaml @@ -120,6 +120,7 @@ modules: affinity: python: include: true + replicas: 1 type: ClusterIP httpNodePort: 30097 grpcNodePort: 30092 @@ -128,6 +129,8 @@ modules: nodeSelector: tolerations: affinity: + failedTaskAutoRetryTimes: + failedTaskAutoRetryDelay: logLevel: INFO # subPath: "" existingClaim: @@ -204,19 +207,6 @@ modules: cpu: "2" memory: "4Gi" - client: - include: true - ip: client - type: ClusterIP - nodeSelector: - tolerations: - affinity: - subPath: "client" - existingClaim: - storageClass: - accessMode: ReadWriteOnce - size: 1Gi - mysql: include: true type: ClusterIP @@ -251,6 +241,9 @@ modules: type: ClusterIP username: admin password: admin + nodeSelector: + tolerations: + affinity: spark: include: true diff --git a/k8s-deploy/cluster-spark-pulsar.yaml b/k8s-deploy/cluster-spark-pulsar.yaml index cb1c2b231..5dabadd07 100644 --- a/k8s-deploy/cluster-spark-pulsar.yaml +++ b/k8s-deploy/cluster-spark-pulsar.yaml @@ -63,7 +63,6 @@ skippedKeys: # nodeSelector: # tolerations: # affinity: - # enabledNN: false # logLevel: INFO # existingClaim: "" # storageClass: "python" diff --git a/k8s-deploy/cluster.yaml b/k8s-deploy/cluster.yaml index 5bf2c8a9f..42da4d02b 100644 --- a/k8s-deploy/cluster.yaml +++ b/k8s-deploy/cluster.yaml @@ -129,7 +129,6 @@ skippedKeys: # nodeSelector: # tolerations: # affinity: - # enabledNN: false # logLevel: INFO # existingClaim: "" # storageClass: "python" From 1678b4aa21aaaf48963914833c78eb378fdff1d8 Mon Sep 17 00:00:00 2001 From: Sun Xia Date: Thu, 13 Oct 2022 10:28:57 +0800 Subject: [PATCH 09/28] trying to build arm64 version kubefate (#769) * trying to build arm64 version Signed-off-by: Sun Xia * add goos variable Signed-off-by: Sun Xia * fix bug Signed-off-by: Sun Xia * update makefile Signed-off-by: Sun Xia Signed-off-by: Sun Xia --- k8s-deploy/Dockerfile | 7 +++++-- k8s-deploy/Makefile | 16 +++++++++------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/k8s-deploy/Dockerfile b/k8s-deploy/Dockerfile index 9f3777a01..4ef5ddd3a 100644 --- a/k8s-deploy/Dockerfile +++ b/k8s-deploy/Dockerfile @@ -1,3 +1,5 @@ +ARG ARCH=amd64 + FROM golang:1.17 as builder WORKDIR /workspace @@ -13,9 +15,10 @@ COPY docs/docs.go docs/docs.go COPY config.yaml config.yaml ARG LDFLAGS -RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GO111MODULE=on go build -a -ldflags '-s' -installsuffix cgo -o kubefate kubefate.go +ARG ARCH +RUN CGO_ENABLED=0 GOOS=linux GOARCH=${ARCH} GO111MODULE=on go build -a -ldflags '-s' -installsuffix cgo -o kubefate kubefate.go -FROM gcr.io/distroless/static:nonroot +FROM gcr.io/distroless/static:nonroot-${ARCH} WORKDIR / COPY --from=builder /workspace/kubefate . COPY --from=builder /workspace/config.yaml . diff --git a/k8s-deploy/Makefile b/k8s-deploy/Makefile index 0b65dd552..5e1312531 100644 --- a/k8s-deploy/Makefile +++ b/k8s-deploy/Makefile @@ -1,6 +1,8 @@ NAME ?= federatedai/kubefate VERSION ?= v1.4.5 IMG ?= ${NAME}:${VERSION} +ARCH ?= amd64 +GOOS ?= linux ifeq (,$(shell go env GOBIN)) GOBIN=$(shell go env GOPATH)/bin @@ -26,10 +28,10 @@ test: fmt vet # Build manager binary kubefate: fmt vet swag - CGO_ENABLED=0 go build -a --ldflags '-extldflags "-static"' -o ${OUTPUT_FILE} ${BUILD_MODE} kubefate.go + GOOS=${GOOS} GOARCH=${ARCH} CGO_ENABLED=0 go build -a --ldflags '-extldflags "-static"' -o ${OUTPUT_FILE} ${BUILD_MODE} kubefate.go kubefate-without-swag: fmt vet - CGO_ENABLED=0 go build -a --ldflags '-extldflags "-static"' -o ${OUTPUT_FILE} ${BUILD_MODE} kubefate.go + GOOS=${GOOS} GOARCH=${ARCH} CGO_ENABLED=0 go build -a --ldflags '-extldflags "-static"' -o ${OUTPUT_FILE} ${BUILD_MODE} kubefate.go run: fmt vet go run ./kubefate.go service @@ -43,16 +45,16 @@ uninstall: kubectl delete -f rbac-config.yaml docker-build: test - docker build . -t ${IMG} + docker build --build-arg ARCH=${ARCH} . -t ${IMG} docker-build-without-test: - docker build . -t ${IMG} + docker build --build-arg ARCH=${ARCH} . -t ${IMG} docker-push: docker push ${IMG} docker-save: docker-build-without-test - docker save -o kubefate-${VERSION}.docker ${IMG} + docker save -o kubefate-${VERSION}-${ARCH}.docker ${IMG} # Run go fmt against code fmt: @@ -68,12 +70,12 @@ swag: swag-bin package: kubefate-without-swag mkdir -p tmp/kubefate; cp -r bin/kubefate *.yaml examples tmp/kubefate; - tar -czvf kubefate-k8s-${RELEASE_VERSION}.tar.gz -C tmp/ kubefate; + tar -czvf kubefate-k8s-${RELEASE_VERSION}-${ARCH}.tar.gz -C tmp/ kubefate; rm -r tmp; release: package docker-save mkdir -p release; - mv kubefate-k8s-${RELEASE_VERSION}.tar.gz kubefate-${VERSION}.docker release/; + mv kubefate-k8s-${RELEASE_VERSION}-${ARCH}.tar.gz kubefate-${VERSION}-${ARCH}.docker release/; clean: rm -r release From e029a1e41f538481fc377e2a382cd1686fc7e29b Mon Sep 17 00:00:00 2001 From: Chen Jing Date: Thu, 20 Oct 2022 10:30:31 +0800 Subject: [PATCH 10/28] fix the issue exsiting claim doesn't work for nodemanger (#777) Signed-off-by: Chen Jing Signed-off-by: Chen Jing --- helm-charts/FATE/values-template.yaml | 3 ++- helm-charts/Makefile | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/helm-charts/FATE/values-template.yaml b/helm-charts/FATE/values-template.yaml index b35fa5f6f..5c412f813 100644 --- a/helm-charts/FATE/values-template.yaml +++ b/helm-charts/FATE/values-template.yaml @@ -319,7 +319,8 @@ modules: sessionProcessorsPerNode: {{ .sessionProcessorsPerNode }} replicas: {{ .replicas | default 2 }} subPath: {{ .subPath }} - storageClass: {{ .storageClass | default "client" }} + storageClass: {{ .storageClass | default "nodemanager" }} + existingClaim: {{ .existingClaim }} accessMode: {{ .accessMode | default "ReadWriteOnce" }} size: {{ .size | default "1Gi" }} {{- with .nodeSelector }} diff --git a/helm-charts/Makefile b/helm-charts/Makefile index 6a32dc6b4..3451b3eea 100644 --- a/helm-charts/Makefile +++ b/helm-charts/Makefile @@ -2,7 +2,9 @@ release: helm package ./FATE helm package ./FATE-Serving helm package ./FATE-Exchange + helm package ./UpgradeManager lint: helm lint ./FATE helm lint ./FATE-Serving - helm lint ./FATE-Exchange \ No newline at end of file + helm lint ./FATE-Exchange + helm lint ./UpgradeManager \ No newline at end of file From 21c6d3d4ebd59625929140368fee7529acfec496 Mon Sep 17 00:00:00 2001 From: Sun Xia Date: Mon, 24 Oct 2022 20:26:35 +0800 Subject: [PATCH 11/28] update the parameter name in model_store_address (#785) Signed-off-by: Sun Xia Signed-off-by: Sun Xia --- helm-charts/FATE/templates/core/fateflow/configmap.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/helm-charts/FATE/templates/core/fateflow/configmap.yaml b/helm-charts/FATE/templates/core/fateflow/configmap.yaml index c3b26e513..68f8e2a28 100644 --- a/helm-charts/FATE/templates/core/fateflow/configmap.yaml +++ b/helm-charts/FATE/templates/core/fateflow/configmap.yaml @@ -187,11 +187,11 @@ data: enable_model_store: true model_store_address: storage: mysql - name: {{ .Values.externalMysqlDatabase | default .Values.modules.mysql.database | default "eggroll_meta" }} + database: {{ .Values.externalMysqlDatabase | default .Values.modules.mysql.database | default "eggroll_meta" }} host: '{{ .Values.externalMysqlIp | default .Values.modules.mysql.ip | default "mysql" }}' port: {{ .Values.externalMysqlPort | default .Values.modules.mysql.port | default "3306" }} user: '{{ .Values.externalMysqlUser | default .Values.modules.mysql.user | default "fate" }}' - passwd: '{{ .Values.externalMysqlPassword | default .Values.modules.mysql.password | default "fate_dev" }}' + password: '{{ .Values.externalMysqlPassword | default .Values.modules.mysql.password | default "fate_dev" }}' max_connections: 10 stale_timeout: 10 {{- with .Values.modules.serving }} From 3d88f3305ffd769cd3ab8bc21ca4d374b153b93d Mon Sep 17 00:00:00 2001 From: hang lv Date: Fri, 28 Oct 2022 19:08:42 +0800 Subject: [PATCH 12/28] support hive configurations for storage engine (#786) Signed-off-by: hang lv Signed-off-by: hang lv --- .../FATE_cluster_configuration.md | 166 ++++++++++-------- .../templates/core/fateflow/configmap.yaml | 10 +- helm-charts/FATE/values-template-example.yaml | 6 + helm-charts/FATE/values-template.yaml | 8 + helm-charts/FATE/values.yaml | 6 + 5 files changed, 115 insertions(+), 81 deletions(-) diff --git a/docs/configurations/FATE_cluster_configuration.md b/docs/configurations/FATE_cluster_configuration.md index 504ec973f..0b84626be 100644 --- a/docs/configurations/FATE_cluster_configuration.md +++ b/docs/configurations/FATE_cluster_configuration.md @@ -2,46 +2,46 @@ `cluster.yaml` declares information about the FATE cluster to be deployed, which KubeFATE CLI uses to deploy the FATE cluster. ## cluster.yaml -| Name | Type | Description | -|---------------------------|--------------------|--------------------------------------------------------------------------------------------------------| -| * name | scalars | FATE cluster name. | -| * namespace | scalars | Kubernetes namespace for FATE cluster. | -| * chartName | scalars | FATE chart name. (fate/fate-serving) | -| * chartVersion | scalars | FATE chart corresponding version. | -| * partyId | scalars | FATE cluster party id. | -| registry | scalars | Other fate images sources. | -| pullPolicy | scalars | kubernetes images pull policy | -| imagePullSecrets | sequences | The imagePullSecrets names for all deployments | -| * persistence | bool | mysql and nodemanager data persistence. | -| istio.enable | bool | enable istio | -| podSecurityPolicy.enabled | bool | if `true`, create & use Pod Security Policy resources | -| ingressClassName | scalars | The Ingress class name, such as "nginx". | -| * modules | sequences | Modules to be deployed in the FATE cluster. | -| computing | set(Eggroll, Spark, Spark_local) | Configure cluster computing engine( eggroll, spark or spark_local) | -| federation | set(Eggroll,Pulsar,RabbitMQ) | Configure cluster federation engine( eggroll,pulsar or rabbitmq) | -| storage | set(Eggroll,HDFS,LocalFS) | Configure cluster storage engine( eggroll, hdfs or spark) | -| algorithm | set(Basic, NN) | Configure cluster algorithm ( basic or NeuralNetwork) | -| device | set(IPCL, CPU) | Configure cluster device( ipcl or cpu) | -| ingress | mappings | Custom domain of FATE UI component | -| rollsite | mappings | Configuration of FATE cluster `rollsite` module. | -| nodemanager | mappings | Configuration of FATE cluster `nodemanager` module. | -| python | mappings | Configuration of FATE cluster `python` module. | -| fateboard | mappings | Configuration of FATE cluster `fateboard` module. | -| client | mappings | Configuration of FATE cluster `client` module. | -| mysql | mappings | Configuration of FATE cluster `mysql` module.
If you use your own redis, please delete this item. | -| externalMysqlIp | scalars | Access your own MySQL. | -| externalMysqlPort | scalars | Access your own MySQL. | -| externalMysqlDatabase | scalars | Access your own MySQL. | -| externalMysqlUser | scalars | Access your own MySQL. | -| externalMysqlPassword | scalars | Access your own MySQL. | -| servingIp | scalars | Serving cluster connected to fate. | -| servingPort | scalars | Serving cluster connected to fate. | -| spark | mappings | Configuration of FATE cluster `spark` module. | -| hdfs | mappings | Configuration of FATE cluster `hdfs` module. | -| nginx | mappings | Configuration of FATE cluster `nginx` module. | -| rabbitmq | mappings | Configuration of FATE cluster `rabbitmq` module. | -| pulsar | mappings | Configuration of FATE cluster `pulsar` module. | -| skippedKeys | sequences | you can customize some keys which will be ignored in yaml validation | +| Name | Type | Description | +| ------------------------- | -------------------------------- | ------------------------------------------------------------------------------------------------------ | +| * name | scalars | FATE cluster name. | +| * namespace | scalars | Kubernetes namespace for FATE cluster. | +| * chartName | scalars | FATE chart name. (fate/fate-serving) | +| * chartVersion | scalars | FATE chart corresponding version. | +| * partyId | scalars | FATE cluster party id. | +| registry | scalars | Other fate images sources. | +| pullPolicy | scalars | kubernetes images pull policy | +| imagePullSecrets | sequences | The imagePullSecrets names for all deployments | +| * persistence | bool | mysql and nodemanager data persistence. | +| istio.enable | bool | enable istio | +| podSecurityPolicy.enabled | bool | if `true`, create & use Pod Security Policy resources | +| ingressClassName | scalars | The Ingress class name, such as "nginx". | +| * modules | sequences | Modules to be deployed in the FATE cluster. | +| computing | set(Eggroll, Spark, Spark_local) | Configure cluster computing engine( eggroll, spark or spark_local) | +| federation | set(Eggroll,Pulsar,RabbitMQ) | Configure cluster federation engine( eggroll,pulsar or rabbitmq) | +| storage | set(Eggroll,HDFS,LocalFS,Hive) | Configure cluster storage engine( eggroll, hdfs, spark or hive) | +| algorithm | set(Basic, NN) | Configure cluster algorithm ( basic or NeuralNetwork) | +| device | set(IPCL, CPU) | Configure cluster device( ipcl or cpu) | +| ingress | mappings | Custom domain of FATE UI component | +| rollsite | mappings | Configuration of FATE cluster `rollsite` module. | +| nodemanager | mappings | Configuration of FATE cluster `nodemanager` module. | +| python | mappings | Configuration of FATE cluster `python` module. | +| fateboard | mappings | Configuration of FATE cluster `fateboard` module. | +| client | mappings | Configuration of FATE cluster `client` module. | +| mysql | mappings | Configuration of FATE cluster `mysql` module.
If you use your own redis, please delete this item. | +| externalMysqlIp | scalars | Access your own MySQL. | +| externalMysqlPort | scalars | Access your own MySQL. | +| externalMysqlDatabase | scalars | Access your own MySQL. | +| externalMysqlUser | scalars | Access your own MySQL. | +| externalMysqlPassword | scalars | Access your own MySQL. | +| servingIp | scalars | Serving cluster connected to fate. | +| servingPort | scalars | Serving cluster connected to fate. | +| spark | mappings | Configuration of FATE cluster `spark` module. | +| hdfs | mappings | Configuration of FATE cluster `hdfs` module. | +| nginx | mappings | Configuration of FATE cluster `nginx` module. | +| rabbitmq | mappings | Configuration of FATE cluster `rabbitmq` module. | +| pulsar | mappings | Configuration of FATE cluster `pulsar` module. | +| skippedKeys | sequences | you can customize some keys which will be ignored in yaml validation | ***Computing federation storage algorithm device configuration introduction reference [Introduction to Engine Architecture](../Introduction_to_Engine_Architecture.md) and [FATE Algorithm and Computational Acceleration Selection](../FATE_Algorithm_and_Computational_Acceleration_Selection.md)*** @@ -66,7 +66,7 @@ ### ingress mappings | Name | Type | Description | -|-------------------------|-------------------|------------------------------------------------------------------| +| ----------------------- | ----------------- | ---------------------------------------------------------------- | | `fateboard` | mappings | Configuration of Fateboard UI domain | | `fateboard.annotations` | mappings | The annotations used commonly for ingresses | | `fateboard.hosts` | sequences | Set hosts list of ingress record | @@ -77,7 +77,7 @@ | `client.tls` | sequences | Set this to enable TLS on the ingress record | | `spark` | mappings | Configuration of spark UI domain | | `rabbitmq` | mappings | Configuration of Rabbitmq UI domain | -| `pulsar` | mappings | Configuration of Pulsar UI domain | +| `pulsar` | mappings | Configuration of Pulsar UI domain | @@ -85,7 +85,7 @@ It is used to declare the `rollsite ` module in the FATE cluster to be deployed. | Name | subitem | Type | Description | -|--------------|-------------|-----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| ------------ | ----------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | type | | scalars | Kubernetes ServiceTypes, default is NodePort. | | nodePort | | scalars | The port used by `proxy` module's kubernetes service, default range: 30000-32767. | | partyList | | sequences | If this FATE cluster is exchange cluster, partyList is all party's sequences of all parties proxy address. If this FATE cluster is one of participants, delete this configuration item. | @@ -117,7 +117,7 @@ The parties are directly connected. ### nodemanager mappings | Name | SubItem | Type | Description | -|----------------------------|----------------------------|-----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------| +| -------------------------- | -------------------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | | count | | scalars | Number of nodes deployed nodemanager. | | session-Processors-PerNode | | scalars | Configuration of FATE cluster `nodemanager` module. | | list | | sequences | List of nodemanager nodes. | @@ -133,7 +133,7 @@ The parties are directly connected. ### python mappings | Name | Type | Description | -|-----------------------------|----------|----------------------------------------------------------------------------------------------| +| --------------------------- | -------- | -------------------------------------------------------------------------------------------- | | type | scalars | Kubernetes ServiceTypes, default is NodePort.
Other modules can connect to the fateflow | | nodePort | scalars | The port used by `proxy` module's kubernetes service, default range: 30000-32767. | | nodeSelector | mappings | kubernetes nodeSelector. | @@ -152,13 +152,14 @@ The parties are directly connected. | rabbitmq | mappings | If you use the existing rabbitmq, you can set this configuration | | nginx | mappings | If you use the existing nginx, you can set this configuration | | logLevel | scalars | The log level of the Python process, default level is Info | +| hive | mappings | If you use the existing hive, you can set this configuration | ### fateboard mappings Configuration of kubernetes deployment fateboard. | Name | Type | Description | -|----------|----------|-----------------------------| +| -------- | -------- | --------------------------- | | type | mappings | Kubernetes nodeSelector. | | username | scalars | Login username of fateboard | | password | scalars | Login password of fateboard | @@ -168,7 +169,7 @@ Configuration of kubernetes deployment fateboard. Configuration of kubernetes deployment client. | Name | Type | Description | -|---------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------| +| ------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | | nodeSelector | mappings | kubernetes nodeSelector. | | subPath | scalars | Path of data persistence, specify the "subPath" if the PVC is shared with other components. | | existingClaim | scalars | Use the existing PVC which must be created manually before bound. | @@ -181,7 +182,7 @@ Configuration of kubernetes deployment client. Configuration of kubernetes deployment mysql. | Name | Type | Description | -|---------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------| +| ------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | | nodeSelector | mappings | kubernetes nodeSelector. | | ip | scalars | Allow other modules to connect to MySQL. | | port | scalars | Mysql port. | @@ -201,7 +202,7 @@ Configuration of kubernetes deployment mysql. Configuration of kubernetes deployment spark. | Name | SubItem | Type | Description | -|-------------------|--------------|----------|------------------------------| +| ----------------- | ------------ | -------- | ---------------------------- | | master/
worker | Image | scalars | Image of spark components | | | ImageTag | scalars | ImageTag of spark components | | | replicas | scalars | Number of copies of pod | @@ -213,18 +214,18 @@ Configuration of kubernetes deployment spark. Configuration of kubernetes deployment hdfs. -| Name | SubItem | Type | Description | -|------------------------|--------------|----------|--------------------------------------------------| -| namenode/
datanode | nodeSelector | mappings | kubernetes nodeSelector. | -| | type | scalars | Kubernetes ServiceTypes, default is `ClusterIp`. | -| datanode | replicas | scalars | The replicas of the HDFS datanode pods | +| Name | SubItem | Type | Description | +| --------------------- | ------------ | -------- | ------------------------------------------------ | +| namenode/
datanode | nodeSelector | mappings | kubernetes nodeSelector. | +| | type | scalars | Kubernetes ServiceTypes, default is `ClusterIp`. | +| datanode | replicas | scalars | The replicas of the HDFS datanode pods | ### nginx mappings Configuration of kubernetes deployment hdfs. | Name | Type | Description | -|--------------|----------|------------------------------| +| ------------ | -------- | ---------------------------- | | nodeSelector | mappings | kubernetes nodeSelector. | | type | scalars | Kubernetes ServiceTypes. | | nodePort | scalars | Kubernetes Service NodePort. | @@ -263,7 +264,7 @@ Configuration of kubernetes deployment hdfs. Configuration of kubernetes deployment rabbitmq . | Name | Type | Description | -|--------------|----------|--------------------------------------------------| +| ------------ | -------- | ------------------------------------------------ | | nodeSelector | mappings | kubernetes nodeSelector. | | type | scalars | Kubernetes ServiceTypes, default is `ClusterIp`. | | nodePort | scalars | Kubernetes Service NodePort. | @@ -292,27 +293,27 @@ Configuration of kubernetes deployment rabbitmq . Configuration of kubernetes deployment pulsar . -| Name | Type | Description | -| ---------------- | --------- | ------------------------------------------------------------ | -| nodeSelector | mappings | kubernetes nodeSelector. | -| type | scalars | Kubernetes ServiceTypes, default is `ClusterIp`. | -| nodePort | scalars | Kubernetes Service NodePort. | -| skippedKeys | sequences | you can customize some keys which will be ignored in yaml validation | -| tolerations | | Kubernetes tolerations | -| affinity | | Kubernetes affinity | -| env | mappings | env of pulsar. | -| confs | mappings | configuration of pulsar. | -| httpNodePort | scalars | Pulsar HttpNodePort | -| httpsNodePort | scalars | Pulsar HttpsNodePort | -| loadBalancerIP | scalars | Ip of loadBalancer | +| Name | Type | Description | +| ---------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| nodeSelector | mappings | kubernetes nodeSelector. | +| type | scalars | Kubernetes ServiceTypes, default is `ClusterIp`. | +| nodePort | scalars | Kubernetes Service NodePort. | +| skippedKeys | sequences | you can customize some keys which will be ignored in yaml validation | +| tolerations | | Kubernetes tolerations | +| affinity | | Kubernetes affinity | +| env | mappings | env of pulsar. | +| confs | mappings | configuration of pulsar. | +| httpNodePort | scalars | Pulsar HttpNodePort | +| httpsNodePort | scalars | Pulsar HttpsNodePort | +| loadBalancerIP | scalars | Ip of loadBalancer | | storageClass | scalars | Specify the "storageClass" used to provision the volume. Or the default. StorageClass will be used(the default). Set it to "-" to disable dynamic provisioning. | -| existingClaim | scalars | Kubernetes existingClaim | -| accessMode | scalars | Kubernetes Persistent Volume Access Modes:
ReadWriteOnce
ReadOnlyMany
ReadWriteMany. | -| size | scalars | Match the volume size of PVC. | -| publicLB.enabled | bool | if `true`, enable publicLB | -| exchange | mappings | FATE cluster `exchange` module's ip and port. | -| resources | mappings | resources of Pod | -| route_table | mappings | route table of pulsar. | +| existingClaim | scalars | Kubernetes existingClaim | +| accessMode | scalars | Kubernetes Persistent Volume Access Modes:
ReadWriteOnce
ReadOnlyMany
ReadWriteMany. | +| size | scalars | Match the volume size of PVC. | +| publicLB.enabled | bool | if `true`, enable publicLB | +| exchange | mappings | FATE cluster `exchange` module's ip and port. | +| resources | mappings | resources of Pod | +| route_table | mappings | route table of pulsar. | *example of route_table*: @@ -335,3 +336,16 @@ Configuration of kubernetes deployment pulsar . - backlogQuotaDefaultLimitGB - brokerDeleteInactiveTopicsFrequencySeconds + +### hive mappings + +Configuration of existing hive. +Please note: you have to run hive cluster by your self, then set below configurations used for storage engine. + +| Name | Type | Description | +| -------------- | ------- | ---------------------- | +| host | scalars | configuration of hive. | +| port | scalars | configuration of hive. | +| auth_mechanism | scalars | configuration of hive. | +| user | scalars | configuration of hive. | +| password | scalars | configuration of hive. | \ No newline at end of file diff --git a/helm-charts/FATE/templates/core/fateflow/configmap.yaml b/helm-charts/FATE/templates/core/fateflow/configmap.yaml index 68f8e2a28..96981f142 100644 --- a/helm-charts/FATE/templates/core/fateflow/configmap.yaml +++ b/helm-charts/FATE/templates/core/fateflow/configmap.yaml @@ -142,11 +142,11 @@ data: token_code: MLSS python_path: /data/projects/fate/python hive: - host: 127.0.0.1 - port: 10000 - auth_mechanism: - username: - password: + host: {{ .Values.modules.python.hive.host }} + port: {{ .Values.modules.python.hive.port }} + auth_mechanism: {{ .Values.modules.python.hive.auth_mechanism }} + username: {{ .Values.modules.python.hive.username }} + password: {{ .Values.modules.python.hive.password }} linkis_hive: host: 127.0.0.1 port: 9001 diff --git a/helm-charts/FATE/values-template-example.yaml b/helm-charts/FATE/values-template-example.yaml index 7ced004fa..b264530dc 100644 --- a/helm-charts/FATE/values-template-example.yaml +++ b/helm-charts/FATE/values-template-example.yaml @@ -211,6 +211,12 @@ skippedKeys: # host: nginx # http_port: 9300 # grpc_port: 9310 +# hive: +# host: 127.0.0.1 +# port: 10000 +# auth_mechanism: +# username: +# password: # fateboard: # type: ClusterIP diff --git a/helm-charts/FATE/values-template.yaml b/helm-charts/FATE/values-template.yaml index 5c412f813..3af4d9c80 100644 --- a/helm-charts/FATE/values-template.yaml +++ b/helm-charts/FATE/values-template.yaml @@ -285,6 +285,14 @@ modules: http_port: {{ .http_port }} grpc_port: {{ .grpc_port }} {{- end }} + {{- with .hive }} + hive: + host: {{ .host }} + port: {{ .port }} + auth_mechanism: {{ .auth_mechanism }} + username: {{ .username }} + password: {{ .password }} + {{- end }} {{- end }} diff --git a/helm-charts/FATE/values.yaml b/helm-charts/FATE/values.yaml index 509236e8e..f3c8ec647 100644 --- a/helm-charts/FATE/values.yaml +++ b/helm-charts/FATE/values.yaml @@ -171,6 +171,12 @@ modules: host: nginx http_port: 9300 grpc_port: 9310 + hive: + host: + port: + auth_mechanism: + username: + password: client: include: true ip: client From eb1ca707ab084303d651022ec5f83388bb49753f Mon Sep 17 00:00:00 2001 From: hang lv Date: Thu, 3 Nov 2022 02:30:36 -0400 Subject: [PATCH 13/28] support setting notebook password in docker-deploy mode Signed-off-by: hang lv --- docker-deploy/generate_config.sh | 3 +++ docker-deploy/parties.conf | 3 +++ docker-deploy/training_template/docker-compose-eggroll.yml | 2 ++ docker-deploy/training_template/docker-compose-spark-slim.yml | 4 +++- docker-deploy/training_template/docker-compose-spark.yml | 2 ++ 5 files changed, 13 insertions(+), 1 deletion(-) diff --git a/docker-deploy/generate_config.sh b/docker-deploy/generate_config.sh index 52f3d21bd..61562ee37 100755 --- a/docker-deploy/generate_config.sh +++ b/docker-deploy/generate_config.sh @@ -229,6 +229,7 @@ GenerateConfig() { fi cp ${WORKINGDIR}/.env ./confs-$party_id + echo "NOTEBOOK_HASHED_PASSWORD=${notebook_hashed_password}" >> ./confs-$party_id/.env # Modify the configuration file @@ -494,6 +495,7 @@ EOF rm -rf confs-exchange/ mkdir -p confs-exchange/conf/ cp ${WORKINGDIR}/.env confs-exchange/ + echo "NOTEBOOK_HASHED_PASSWORD=${notebook_hashed_password}" >> confs-exchange/.env cp training_template/docker-compose-exchange.yml confs-exchange/docker-compose.yml cp -r training_template/backends/eggroll/conf/* confs-exchange/conf/ @@ -565,6 +567,7 @@ EOF fi # generate conf dir cp ${WORKINGDIR}/.env ./serving-$party_id + echo "NOTEBOOK_HASHED_PASSWORD=${notebook_hashed_password}" >> ./serving-$party_id/.env # serving admin sed -i "s/admin.username=/admin.username=${serving_admin_username}/g" ./serving-$party_id/confs/serving-admin/conf/application.properties diff --git a/docker-deploy/parties.conf b/docker-deploy/parties.conf index 8812093fe..0afbdef40 100644 --- a/docker-deploy/parties.conf +++ b/docker-deploy/parties.conf @@ -39,3 +39,6 @@ fateboard_password=admin # Define serving admin login information serving_admin_username=admin serving_admin_password=admin + +# Define notebook login information +notebook_hashed_password= \ No newline at end of file diff --git a/docker-deploy/training_template/docker-compose-eggroll.yml b/docker-deploy/training_template/docker-compose-eggroll.yml index 49ef770f9..58ad42fb7 100644 --- a/docker-deploy/training_template/docker-compose-eggroll.yml +++ b/docker-deploy/training_template/docker-compose-eggroll.yml @@ -153,6 +153,7 @@ services: FATE_FLOW_IP: "fateflow" FATE_FLOW_PORT: "9380" FATE_SERVING_HOST: "fate-serving:8059" + NOTEBOOK_HASHED_PASSWORD: "${NOTEBOOK_HASHED_PASSWORD}" volumes: - download_dir:/data/projects/fate/download_dir - shared_dir_examples:/data/projects/fate/examples @@ -161,6 +162,7 @@ services: - fateflow networks: - fate-network + command: ["bash", "-c", "flow init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && pipeline init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password='${NOTEBOOK_HASHED_PASSWORD}'"] mysql: image: "mysql:8.0.28" diff --git a/docker-deploy/training_template/docker-compose-spark-slim.yml b/docker-deploy/training_template/docker-compose-spark-slim.yml index 2fadb725d..7f85c65c9 100644 --- a/docker-deploy/training_template/docker-compose-spark-slim.yml +++ b/docker-deploy/training_template/docker-compose-spark-slim.yml @@ -169,6 +169,7 @@ services: FATE_FLOW_IP: "fateflow" FATE_FLOW_PORT: "9380" FATE_SERVING_HOST: "fate-serving:8059" + NOTEBOOK_HASHED_PASSWORD: "${NOTEBOOK_HASHED_PASSWORD}" volumes: - download_dir:/data/projects/fate/download_dir - shared_dir_examples:/data/projects/fate/examples @@ -176,4 +177,5 @@ services: depends_on: - fateflow networks: - - fate-network \ No newline at end of file + - fate-network + command: ["bash", "-c", "flow init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && pipeline init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password='${NOTEBOOK_HASHED_PASSWORD}'"] \ No newline at end of file diff --git a/docker-deploy/training_template/docker-compose-spark.yml b/docker-deploy/training_template/docker-compose-spark.yml index a2cde18fc..8239ce8f1 100644 --- a/docker-deploy/training_template/docker-compose-spark.yml +++ b/docker-deploy/training_template/docker-compose-spark.yml @@ -254,6 +254,7 @@ services: FATE_FLOW_IP: "fateflow" FATE_FLOW_PORT: "9380" FATE_SERVING_HOST: "fate-serving:8059" + NOTEBOOK_HASHED_PASSWORD: "${NOTEBOOK_HASHED_PASSWORD}" volumes: - download_dir:/data/projects/fate/download_dir - shared_dir_examples:/data/projects/fate/examples @@ -262,3 +263,4 @@ services: - fateflow networks: - fate-network + command: ["bash", "-c", "flow init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && pipeline init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password='${NOTEBOOK_HASHED_PASSWORD}'"] From 82d619644a20b8b1b6e54e0b87931f87c83f578b Mon Sep 17 00:00:00 2001 From: hang lv Date: Thu, 3 Nov 2022 02:31:51 -0400 Subject: [PATCH 14/28] support setting notebook password in k8s-deploy mode Signed-off-by: hang lv --- helm-charts/FATE/templates/core/client/statefulSet.yaml | 5 +++++ helm-charts/FATE/values-template-example.yaml | 1 + helm-charts/FATE/values-template.yaml | 1 + helm-charts/FATE/values.yaml | 1 + 4 files changed, 8 insertions(+) diff --git a/helm-charts/FATE/templates/core/client/statefulSet.yaml b/helm-charts/FATE/templates/core/client/statefulSet.yaml index bb0ef7dbf..f1e2b5576 100644 --- a/helm-charts/FATE/templates/core/client/statefulSet.yaml +++ b/helm-charts/FATE/templates/core/client/statefulSet.yaml @@ -43,8 +43,13 @@ spec: value: "9380" - name: FATE_SERVING_HOST value: "{{.Values.modules.serving.ip}}:{{.Values.modules.serving.port}}" + - name: NOTEBOOK_HASHED_PASSWORD + value: {{ .Values.modules.client.notebook_hashed_password }} + - name: PORT + value: "20000" ports: - containerPort: 20000 + command: ["bash", "-c", "flow init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && pipeline init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=${NOTEBOOK_HASHED_PASSWORD}"] livenessProbe: httpGet: path: / diff --git a/helm-charts/FATE/values-template-example.yaml b/helm-charts/FATE/values-template-example.yaml index b264530dc..dcaf5cdc2 100644 --- a/helm-charts/FATE/values-template-example.yaml +++ b/helm-charts/FATE/values-template-example.yaml @@ -233,6 +233,7 @@ skippedKeys: # storageClass: "client" # accessMode: ReadWriteOnce # size: 1Gi + # notebook_hashed_password: "" # mysql: # nodeSelector: diff --git a/helm-charts/FATE/values-template.yaml b/helm-charts/FATE/values-template.yaml index 3af4d9c80..e008481d9 100644 --- a/helm-charts/FATE/values-template.yaml +++ b/helm-charts/FATE/values-template.yaml @@ -370,6 +370,7 @@ modules: affinity: {{ toYaml . | indent 6 }} {{- end }} + notebook_hashed_password: {{ .notebook_hashed_password | default "" }} {{- end }} diff --git a/helm-charts/FATE/values.yaml b/helm-charts/FATE/values.yaml index f3c8ec647..39d5dbef7 100644 --- a/helm-charts/FATE/values.yaml +++ b/helm-charts/FATE/values.yaml @@ -189,6 +189,7 @@ modules: storageClass: accessMode: ReadWriteOnce size: 1Gi + notebook_hashed_password: clustermanager: include: true ip: clustermanager From 8d384028388c0cb3ca5e6aa86f455a2bbf992c87 Mon Sep 17 00:00:00 2001 From: hang lv Date: Thu, 3 Nov 2022 14:57:31 +0800 Subject: [PATCH 15/28] remove extra env for testing --- helm-charts/FATE/templates/core/client/statefulSet.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/helm-charts/FATE/templates/core/client/statefulSet.yaml b/helm-charts/FATE/templates/core/client/statefulSet.yaml index f1e2b5576..a44b845ae 100644 --- a/helm-charts/FATE/templates/core/client/statefulSet.yaml +++ b/helm-charts/FATE/templates/core/client/statefulSet.yaml @@ -45,8 +45,6 @@ spec: value: "{{.Values.modules.serving.ip}}:{{.Values.modules.serving.port}}" - name: NOTEBOOK_HASHED_PASSWORD value: {{ .Values.modules.client.notebook_hashed_password }} - - name: PORT - value: "20000" ports: - containerPort: 20000 command: ["bash", "-c", "flow init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && pipeline init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=${NOTEBOOK_HASHED_PASSWORD}"] @@ -127,4 +125,4 @@ spec: requests: storage: {{ .Values.modules.client.size }} {{- end }} -{{- end }} \ No newline at end of file +{{- end }} From 8f9bcb8593eb248368eef0b987b190d2539f2e14 Mon Sep 17 00:00:00 2001 From: hang lv Date: Thu, 3 Nov 2022 03:56:10 -0400 Subject: [PATCH 16/28] update doc nd remove extra env copy Signed-off-by: hang lv --- docker-deploy/generate_config.sh | 3 +-- .../FATE_cluster_configuration.md | 17 +++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docker-deploy/generate_config.sh b/docker-deploy/generate_config.sh index 61562ee37..01ec6e94c 100755 --- a/docker-deploy/generate_config.sh +++ b/docker-deploy/generate_config.sh @@ -495,7 +495,7 @@ EOF rm -rf confs-exchange/ mkdir -p confs-exchange/conf/ cp ${WORKINGDIR}/.env confs-exchange/ - echo "NOTEBOOK_HASHED_PASSWORD=${notebook_hashed_password}" >> confs-exchange/.env + cp training_template/docker-compose-exchange.yml confs-exchange/docker-compose.yml cp -r training_template/backends/eggroll/conf/* confs-exchange/conf/ @@ -567,7 +567,6 @@ EOF fi # generate conf dir cp ${WORKINGDIR}/.env ./serving-$party_id - echo "NOTEBOOK_HASHED_PASSWORD=${notebook_hashed_password}" >> ./serving-$party_id/.env # serving admin sed -i "s/admin.username=/admin.username=${serving_admin_username}/g" ./serving-$party_id/confs/serving-admin/conf/application.properties diff --git a/docs/configurations/FATE_cluster_configuration.md b/docs/configurations/FATE_cluster_configuration.md index 0b84626be..4294a5597 100644 --- a/docs/configurations/FATE_cluster_configuration.md +++ b/docs/configurations/FATE_cluster_configuration.md @@ -168,14 +168,15 @@ Configuration of kubernetes deployment fateboard. Configuration of kubernetes deployment client. -| Name | Type | Description | -| ------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| nodeSelector | mappings | kubernetes nodeSelector. | -| subPath | scalars | Path of data persistence, specify the "subPath" if the PVC is shared with other components. | -| existingClaim | scalars | Use the existing PVC which must be created manually before bound. | -| storageClass | scalars | Specify the "storageClass" used to provision the volume. Or the default. StorageClass will be used(the default). Set it to "-" to disable dynamic provisioning. | -| accessMode | scalars | Kubernetes Persistent Volume Access Modes:
ReadWriteOnce
ReadOnlyMany
ReadWriteMany. | -| size | scalars | Match the volume size of PVC. | +| Name | Type | Description | +| ------------------------ | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| nodeSelector | mappings | kubernetes nodeSelector. | +| subPath | scalars | Path of data persistence, specify the "subPath" if the PVC is shared with other components. | +| existingClaim | scalars | Use the existing PVC which must be created manually before bound. | +| storageClass | scalars | Specify the "storageClass" used to provision the volume. Or the default. StorageClass will be used(the default). Set it to "-" to disable dynamic provisioning. | +| accessMode | scalars | Kubernetes Persistent Volume Access Modes:
ReadWriteOnce
ReadOnlyMany
ReadWriteMany. | +| size | scalars | Match the volume size of PVC. | +| notebook_hashed_password | scalars | hashed password for jupyter notebook. | ### Mysql mappings From 2ba18f9ac8bbbc3c4aca5415a9082e293f2e66ef Mon Sep 17 00:00:00 2001 From: hang lv Date: Thu, 3 Nov 2022 05:48:17 -0400 Subject: [PATCH 17/28] bug fix for setting notebook password Signed-off-by: hang lv --- docker-deploy/training_template/docker-compose-eggroll.yml | 2 +- docker-deploy/training_template/docker-compose-spark-slim.yml | 2 +- docker-deploy/training_template/docker-compose-spark.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docker-deploy/training_template/docker-compose-eggroll.yml b/docker-deploy/training_template/docker-compose-eggroll.yml index 58ad42fb7..514d73ac4 100644 --- a/docker-deploy/training_template/docker-compose-eggroll.yml +++ b/docker-deploy/training_template/docker-compose-eggroll.yml @@ -162,7 +162,7 @@ services: - fateflow networks: - fate-network - command: ["bash", "-c", "flow init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && pipeline init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password='${NOTEBOOK_HASHED_PASSWORD}'"] + command: ["bash", "-c", "flow init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && pipeline init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=$${NOTEBOOK_HASHED_PASSWORD} "] mysql: image: "mysql:8.0.28" diff --git a/docker-deploy/training_template/docker-compose-spark-slim.yml b/docker-deploy/training_template/docker-compose-spark-slim.yml index 7f85c65c9..89202ca44 100644 --- a/docker-deploy/training_template/docker-compose-spark-slim.yml +++ b/docker-deploy/training_template/docker-compose-spark-slim.yml @@ -178,4 +178,4 @@ services: - fateflow networks: - fate-network - command: ["bash", "-c", "flow init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && pipeline init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password='${NOTEBOOK_HASHED_PASSWORD}'"] \ No newline at end of file + command: ["bash", "-c", "flow init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && pipeline init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=$${NOTEBOOK_HASHED_PASSWORD} "] \ No newline at end of file diff --git a/docker-deploy/training_template/docker-compose-spark.yml b/docker-deploy/training_template/docker-compose-spark.yml index 8239ce8f1..e44049b8c 100644 --- a/docker-deploy/training_template/docker-compose-spark.yml +++ b/docker-deploy/training_template/docker-compose-spark.yml @@ -263,4 +263,4 @@ services: - fateflow networks: - fate-network - command: ["bash", "-c", "flow init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && pipeline init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password='${NOTEBOOK_HASHED_PASSWORD}'"] + command: ["bash", "-c", "flow init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && pipeline init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=$${NOTEBOOK_HASHED_PASSWORD} "] \ No newline at end of file From a9e4c210145eee38dc9f698ede50a54cd95870ff Mon Sep 17 00:00:00 2001 From: hang lv Date: Mon, 21 Nov 2022 13:00:25 +0800 Subject: [PATCH 18/28] Fix issue 730 (#806) * support dependent_distribution configuration in KubeFATE Signed-off-by: hang lv * add doc for dependent_distribution Signed-off-by: hang lv Signed-off-by: hang lv --- docs/configurations/FATE_cluster_configuration.md | 1 + helm-charts/FATE/templates/core/fateflow/configmap.yaml | 2 +- helm-charts/FATE/values-template-example.yaml | 1 + helm-charts/FATE/values-template.yaml | 1 + helm-charts/FATE/values.yaml | 1 + 5 files changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/configurations/FATE_cluster_configuration.md b/docs/configurations/FATE_cluster_configuration.md index 4294a5597..34d83c5c2 100644 --- a/docs/configurations/FATE_cluster_configuration.md +++ b/docs/configurations/FATE_cluster_configuration.md @@ -153,6 +153,7 @@ The parties are directly connected. | nginx | mappings | If you use the existing nginx, you can set this configuration | | logLevel | scalars | The log level of the Python process, default level is Info | | hive | mappings | If you use the existing hive, you can set this configuration | +| dependent_distribution | mappings | Distribute dependencies with spark | ### fateboard mappings diff --git a/helm-charts/FATE/templates/core/fateflow/configmap.yaml b/helm-charts/FATE/templates/core/fateflow/configmap.yaml index 96981f142..3488c7a23 100644 --- a/helm-charts/FATE/templates/core/fateflow/configmap.yaml +++ b/helm-charts/FATE/templates/core/fateflow/configmap.yaml @@ -44,7 +44,7 @@ data: service_conf.yaml: | use_registry: {{ .Values.modules.serving.useRegistry | default false }} use_deserialize_safe_module: false - dependent_distribution: false + dependent_distribution: {{ .Values.modules.python.dependent_distribution | default false }} encrypt_password: false encrypt_module: fate_arch.common.encrypt_utils#pwdecrypt private_key: diff --git a/helm-charts/FATE/values-template-example.yaml b/helm-charts/FATE/values-template-example.yaml index dcaf5cdc2..97cc2879e 100644 --- a/helm-charts/FATE/values-template-example.yaml +++ b/helm-charts/FATE/values-template-example.yaml @@ -170,6 +170,7 @@ skippedKeys: # existingClaim: "" # storageClass: "python" # accessMode: ReadWriteMany +# dependent_distribution: false # size: 1Gi # resources: # requests: diff --git a/helm-charts/FATE/values-template.yaml b/helm-charts/FATE/values-template.yaml index e008481d9..8a5ae4611 100644 --- a/helm-charts/FATE/values-template.yaml +++ b/helm-charts/FATE/values-template.yaml @@ -227,6 +227,7 @@ modules: httpNodePort: {{ .httpNodePort }} grpcNodePort: {{ .grpcNodePort }} loadBalancerIP: {{ .loadBalancerIP }} + dependent_distribution: {{ .dependent_distribution }} serviceAccountName: {{ .serviceAccountName }} {{- with .nodeSelector }} nodeSelector: diff --git a/helm-charts/FATE/values.yaml b/helm-charts/FATE/values.yaml index 39d5dbef7..60fd8d0b2 100644 --- a/helm-charts/FATE/values.yaml +++ b/helm-charts/FATE/values.yaml @@ -134,6 +134,7 @@ modules: logLevel: INFO # subPath: "" existingClaim: + dependent_distribution: false claimName: python-data storageClass: accessMode: ReadWriteOnce From 7590b938cd432c76d700ec3752f6a1e3c6fe07d9 Mon Sep 17 00:00:00 2001 From: Chen Jing Date: Mon, 5 Dec 2022 13:55:49 +0800 Subject: [PATCH 19/28] fix the mysql config could be none issue for fum (#811) Signed-off-by: Chen Jing Signed-off-by: Chen Jing --- k8s-deploy/pkg/job/fate_upgrade_manager.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/k8s-deploy/pkg/job/fate_upgrade_manager.go b/k8s-deploy/pkg/job/fate_upgrade_manager.go index 67e1d96e0..39cd4a0cb 100644 --- a/k8s-deploy/pkg/job/fate_upgrade_manager.go +++ b/k8s-deploy/pkg/job/fate_upgrade_manager.go @@ -102,14 +102,19 @@ func (fum *FateUpgradeManager) waitFinish(interval, round int) bool { } func getMysqlCredFromSpec(clusterSpec modules.MapStringInterface) (username, password string) { + defaultUsername := "fate" + defaultPassword := "fate_dev" + if clusterSpec["mysql"] == nil { + return defaultUsername, defaultPassword + } mysqlSpec := clusterSpec["mysql"].(map[string]interface{}) if mysqlSpec["user"] == nil { - username = "fate" + username = defaultUsername } else { username = mysqlSpec["user"].(string) } if mysqlSpec["password"] == nil { - password = "fate_dev" + password = defaultPassword } else { password = mysqlSpec["password"].(string) } From e533ad3fb74bb3d7e6df2571aa2e49717e7ae1fd Mon Sep 17 00:00:00 2001 From: alex-liang-kh <98797487+alex-liang-kh@users.noreply.github.com> Date: Tue, 13 Dec 2022 12:54:08 +0800 Subject: [PATCH 20/28] add heml-charts for fedml edge client and server. (#829) Signed-off-by: alexliang Signed-off-by: alexliang --- helm-charts/FedML-Client/Chart.yaml | 6 + helm-charts/FedML-Client/README.html | 483 ++++++++++++++++++ helm-charts/FedML-Client/templates/NOTES.txt | 1 + .../FedML-Client/templates/_helpers.tpl | 68 +++ .../FedML-Client/templates/deployment.yaml | 70 +++ helm-charts/FedML-Client/templates/hpa.yaml | 28 + .../FedML-Client/templates/ingress.yaml | 61 +++ .../FedML-Client/templates/service.yaml | 15 + .../templates/serviceaccount.yaml | 12 + .../templates/tests/test-connection.yaml | 15 + .../FedML-Client/values-template-example.yaml | 62 +++ helm-charts/FedML-Client/values-template.yaml | 115 +++++ helm-charts/FedML-Client/values.yaml | 91 ++++ helm-charts/FedML-Server/Chart.yaml | 6 + helm-charts/FedML-Server/README.html | 483 ++++++++++++++++++ helm-charts/FedML-Server/templates/NOTES.txt | 1 + .../FedML-Server/templates/_helpers.tpl | 68 +++ .../FedML-Server/templates/deployment.yaml | 70 +++ helm-charts/FedML-Server/templates/hpa.yaml | 28 + .../FedML-Server/templates/ingress.yaml | 61 +++ .../FedML-Server/templates/service.yaml | 15 + .../templates/serviceaccount.yaml | 12 + .../templates/tests/test-connection.yaml | 15 + .../FedML-Server/values-template-example.yaml | 62 +++ helm-charts/FedML-Server/values-template.yaml | 115 +++++ helm-charts/FedML-Server/values.yaml | 91 ++++ 26 files changed, 2054 insertions(+) create mode 100644 helm-charts/FedML-Client/Chart.yaml create mode 100644 helm-charts/FedML-Client/README.html create mode 100644 helm-charts/FedML-Client/templates/NOTES.txt create mode 100644 helm-charts/FedML-Client/templates/_helpers.tpl create mode 100644 helm-charts/FedML-Client/templates/deployment.yaml create mode 100644 helm-charts/FedML-Client/templates/hpa.yaml create mode 100644 helm-charts/FedML-Client/templates/ingress.yaml create mode 100644 helm-charts/FedML-Client/templates/service.yaml create mode 100644 helm-charts/FedML-Client/templates/serviceaccount.yaml create mode 100644 helm-charts/FedML-Client/templates/tests/test-connection.yaml create mode 100644 helm-charts/FedML-Client/values-template-example.yaml create mode 100644 helm-charts/FedML-Client/values-template.yaml create mode 100644 helm-charts/FedML-Client/values.yaml create mode 100644 helm-charts/FedML-Server/Chart.yaml create mode 100644 helm-charts/FedML-Server/README.html create mode 100644 helm-charts/FedML-Server/templates/NOTES.txt create mode 100644 helm-charts/FedML-Server/templates/_helpers.tpl create mode 100644 helm-charts/FedML-Server/templates/deployment.yaml create mode 100644 helm-charts/FedML-Server/templates/hpa.yaml create mode 100644 helm-charts/FedML-Server/templates/ingress.yaml create mode 100644 helm-charts/FedML-Server/templates/service.yaml create mode 100644 helm-charts/FedML-Server/templates/serviceaccount.yaml create mode 100644 helm-charts/FedML-Server/templates/tests/test-connection.yaml create mode 100644 helm-charts/FedML-Server/values-template-example.yaml create mode 100644 helm-charts/FedML-Server/values-template.yaml create mode 100644 helm-charts/FedML-Server/values.yaml diff --git a/helm-charts/FedML-Client/Chart.yaml b/helm-charts/FedML-Client/Chart.yaml new file mode 100644 index 000000000..2b6066dde --- /dev/null +++ b/helm-charts/FedML-Client/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +appVersion: release +description: A Helm chart for FedML Edge Client +name: fedml-client +type: application +version: 0.7.355 diff --git a/helm-charts/FedML-Client/README.html b/helm-charts/FedML-Client/README.html new file mode 100644 index 000000000..d8e8e5e3e --- /dev/null +++ b/helm-charts/FedML-Client/README.html @@ -0,0 +1,483 @@ + + + + + + + README + + + + +

Deploy +FedML Agent to Kubernetes Clusters via KubeFATE

+

Overview

+

This document provides guide on how to run FedML client and server +agent on Kuberentes using KubeFATE. KubeFATE uses Helm charts to +facilitate the deployment process, with which we can get all the +benefits provided by Kubernetes natively. And it provides additional +values including:

+
    +
  • Declarative deployment definitions for application installing and +upgrading.
  • +
  • Easy management via the KubeFATE CLI.
  • +
  • Additional status check making sure the deployment is +successful.
  • +
  • Log aggregation for convenient debugging and monitoring.
  • +
+

The overall architecture for FedML with KubeFATE is shown in the +below diagram

+
+

+
+

The high-level steps are:

+
    +
  1. The user install KubeFATE service in the Kubernetes cluster.
  2. +
  3. The user install KubeFATE CLI program in the local machine.
  4. +
  5. The user define the FedML client deployment yaml and use KubeFATE to +deploy it.
  6. +
  7. The FedML client will register to the FedML public cloud MLOps +platform.
  8. +
  9. Optionally, the user can deploy more client instances and server +instances in the same Kubernetes cluster.
  10. +
  11. The user can now use the MLOps platform to orchestrate federated +learning trainings.
  12. +
+

Prerequisites

+
    +
  • A running Kubernetes cluster and permissions to create KubeFATE +services and namespaces required by future deployments. For the +permissions KubeFATE needs, check its rbac +yaml file.
  • +
  • Basic knowledge of FedML and KubeFATE.
  • +
+

Deploy KubeFATE Service and +CLI

+

Download the KubeFATE “k8s” deployment package from the KubeFATE release +page. Follow the KubeFATE K8s deploy guide (service +guide, cli +guide) to install KubeFATE service. For the service deployment, we +can stop after the “Preparing domain name and deploying KubeFATE in +Kubernetes” section. For the cli guide, we can stop after the “Verify +the KubeFATE CLI works properly” section.

+

In general this includes the following steps:

+
    +
  1. Deploy KubeFATE service by applying the resources defined in the +“rbac-config” and “kubefate” yaml files.
  2. +
  3. Make sure an ingress controller is deployed that can expose KubeFATE +service. Otherwise we need to change the kubefate service type to +NodePort or LoadBalancer to expose it.
  4. +
  5. Download and install the KubeFATE cli program and configure the +local config yaml file to set the server address to the exposed KubeFATE +service address.
  6. +
  7. Use kubefate version to verify the cli can work with +the service.
  8. +
+

Upload FedML Charts

+

KubeFATE internally uses Helm chart to deploy FML application. To +support deploying FedML client, use the following command to upload +FedML client charts to the KubeFATE service:

+
$ kubefate chart upload -f fedml-client-<version>.tgz
+

After uploading the chart, use the kubefate chart list +command to verify the chart is successfully imported. The output should +contain an item looks like

+
UUID                       NAME             VERSION                 APPVERSION                   
+<OTHERS OMITTED>                                
+<some uuid>                fedml-client     0.7.355                 release        
+

If we want to deploy the FedML server too, we need to use +kubefate chart upload -f fedml-server-<version>.tgz +to upload the server chart.

+

Deploy the FedML Edge Client

+

Prepare a yaml file, for example, “fedml_client.yaml”, as below:

+
name: edge-client-1
+namespace: fedml-edge-client-1
+chartName: fedml-client
+chartVersion: 0.7.355
+# registry: ""
+# pullPolicy: IfNotPresent
+# imagePullSecrets:
+  # - name: myregistrykey
+# ingressClassName: nginx
+modules:
+  - client
+
+# ingress:
+  # client:
+    # annotations: {}
+    # hosts:
+      # - host: chart-example.local
+      #   paths:
+          # - path: /
+          #   pathType: ImplementationSpecific
+    # tls:
+    #  - secretName: chart-example-tls
+    #    hosts:
+    #      - chart-example.local
+
+client:
+  fedmlAccountId: <your account id>
+  # fedmlVersion: "release"
+  # fedmlClientOsName: "Linux"
+  # replicaCount: 1
+  # volume:
+    # clientHomeDirHostPath: "/home/fedml-client"
+    # clientHomeDirMountPath: "/home/fedml/fedml-client"
+  # nameOverride: ""
+  # fullnameOverride: ""
+  # serviceAccount:
+    # create: true
+    # annotations: {}
+    # name: ""
+  # type: ClusterIP
+  # port: 9988
+  # podAnnotations:
+  # nodeSelector:
+  # tolerations:
+  # affinity:
+  # resources:
+  # autoscaling:
+    # enabled: false
+    # minReplicas: 1
+    # maxReplicas: 10
+    # targetCPUUtilizationPercentage: 80
+    # targetMemoryUtilizationPercentage: 80
+  # podSecurityContext: {}
+    # fsGroup: 2000
+  # securityContext: { }
+    # capabilities:
+    #   drop:
+    #   - ALL
+    # readOnlyRootFilesystem: true
+    # runAsNonRoot: true
+    # runAsUser: 1000
+

The layout of the file is the typically called the “cluster yaml” for +KubeFATE. You can change the name and namespace fields according to your +needs. And the fedmlAccountId id field should be set to +your account id in the FedML MLOps platform. For the meanings of the +other fields, please refer to the helm chart values file. Typically, we +don’t need to change the default settings.

+

And, if the Kubernetes namespace doesn’t exist, we need to create it +beforehand:

+
$ kubectl create ns <your namespace>
+

Now we can install the above defined FedML client:

+
$ kubefate cluster install -f fedml_client.yaml
+

The above command will give a job_UUID we can use to +check the status:

+
# View deployment status
+$ kubefate job describe ${job_UUID}
+

When the job status is Success, it indicates that the +deployment succeeded. Login to your MLOps account and the client should +be listed under the “Edge Device” page.

+

Check Deployed Client Status

+

After the deployment, we can use the follow command to get the UUID +of the deployed instance:

+
$ kubefate cluster list
+

Locate the UUID of the “cluster” and then we can get the detailed +status of it by:

+
$ kubefate cluster describe <UUID>
+

And check the logs of this instance:

+
$ kubefate cluster logs <UUID>
+

The logs subcommand can be useful during the future +training process.

+

(Optional) Deploy FedML +Server

+

We can optionally deploy FedML server instance that can be used in a +FedML “Run”. As described above, we need to firstly upload the FedML +server chart. And then we prepare the “cluster yaml” for server +deployment as:

+
name: edge-server-1
+namespace: fedml-edge-server-1
+chartName: fedml-server
+chartVersion: 0.7.355
+# registry: ""
+# pullPolicy: IfNotPresent
+# imagePullSecrets:
+  # - name: myregistrykey
+# ingressClassName: nginx
+modules:
+  - server
+
+# ingress:
+  # server:
+    # annotations: {}
+    # hosts:
+      # - host: chart-example.local
+      #   paths:
+          # - path: /
+          #   pathType: ImplementationSpecific
+    # tls:
+    #  - secretName: chart-example-tls
+    #    hosts:
+    #      - chart-example.local
+
+server:
+  fedmlAccountId: <your account id>
+  # fedmlVersion: "release"
+  # fedmlServerOsName: "Linux"
+  # replicaCount: 1
+  # volume:
+    # serverHomeDirHostPath: "/home/fedml-server"
+    # serverHomeDirMountPath: "/home/fedml/fedml-server"
+  # nameOverride: ""
+  # fullnameOverride: ""
+  # serviceAccount:
+    # create: true
+    # annotations: {}
+    # name: ""
+  # type: ClusterIP
+  # port: 9999
+  # podAnnotations:
+  # nodeSelector:
+  # tolerations:
+  # affinity:
+  # resources:
+  # autoscaling:
+    # enabled: false
+    # minReplicas: 1
+    # maxReplicas: 10
+    # targetCPUUtilizationPercentage: 80
+    # targetMemoryUtilizationPercentage: 80
+  # podSecurityContext: {}
+    # fsGroup: 2000
+  # securityContext: { }
+    # capabilities:
+    #   drop:
+    #   - ALL
+    # readOnlyRootFilesystem: true
+    # runAsNonRoot: true
+    # runAsUser: 1000
+

The configurable parameters are almost the same as the client +deployment. And we can use the same kubefate chart install, +kubefate cluster describe, +kubefate cluster logs commands to check its status.

+

After it has been successfully deployed, we can choose this server +instance when creating new FedML “Run”s.

+

Next Steps

+

We can follow same steps to deploy FedML clients and servers to other +namespaces in same Kubernetes cluster, or to other Kubernetes clusters +(which requires installing KubeFATE in those clusters too). Once we and +our collaborators have deployed all the instances we need, we can start +FedML training in the MLOps platform. This can be done by following the +MLOps platform’s official +document. We can now skip the “2. Install FedML Agent: fedml login +$account_id” section as now we have used KubeFATE to achieve that.

+ + diff --git a/helm-charts/FedML-Client/templates/NOTES.txt b/helm-charts/FedML-Client/templates/NOTES.txt new file mode 100644 index 000000000..10ed1b5e1 --- /dev/null +++ b/helm-charts/FedML-Client/templates/NOTES.txt @@ -0,0 +1 @@ +You may visit fedml documents by the URL https://doc.fedml.ai. \ No newline at end of file diff --git a/helm-charts/FedML-Client/templates/_helpers.tpl b/helm-charts/FedML-Client/templates/_helpers.tpl new file mode 100644 index 000000000..2e8cc341c --- /dev/null +++ b/helm-charts/FedML-Client/templates/_helpers.tpl @@ -0,0 +1,68 @@ +{{/* +Expand the name of the chart. +*/}} +{{- define "fedml-edge-client.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "fedml-edge-client.fullname" -}} +{{- if .Values.fullnameOverride }} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- $name := default .Chart.Name .Values.nameOverride }} +{{- if contains $name .Release.Name }} +{{- .Release.Name | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} +{{- end }} +{{- end }} +{{- end }} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "fedml-edge-client.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "fedml-edge-client.labels" -}} +helm.sh/chart: {{ include "fedml-edge-client.chart" . }} +{{ include "fedml-edge-client.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +owner: kubefate +cluster: fedml-client +heritage: {{ .Release.Service }} +release: {{ .Release.Name }} +chart: {{ .Chart.Name }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "fedml-edge-client.selectorLabels" -}} +app.kubernetes.io/name: {{ include "fedml-edge-client.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +name: {{ .Release.Name | quote }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "fedml-edge-client.serviceAccountName" -}} +{{- if .Values.serviceAccount.create }} +{{- default (include "fedml-edge-client.fullname" .) .Values.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.serviceAccount.name }} +{{- end }} +{{- end }} diff --git a/helm-charts/FedML-Client/templates/deployment.yaml b/helm-charts/FedML-Client/templates/deployment.yaml new file mode 100644 index 000000000..85f8cb79d --- /dev/null +++ b/helm-charts/FedML-Client/templates/deployment.yaml @@ -0,0 +1,70 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "fedml-edge-client.fullname" . }} + labels: + {{- include "fedml-edge-client.labels" . | nindent 4 }} +spec: + {{- if not .Values.autoscaling.enabled }} + replicas: {{ .Values.replicaCount }} + {{- end }} + selector: + matchLabels: + {{- include "fedml-edge-client.selectorLabels" . | nindent 6 }} + template: + metadata: + {{- with .Values.podAnnotations }} + annotations: + {{- toYaml . | nindent 8 }} + {{- end }} + labels: + {{- include "fedml-edge-client.selectorLabels" . | nindent 8 }} + spec: + {{- with .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: {{ include "fedml-edge-client.serviceAccountName" . }} + securityContext: + {{- toYaml .Values.podSecurityContext | nindent 8 }} + containers: + - name: {{ .Chart.Name }} + securityContext: + {{- toYaml .Values.securityContext | nindent 12 }} + image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + env: + - name: ACCOUNT_ID + value: "{{ .Values.env.fedmlAccountId }}" + - name: FEDML_VERSION + value: "{{ .Values.env.fedmlVersion }}" + - name: CLIENT_OS_NAME + value: "{{ .Values.env.fedmlClientOsName }}" + - name: CLIENT_DEVICE_ID + value: {{ include "fedml-edge-client.fullname" . }} + ports: + - name: http + containerPort: {{ .Values.service.port }} + protocol: TCP + resources: + {{- toYaml .Values.resources | nindent 12 }} + volumeMounts: + - name: home-dir + mountPath: {{ .Values.volume.clientHomeDirMountPath }} + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} + volumes: + - name: home-dir + hostPath: + type: DirectoryOrCreate + path: {{ .Values.volume.clientHomeDirHostPath }} diff --git a/helm-charts/FedML-Client/templates/hpa.yaml b/helm-charts/FedML-Client/templates/hpa.yaml new file mode 100644 index 000000000..344aee18e --- /dev/null +++ b/helm-charts/FedML-Client/templates/hpa.yaml @@ -0,0 +1,28 @@ +{{- if .Values.autoscaling.enabled }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: {{ include "fedml-edge-client.fullname" . }} + labels: + {{- include "fedml-edge-client.labels" . | nindent 4 }} +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ include "fedml-edge-client.fullname" . }} + minReplicas: {{ .Values.autoscaling.minReplicas }} + maxReplicas: {{ .Values.autoscaling.maxReplicas }} + metrics: + {{- if .Values.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }} + {{- end }} + {{- if .Values.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + targetAverageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }} + {{- end }} +{{- end }} diff --git a/helm-charts/FedML-Client/templates/ingress.yaml b/helm-charts/FedML-Client/templates/ingress.yaml new file mode 100644 index 000000000..f8c7bf1ff --- /dev/null +++ b/helm-charts/FedML-Client/templates/ingress.yaml @@ -0,0 +1,61 @@ +{{- if .Values.ingress.enabled -}} +{{- $fullName := include "fedml-edge-client.fullname" . -}} +{{- $svcPort := .Values.service.port -}} +{{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }} + {{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }} + {{- $_ := set .Values.ingress.annotations "kubernetes.io/ingress.class" .Values.ingress.className}} + {{- end }} +{{- end }} +{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1 +{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1beta1 +{{- else -}} +apiVersion: extensions/v1beta1 +{{- end }} +kind: Ingress +metadata: + name: {{ $fullName }} + labels: + {{- include "fedml-edge-client.labels" . | nindent 4 }} + {{- with .Values.ingress.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + {{- if and .Values.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }} + ingressClassName: {{ .Values.ingress.className }} + {{- end }} + {{- if .Values.ingress.tls }} + tls: + {{- range .Values.ingress.tls }} + - hosts: + {{- range .hosts }} + - {{ . | quote }} + {{- end }} + secretName: {{ .secretName }} + {{- end }} + {{- end }} + rules: + {{- range .Values.ingress.hosts }} + - host: {{ .host | quote }} + http: + paths: + {{- range .paths }} + - path: {{ .path }} + {{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }} + pathType: {{ .pathType }} + {{- end }} + backend: + {{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }} + service: + name: {{ $fullName }} + port: + number: {{ $svcPort }} + {{- else }} + serviceName: {{ $fullName }} + servicePort: {{ $svcPort }} + {{- end }} + {{- end }} + {{- end }} +{{- end }} diff --git a/helm-charts/FedML-Client/templates/service.yaml b/helm-charts/FedML-Client/templates/service.yaml new file mode 100644 index 000000000..08debca12 --- /dev/null +++ b/helm-charts/FedML-Client/templates/service.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "fedml-edge-client.fullname" . }} + labels: + {{- include "fedml-edge-client.labels" . | nindent 4 }} +spec: + type: {{ .Values.service.type }} + ports: + - port: {{ .Values.service.port }} + targetPort: http + protocol: TCP + name: http + selector: + {{- include "fedml-edge-client.selectorLabels" . | nindent 4 }} diff --git a/helm-charts/FedML-Client/templates/serviceaccount.yaml b/helm-charts/FedML-Client/templates/serviceaccount.yaml new file mode 100644 index 000000000..8c5442e4d --- /dev/null +++ b/helm-charts/FedML-Client/templates/serviceaccount.yaml @@ -0,0 +1,12 @@ +{{- if .Values.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "fedml-edge-client.serviceAccountName" . }} + labels: + {{- include "fedml-edge-client.labels" . | nindent 4 }} + {{- with .Values.serviceAccount.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end }} diff --git a/helm-charts/FedML-Client/templates/tests/test-connection.yaml b/helm-charts/FedML-Client/templates/tests/test-connection.yaml new file mode 100644 index 000000000..027f95340 --- /dev/null +++ b/helm-charts/FedML-Client/templates/tests/test-connection.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Pod +metadata: + name: "{{ include "fedml-edge-client.fullname" . }}-test-connection" + labels: + {{- include "fedml-edge-client.labels" . | nindent 4 }} + annotations: + "helm.sh/hook": test +spec: + containers: + - name: wget + image: busybox + command: ['wget'] + args: ['{{ include "fedml-edge-client.fullname" . }}:{{ .Values.service.port }}'] + restartPolicy: Never diff --git a/helm-charts/FedML-Client/values-template-example.yaml b/helm-charts/FedML-Client/values-template-example.yaml new file mode 100644 index 000000000..771710352 --- /dev/null +++ b/helm-charts/FedML-Client/values-template-example.yaml @@ -0,0 +1,62 @@ +name: edge-client-1 +namespace: fedml-edge-client-1 +chartName: fedml-client +chartVersion: 0.7.355 +# registry: "" +# pullPolicy: IfNotPresent +# imagePullSecrets: + # - name: myregistrykey +# ingressClassName: nginx +modules: + - client + +# ingress: + # client: + # annotations: {} + # hosts: + # - host: chart-example.local + # paths: + # - path: / + # pathType: ImplementationSpecific + # tls: + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +client: + fedmlAccountId: "1183" + # fedmlVersion: "release" + # fedmlClientOsName: "Linux" + # replicaCount: 1 + # volume: + # clientHomeDirHostPath: "/home/fedml-client" + # clientHomeDirMountPath: "/home/fedml/fedml-client" + # nameOverride: "" + # fullnameOverride: "" + # serviceAccount: + # create: true + # annotations: {} + # name: "" + # type: ClusterIP + # port: 9988 + # podAnnotations: + # nodeSelector: + # tolerations: + # affinity: + # resources: + # autoscaling: + # enabled: false + # minReplicas: 1 + # maxReplicas: 10 + # targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + # podSecurityContext: {} + # fsGroup: 2000 + # securityContext: { } + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + diff --git a/helm-charts/FedML-Client/values-template.yaml b/helm-charts/FedML-Client/values-template.yaml new file mode 100644 index 000000000..775aa11e5 --- /dev/null +++ b/helm-charts/FedML-Client/values-template.yaml @@ -0,0 +1,115 @@ +image: + repository: {{ .registry | default "public.ecr.aws/x6k8q1x9" }}/fedml-client-agent + pullPolicy: {{ .pullPolicy | default "IfNotPresent" }} + tag: "" + +{{- with .imagePullSecrets }} +imagePullSecrets: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .ingress }} +{{- if hasKey . "client" }} +ingress: + enabled: true + className: {{ $.ingressClassName }} + {{- with .client }} + {{- with .annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} + {{- with .hosts }} + hosts: + {{- toYaml . | nindent 4 }} + {{- end }} + {{- with .tls }} + tls: + {{- toYaml . | nindent 4 }} + {{- end }} + {{- end }} +{{- end }} +{{- end }} + +{{- with .client }} +replicaCount: {{ .replicaCount | default 1 }} +{{- if .nameOverride }} +nameOverride: {{ .nameOverride }} +{{- end }} +{{- if .fullnameOverride }} +fullnameOverride: {{ .fullnameOverride }} +{{- end }} + +{{- with .serviceAccount }} +serviceAccount: + create: {{ .create | default true }} + {{- with .annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} + name: {{ .name }} +{{- end }} + +{{- with .podAnnotations }} +podAnnotations: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .podSecurityContext }} +podSecurityContext: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .securityContext }} +securityContext: + {{- toYaml . | nindent 2 }} +{{- end }} + +service: + type: {{ .type | default "ClusterIP" }} + port: {{ .port | default 9988 }} + +{{- with .resources }} +resources: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .autoscaling }} +autoscaling: + enabled: false + minReplicas: {{ .minReplicas | default 1 }} + maxReplicas: {{ .minReplicas | default 10 }} + {{- if .targetCPUUtilizationPercentage }} + targetCPUUtilizationPercentage: {{ .targetCPUUtilizationPercentage }} + {{- end }} + {{- if .targetMemoryUtilizationPercentage }} + targetMemoryUtilizationPercentage: {{ .targetMemoryUtilizationPercentage }} + {{- end }} +{{- end }} + +{{- with .nodeSelector }} +nodeSelector: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .tolerations }} +tolerations: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .affinity }} +affinity: + {{- toYaml . | nindent 2 }} +{{- end }} + +env: + fedmlAccountId: {{ .fedmlAccountId }} + fedmlVersion: {{ .fedmlVersion | default "release" }} + fedmlClientOsName: {{ .fedmlClientOsName | default "Linux" }} + +{{- with .volume }} +volume: + clientHomeDirHostPath: {{ .clientHomeDirHostPath | default "/home/fedml-client" }} + clientHomeDirMountPath: {{ .clientHomeDirMountPath | default "/home/fedml/fedml-client" }} +{{- end }} + +{{- end -}} diff --git a/helm-charts/FedML-Client/values.yaml b/helm-charts/FedML-Client/values.yaml new file mode 100644 index 000000000..585ff01a2 --- /dev/null +++ b/helm-charts/FedML-Client/values.yaml @@ -0,0 +1,91 @@ +# Default values for fedml-edge-client. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + repository: public.ecr.aws/x6k8q1x9/fedml-client-agent + pullPolicy: IfNotPresent + # Overrides the image tag whose default is the chart appVersion. + tag: "" + +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "" + +serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: "" + +podAnnotations: {} + +podSecurityContext: {} + # fsGroup: 2000 + +securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + +service: + type: ClusterIP + port: 9988 + +ingress: + enabled: false + className: "" + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + hosts: + - host: chart-example.local + paths: + - path: / + pathType: ImplementationSpecific + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +autoscaling: + enabled: false + minReplicas: 1 + maxReplicas: 10 + targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + +nodeSelector: {} + +tolerations: [] + +affinity: {} + +env: + fedmlAccountId: "1183" + fedmlVersion: "release" + fedmlClientOsName: "Linux" + +volume: + clientHomeDirHostPath: "/home/fedml-client" + clientHomeDirMountPath: "/home/fedml/fedml-client" diff --git a/helm-charts/FedML-Server/Chart.yaml b/helm-charts/FedML-Server/Chart.yaml new file mode 100644 index 000000000..8ffd69eeb --- /dev/null +++ b/helm-charts/FedML-Server/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +appVersion: release +description: A Helm chart for FedML Edge Server +name: fedml-server +type: application +version: 0.7.355 diff --git a/helm-charts/FedML-Server/README.html b/helm-charts/FedML-Server/README.html new file mode 100644 index 000000000..d8e8e5e3e --- /dev/null +++ b/helm-charts/FedML-Server/README.html @@ -0,0 +1,483 @@ + + + + + + + README + + + + +

Deploy +FedML Agent to Kubernetes Clusters via KubeFATE

+

Overview

+

This document provides guide on how to run FedML client and server +agent on Kuberentes using KubeFATE. KubeFATE uses Helm charts to +facilitate the deployment process, with which we can get all the +benefits provided by Kubernetes natively. And it provides additional +values including:

+
    +
  • Declarative deployment definitions for application installing and +upgrading.
  • +
  • Easy management via the KubeFATE CLI.
  • +
  • Additional status check making sure the deployment is +successful.
  • +
  • Log aggregation for convenient debugging and monitoring.
  • +
+

The overall architecture for FedML with KubeFATE is shown in the +below diagram

+
+

+
+

The high-level steps are:

+
    +
  1. The user install KubeFATE service in the Kubernetes cluster.
  2. +
  3. The user install KubeFATE CLI program in the local machine.
  4. +
  5. The user define the FedML client deployment yaml and use KubeFATE to +deploy it.
  6. +
  7. The FedML client will register to the FedML public cloud MLOps +platform.
  8. +
  9. Optionally, the user can deploy more client instances and server +instances in the same Kubernetes cluster.
  10. +
  11. The user can now use the MLOps platform to orchestrate federated +learning trainings.
  12. +
+

Prerequisites

+
    +
  • A running Kubernetes cluster and permissions to create KubeFATE +services and namespaces required by future deployments. For the +permissions KubeFATE needs, check its rbac +yaml file.
  • +
  • Basic knowledge of FedML and KubeFATE.
  • +
+

Deploy KubeFATE Service and +CLI

+

Download the KubeFATE “k8s” deployment package from the KubeFATE release +page. Follow the KubeFATE K8s deploy guide (service +guide, cli +guide) to install KubeFATE service. For the service deployment, we +can stop after the “Preparing domain name and deploying KubeFATE in +Kubernetes” section. For the cli guide, we can stop after the “Verify +the KubeFATE CLI works properly” section.

+

In general this includes the following steps:

+
    +
  1. Deploy KubeFATE service by applying the resources defined in the +“rbac-config” and “kubefate” yaml files.
  2. +
  3. Make sure an ingress controller is deployed that can expose KubeFATE +service. Otherwise we need to change the kubefate service type to +NodePort or LoadBalancer to expose it.
  4. +
  5. Download and install the KubeFATE cli program and configure the +local config yaml file to set the server address to the exposed KubeFATE +service address.
  6. +
  7. Use kubefate version to verify the cli can work with +the service.
  8. +
+

Upload FedML Charts

+

KubeFATE internally uses Helm chart to deploy FML application. To +support deploying FedML client, use the following command to upload +FedML client charts to the KubeFATE service:

+
$ kubefate chart upload -f fedml-client-<version>.tgz
+

After uploading the chart, use the kubefate chart list +command to verify the chart is successfully imported. The output should +contain an item looks like

+
UUID                       NAME             VERSION                 APPVERSION                   
+<OTHERS OMITTED>                                
+<some uuid>                fedml-client     0.7.355                 release        
+

If we want to deploy the FedML server too, we need to use +kubefate chart upload -f fedml-server-<version>.tgz +to upload the server chart.

+

Deploy the FedML Edge Client

+

Prepare a yaml file, for example, “fedml_client.yaml”, as below:

+
name: edge-client-1
+namespace: fedml-edge-client-1
+chartName: fedml-client
+chartVersion: 0.7.355
+# registry: ""
+# pullPolicy: IfNotPresent
+# imagePullSecrets:
+  # - name: myregistrykey
+# ingressClassName: nginx
+modules:
+  - client
+
+# ingress:
+  # client:
+    # annotations: {}
+    # hosts:
+      # - host: chart-example.local
+      #   paths:
+          # - path: /
+          #   pathType: ImplementationSpecific
+    # tls:
+    #  - secretName: chart-example-tls
+    #    hosts:
+    #      - chart-example.local
+
+client:
+  fedmlAccountId: <your account id>
+  # fedmlVersion: "release"
+  # fedmlClientOsName: "Linux"
+  # replicaCount: 1
+  # volume:
+    # clientHomeDirHostPath: "/home/fedml-client"
+    # clientHomeDirMountPath: "/home/fedml/fedml-client"
+  # nameOverride: ""
+  # fullnameOverride: ""
+  # serviceAccount:
+    # create: true
+    # annotations: {}
+    # name: ""
+  # type: ClusterIP
+  # port: 9988
+  # podAnnotations:
+  # nodeSelector:
+  # tolerations:
+  # affinity:
+  # resources:
+  # autoscaling:
+    # enabled: false
+    # minReplicas: 1
+    # maxReplicas: 10
+    # targetCPUUtilizationPercentage: 80
+    # targetMemoryUtilizationPercentage: 80
+  # podSecurityContext: {}
+    # fsGroup: 2000
+  # securityContext: { }
+    # capabilities:
+    #   drop:
+    #   - ALL
+    # readOnlyRootFilesystem: true
+    # runAsNonRoot: true
+    # runAsUser: 1000
+

The layout of the file is the typically called the “cluster yaml” for +KubeFATE. You can change the name and namespace fields according to your +needs. And the fedmlAccountId id field should be set to +your account id in the FedML MLOps platform. For the meanings of the +other fields, please refer to the helm chart values file. Typically, we +don’t need to change the default settings.

+

And, if the Kubernetes namespace doesn’t exist, we need to create it +beforehand:

+
$ kubectl create ns <your namespace>
+

Now we can install the above defined FedML client:

+
$ kubefate cluster install -f fedml_client.yaml
+

The above command will give a job_UUID we can use to +check the status:

+
# View deployment status
+$ kubefate job describe ${job_UUID}
+

When the job status is Success, it indicates that the +deployment succeeded. Login to your MLOps account and the client should +be listed under the “Edge Device” page.

+

Check Deployed Client Status

+

After the deployment, we can use the follow command to get the UUID +of the deployed instance:

+
$ kubefate cluster list
+

Locate the UUID of the “cluster” and then we can get the detailed +status of it by:

+
$ kubefate cluster describe <UUID>
+

And check the logs of this instance:

+
$ kubefate cluster logs <UUID>
+

The logs subcommand can be useful during the future +training process.

+

(Optional) Deploy FedML +Server

+

We can optionally deploy FedML server instance that can be used in a +FedML “Run”. As described above, we need to firstly upload the FedML +server chart. And then we prepare the “cluster yaml” for server +deployment as:

+
name: edge-server-1
+namespace: fedml-edge-server-1
+chartName: fedml-server
+chartVersion: 0.7.355
+# registry: ""
+# pullPolicy: IfNotPresent
+# imagePullSecrets:
+  # - name: myregistrykey
+# ingressClassName: nginx
+modules:
+  - server
+
+# ingress:
+  # server:
+    # annotations: {}
+    # hosts:
+      # - host: chart-example.local
+      #   paths:
+          # - path: /
+          #   pathType: ImplementationSpecific
+    # tls:
+    #  - secretName: chart-example-tls
+    #    hosts:
+    #      - chart-example.local
+
+server:
+  fedmlAccountId: <your account id>
+  # fedmlVersion: "release"
+  # fedmlServerOsName: "Linux"
+  # replicaCount: 1
+  # volume:
+    # serverHomeDirHostPath: "/home/fedml-server"
+    # serverHomeDirMountPath: "/home/fedml/fedml-server"
+  # nameOverride: ""
+  # fullnameOverride: ""
+  # serviceAccount:
+    # create: true
+    # annotations: {}
+    # name: ""
+  # type: ClusterIP
+  # port: 9999
+  # podAnnotations:
+  # nodeSelector:
+  # tolerations:
+  # affinity:
+  # resources:
+  # autoscaling:
+    # enabled: false
+    # minReplicas: 1
+    # maxReplicas: 10
+    # targetCPUUtilizationPercentage: 80
+    # targetMemoryUtilizationPercentage: 80
+  # podSecurityContext: {}
+    # fsGroup: 2000
+  # securityContext: { }
+    # capabilities:
+    #   drop:
+    #   - ALL
+    # readOnlyRootFilesystem: true
+    # runAsNonRoot: true
+    # runAsUser: 1000
+

The configurable parameters are almost the same as the client +deployment. And we can use the same kubefate chart install, +kubefate cluster describe, +kubefate cluster logs commands to check its status.

+

After it has been successfully deployed, we can choose this server +instance when creating new FedML “Run”s.

+

Next Steps

+

We can follow same steps to deploy FedML clients and servers to other +namespaces in same Kubernetes cluster, or to other Kubernetes clusters +(which requires installing KubeFATE in those clusters too). Once we and +our collaborators have deployed all the instances we need, we can start +FedML training in the MLOps platform. This can be done by following the +MLOps platform’s official +document. We can now skip the “2. Install FedML Agent: fedml login +$account_id” section as now we have used KubeFATE to achieve that.

+ + diff --git a/helm-charts/FedML-Server/templates/NOTES.txt b/helm-charts/FedML-Server/templates/NOTES.txt new file mode 100644 index 000000000..10ed1b5e1 --- /dev/null +++ b/helm-charts/FedML-Server/templates/NOTES.txt @@ -0,0 +1 @@ +You may visit fedml documents by the URL https://doc.fedml.ai. \ No newline at end of file diff --git a/helm-charts/FedML-Server/templates/_helpers.tpl b/helm-charts/FedML-Server/templates/_helpers.tpl new file mode 100644 index 000000000..06735dd1f --- /dev/null +++ b/helm-charts/FedML-Server/templates/_helpers.tpl @@ -0,0 +1,68 @@ +{{/* +Expand the name of the chart. +*/}} +{{- define "fedml-edge-server.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "fedml-edge-server.fullname" -}} +{{- if .Values.fullnameOverride }} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- $name := default .Chart.Name .Values.nameOverride }} +{{- if contains $name .Release.Name }} +{{- .Release.Name | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} +{{- end }} +{{- end }} +{{- end }} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "fedml-edge-server.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "fedml-edge-server.labels" -}} +helm.sh/chart: {{ include "fedml-edge-server.chart" . }} +{{ include "fedml-edge-server.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +owner: kubefate +cluster: fedml-server +heritage: {{ .Release.Service }} +release: {{ .Release.Name }} +chart: {{ .Chart.Name }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "fedml-edge-server.selectorLabels" -}} +app.kubernetes.io/name: {{ include "fedml-edge-server.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +name: {{ .Release.Name | quote }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "fedml-edge-server.serviceAccountName" -}} +{{- if .Values.serviceAccount.create }} +{{- default (include "fedml-edge-server.fullname" .) .Values.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.serviceAccount.name }} +{{- end }} +{{- end }} diff --git a/helm-charts/FedML-Server/templates/deployment.yaml b/helm-charts/FedML-Server/templates/deployment.yaml new file mode 100644 index 000000000..1f12d29ac --- /dev/null +++ b/helm-charts/FedML-Server/templates/deployment.yaml @@ -0,0 +1,70 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "fedml-edge-server.fullname" . }} + labels: + {{- include "fedml-edge-server.labels" . | nindent 4 }} +spec: + {{- if not .Values.autoscaling.enabled }} + replicas: {{ .Values.replicaCount }} + {{- end }} + selector: + matchLabels: + {{- include "fedml-edge-server.selectorLabels" . | nindent 6 }} + template: + metadata: + {{- with .Values.podAnnotations }} + annotations: + {{- toYaml . | nindent 8 }} + {{- end }} + labels: + {{- include "fedml-edge-server.selectorLabels" . | nindent 8 }} + spec: + {{- with .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: {{ include "fedml-edge-server.serviceAccountName" . }} + securityContext: + {{- toYaml .Values.podSecurityContext | nindent 8 }} + containers: + - name: {{ .Chart.Name }} + securityContext: + {{- toYaml .Values.securityContext | nindent 12 }} + image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + env: + - name: ACCOUNT_ID + value: "{{ .Values.env.fedmlAccountId }}" + - name: FEDML_VERSION + value: "{{ .Values.env.fedmlVersion }}" + - name: SERVER_OS_NAME + value: "{{ .Values.env.fedmlServerOsName }}" + - name: SERVER_DEVICE_ID + value: {{ include "fedml-edge-server.fullname" . }} + ports: + - name: http + containerPort: {{ .Values.service.port }} + protocol: TCP + resources: + {{- toYaml .Values.resources | nindent 12 }} + volumeMounts: + - name: home-dir + mountPath: {{ .Values.volume.serverHomeDirMountPath }} + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} + volumes: + - name: home-dir + hostPath: + type: DirectoryOrCreate + path: {{ .Values.volume.serverHomeDirHostPath }} diff --git a/helm-charts/FedML-Server/templates/hpa.yaml b/helm-charts/FedML-Server/templates/hpa.yaml new file mode 100644 index 000000000..6fa213341 --- /dev/null +++ b/helm-charts/FedML-Server/templates/hpa.yaml @@ -0,0 +1,28 @@ +{{- if .Values.autoscaling.enabled }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: {{ include "fedml-edge-server.fullname" . }} + labels: + {{- include "fedml-edge-server.labels" . | nindent 4 }} +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ include "fedml-edge-server.fullname" . }} + minReplicas: {{ .Values.autoscaling.minReplicas }} + maxReplicas: {{ .Values.autoscaling.maxReplicas }} + metrics: + {{- if .Values.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }} + {{- end }} + {{- if .Values.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + targetAverageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }} + {{- end }} +{{- end }} diff --git a/helm-charts/FedML-Server/templates/ingress.yaml b/helm-charts/FedML-Server/templates/ingress.yaml new file mode 100644 index 000000000..24edd68ee --- /dev/null +++ b/helm-charts/FedML-Server/templates/ingress.yaml @@ -0,0 +1,61 @@ +{{- if .Values.ingress.enabled -}} +{{- $fullName := include "fedml-edge-server.fullname" . -}} +{{- $svcPort := .Values.service.port -}} +{{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }} + {{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }} + {{- $_ := set .Values.ingress.annotations "kubernetes.io/ingress.class" .Values.ingress.className}} + {{- end }} +{{- end }} +{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1 +{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1beta1 +{{- else -}} +apiVersion: extensions/v1beta1 +{{- end }} +kind: Ingress +metadata: + name: {{ $fullName }} + labels: + {{- include "fedml-edge-server.labels" . | nindent 4 }} + {{- with .Values.ingress.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + {{- if and .Values.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }} + ingressClassName: {{ .Values.ingress.className }} + {{- end }} + {{- if .Values.ingress.tls }} + tls: + {{- range .Values.ingress.tls }} + - hosts: + {{- range .hosts }} + - {{ . | quote }} + {{- end }} + secretName: {{ .secretName }} + {{- end }} + {{- end }} + rules: + {{- range .Values.ingress.hosts }} + - host: {{ .host | quote }} + http: + paths: + {{- range .paths }} + - path: {{ .path }} + {{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }} + pathType: {{ .pathType }} + {{- end }} + backend: + {{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }} + service: + name: {{ $fullName }} + port: + number: {{ $svcPort }} + {{- else }} + serviceName: {{ $fullName }} + servicePort: {{ $svcPort }} + {{- end }} + {{- end }} + {{- end }} +{{- end }} diff --git a/helm-charts/FedML-Server/templates/service.yaml b/helm-charts/FedML-Server/templates/service.yaml new file mode 100644 index 000000000..676b29063 --- /dev/null +++ b/helm-charts/FedML-Server/templates/service.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "fedml-edge-server.fullname" . }} + labels: + {{- include "fedml-edge-server.labels" . | nindent 4 }} +spec: + type: {{ .Values.service.type }} + ports: + - port: {{ .Values.service.port }} + targetPort: http + protocol: TCP + name: http + selector: + {{- include "fedml-edge-server.selectorLabels" . | nindent 4 }} diff --git a/helm-charts/FedML-Server/templates/serviceaccount.yaml b/helm-charts/FedML-Server/templates/serviceaccount.yaml new file mode 100644 index 000000000..eadca78f6 --- /dev/null +++ b/helm-charts/FedML-Server/templates/serviceaccount.yaml @@ -0,0 +1,12 @@ +{{- if .Values.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "fedml-edge-server.serviceAccountName" . }} + labels: + {{- include "fedml-edge-server.labels" . | nindent 4 }} + {{- with .Values.serviceAccount.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end }} diff --git a/helm-charts/FedML-Server/templates/tests/test-connection.yaml b/helm-charts/FedML-Server/templates/tests/test-connection.yaml new file mode 100644 index 000000000..2a35a226f --- /dev/null +++ b/helm-charts/FedML-Server/templates/tests/test-connection.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Pod +metadata: + name: "{{ include "fedml-edge-server.fullname" . }}-test-connection" + labels: + {{- include "fedml-edge-server.labels" . | nindent 4 }} + annotations: + "helm.sh/hook": test +spec: + containers: + - name: wget + image: busybox + command: ['wget'] + args: ['{{ include "fedml-edge-server.fullname" . }}:{{ .Values.service.port }}'] + restartPolicy: Never diff --git a/helm-charts/FedML-Server/values-template-example.yaml b/helm-charts/FedML-Server/values-template-example.yaml new file mode 100644 index 000000000..0433d2440 --- /dev/null +++ b/helm-charts/FedML-Server/values-template-example.yaml @@ -0,0 +1,62 @@ +name: edge-server-1 +namespace: fedml-edge-server-1 +chartName: fedml-server +chartVersion: 0.7.355 +# registry: "" +# pullPolicy: IfNotPresent +# imagePullSecrets: + # - name: myregistrykey +# ingressClassName: nginx +modules: + - server + +# ingress: + # server: + # annotations: {} + # hosts: + # - host: chart-example.local + # paths: + # - path: / + # pathType: ImplementationSpecific + # tls: + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +server: + fedmlAccountId: "1183" + # fedmlVersion: "release" + # fedmlServerOsName: "Linux" + # replicaCount: 1 + # volume: + # serverHomeDirHostPath: "/home/fedml-server" + # serverHomeDirMountPath: "/home/fedml/fedml-server" + # nameOverride: "" + # fullnameOverride: "" + # serviceAccount: + # create: true + # annotations: {} + # name: "" + # type: ClusterIP + # port: 9999 + # podAnnotations: + # nodeSelector: + # tolerations: + # affinity: + # resources: + # autoscaling: + # enabled: false + # minReplicas: 1 + # maxReplicas: 10 + # targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + # podSecurityContext: {} + # fsGroup: 2000 + # securityContext: { } + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + diff --git a/helm-charts/FedML-Server/values-template.yaml b/helm-charts/FedML-Server/values-template.yaml new file mode 100644 index 000000000..559124015 --- /dev/null +++ b/helm-charts/FedML-Server/values-template.yaml @@ -0,0 +1,115 @@ +image: + repository: {{ .registry | default "public.ecr.aws/x6k8q1x9" }}/fedml-edge-server + pullPolicy: {{ .pullPolicy | default "IfNotPresent" }} + tag: "" + +{{- with .imagePullSecrets }} +imagePullSecrets: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .ingress }} +{{- if hasKey . "server" }} +ingress: + enabled: true + className: {{ $.ingressClassName }} + {{- with .server }} + {{- with .annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} + {{- with .hosts }} + hosts: + {{- toYaml . | nindent 4 }} + {{- end }} + {{- with .tls }} + tls: + {{- toYaml . | nindent 4 }} + {{- end }} + {{- end }} +{{- end }} +{{- end }} + +{{- with .server }} +replicaCount: {{ .replicaCount | default 1 }} +{{- if .nameOverride }} +nameOverride: {{ .nameOverride }} +{{- end }} +{{- if .fullnameOverride }} +fullnameOverride: {{ .fullnameOverride }} +{{- end }} + +{{- with .serviceAccount }} +serviceAccount: + create: {{ .create | default true }} + {{- with .annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} + name: {{ .name }} +{{- end }} + +{{- with .podAnnotations }} +podAnnotations: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .podSecurityContext }} +podSecurityContext: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .securityContext }} +securityContext: + {{- toYaml . | nindent 2 }} +{{- end }} + +service: + type: {{ .type | default "ClusterIP" }} + port: {{ .port | default 9999 }} + +{{- with .resources }} +resources: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .autoscaling }} +autoscaling: + enabled: false + minReplicas: {{ .minReplicas | default 1 }} + maxReplicas: {{ .minReplicas | default 10 }} + {{- if .targetCPUUtilizationPercentage }} + targetCPUUtilizationPercentage: {{ .targetCPUUtilizationPercentage }} + {{- end }} + {{- if .targetMemoryUtilizationPercentage }} + targetMemoryUtilizationPercentage: {{ .targetMemoryUtilizationPercentage }} + {{- end }} +{{- end }} + +{{- with .nodeSelector }} +nodeSelector: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .tolerations }} +tolerations: + {{- toYaml . | nindent 2 }} +{{- end }} + +{{- with .affinity }} +affinity: + {{- toYaml . | nindent 2 }} +{{- end }} + +env: + fedmlAccountId: {{ .fedmlAccountId }} + fedmlVersion: {{ .fedmlVersion | default "release" }} + fedmlServerOsName: {{ .fedmlServerOsName | default "Linux" }} + +{{- with .volume }} +volume: + serverHomeDirHostPath: {{ .serverHomeDirHostPath | default "/home/fedml-server" }} + serverHomeDirMountPath: {{ .serverHomeDirMountPath | default "/home/fedml/fedml-server" }} +{{- end }} + +{{- end -}} diff --git a/helm-charts/FedML-Server/values.yaml b/helm-charts/FedML-Server/values.yaml new file mode 100644 index 000000000..576bafae6 --- /dev/null +++ b/helm-charts/FedML-Server/values.yaml @@ -0,0 +1,91 @@ +# Default values for fedml-edge-server. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + repository: public.ecr.aws/x6k8q1x9/fedml-edge-server + pullPolicy: IfNotPresent + # Overrides the image tag whose default is the chart appVersion. + tag: "" + +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "" + +serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: "" + +podAnnotations: {} + +podSecurityContext: {} + # fsGroup: 2000 + +securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + +service: + type: ClusterIP + port: 9999 + +ingress: + enabled: false + className: "" + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + hosts: + - host: chart-example.local + paths: + - path: / + pathType: ImplementationSpecific + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +autoscaling: + enabled: false + minReplicas: 1 + maxReplicas: 10 + targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + +nodeSelector: {} + +tolerations: [] + +affinity: {} + +env: + fedmlAccountId: "1183" + fedmlVersion: "release" + fedmlServerOsName: "Linux" + +volume: + serverHomeDirHostPath: "/home/fedml-server" + serverHomeDirMountPath: "/home/fedml/fedml-server" From 378985d5a154ac6f0592228596fe2e7129abe039 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B9=BB=E5=BD=B1=E6=98=BE=E5=BD=A2?= Date: Tue, 27 Dec 2022 16:40:36 +0800 Subject: [PATCH 21/28] Fix typo "Rebbitmq" to "RabbitMQ" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 幻影显形 --- docker-deploy/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-deploy/README.md b/docker-deploy/README.md index 467c55792..df90f0c31 100644 --- a/docker-deploy/README.md +++ b/docker-deploy/README.md @@ -76,7 +76,7 @@ compute_core=4 ``` -* For more details about FATE on Spark with Rebbitmq please refer to this [document](../docs/FATE_On_Spark.md). +* For more details about FATE on Spark with RabbitMQ please refer to this [document](../docs/FATE_On_Spark.md). * For more details about FATE on Spark with Pulsar, refer to this [document](../docs/FATE_On_Spark_With_Pulsar.md) * For more details about FATE on Spark with local pulsar, refer to this [document](placeholder) From f4da6f59911730cc8cf933db6ebe83be53043df8 Mon Sep 17 00:00:00 2001 From: Fangchi Wang <78837577+wfangchi@users.noreply.github.com> Date: Tue, 3 Jan 2023 10:59:57 +0800 Subject: [PATCH 22/28] Add markdown document for FedML support (#840) And remove the generated html files. Signed-off-by: Fangchi Wang --- docs/Deploy_FedML_Agent_to_Kubernetes.md | 243 ++++++++++++ docs/images/fedml_with_kubefate.png | Bin 0 -> 876588 bytes helm-charts/FedML-Client/README.html | 483 ----------------------- helm-charts/FedML-Server/README.html | 483 ----------------------- 4 files changed, 243 insertions(+), 966 deletions(-) create mode 100644 docs/Deploy_FedML_Agent_to_Kubernetes.md create mode 100644 docs/images/fedml_with_kubefate.png delete mode 100644 helm-charts/FedML-Client/README.html delete mode 100644 helm-charts/FedML-Server/README.html diff --git a/docs/Deploy_FedML_Agent_to_Kubernetes.md b/docs/Deploy_FedML_Agent_to_Kubernetes.md new file mode 100644 index 000000000..1e916ffc3 --- /dev/null +++ b/docs/Deploy_FedML_Agent_to_Kubernetes.md @@ -0,0 +1,243 @@ +## Deploy FedML Agent to Kubernetes Clusters via KubeFATE + +### Overview +This document provides guide on how to run FedML client and server agent on Kubernetes using KubeFATE. KubeFATE uses Helm charts to facilitate the deployment process, with which we can get all the benefits provided by Kubernetes natively. And it provides additional values including: + +* Declarative deployment definitions for application installing and upgrading. +* Easy management via the KubeFATE CLI. +* Additional status check making sure the deployment is successful. +* Log aggregation for convenient debugging and monitoring. + +The overall architecture for FedML with KubeFATE is shown in the below diagram + +
+ +
+ +The high-level steps are: + +1. The user install KubeFATE service in the Kubernetes cluster. +2. The user install KubeFATE CLI program in the local machine. +3. The user define the FedML client deployment yaml and use KubeFATE to deploy it. +4. The FedML client will register to the FedML public cloud MLOps platform. +5. Optionally, the user can deploy more client instances and server instances in the same Kubernetes cluster. +6. The user can now use the MLOps platform to orchestrate federated learning trainings. + +### Prerequisites + +* A running Kubernetes cluster and permissions to create KubeFATE services and namespaces required by future deployments. For the permissions KubeFATE needs, check its [rbac yaml](https://github.com/FederatedAI/KubeFATE/blob/master/k8s-deploy/rbac-config.yaml) file. +* Basic knowledge of [FedML](https://github.com/FedML-AI/FedML) and [KubeFATE](https://github.com/FederatedAI/KubeFATE). + +### Deploy KubeFATE Service and CLI +Download the KubeFATE "k8s" deployment package from the KubeFATE [release page](https://github.com/FederatedAI/KubeFATE/releases). Follow the KubeFATE K8s deploy guide ([service guide](https://github.com/FederatedAI/KubeFATE/blob/master/k8s-deploy/README.md), [cli guide](https://github.com/FederatedAI/KubeFATE/blob/master/docs/KubeFATE_CLI_user_guide.md)) to install KubeFATE service. For the service deployment, we can stop after the "Preparing domain name and deploying KubeFATE in Kubernetes" section. For the cli guide, we can stop after the "Verify the KubeFATE CLI works properly" section. + +In general this includes the following steps: + +1. Deploy KubeFATE service by applying the resources defined in the "rbac-config" and "kubefate" yaml files. +2. Make sure an ingress controller is deployed that can expose KubeFATE service. Otherwise we need to change the kubefate service type to NodePort or LoadBalancer to expose it. +3. Download and install the KubeFATE cli program and configure the local config yaml file to set the server address to the exposed KubeFATE service address. +4. Use `kubefate version` to verify the cli can work with the service. + +### (Optional) Build and Upload FedML Charts +KubeFATE internally uses Helm chart to deploy FML application. By default, KubeFATE will download the FedML charts automatically from its GitHub repo. Alternatively, we can build the chart packages locally and upload them to KubeFATE service, which is useful in scenarios like air-gapped environment. To support deploying FedML client, use the following command to package and upload FedML client charts to the KubeFATE service: + +```bash +$ helm package /helm-charts/FedML-Client +$ kubefate chart upload -f fedml-client-.tgz +``` + +After uploading the chart, use the `kubefate chart list` command to verify the chart is successfully imported. The output should contain an item looks like + +```bash +UUID NAME VERSION APPVERSION + + fedml-client 0.7.355 release +``` + +If we want to deploy the FedML server too, we need to package the server chart and use `kubefate chart upload -f fedml-server-.tgz` to upload it. + +### Deploy the FedML Edge Client +Prepare a yaml file, for example, "fedml_client.yaml", as below: + +```yaml +name: edge-client-1 +namespace: fedml-edge-client-1 +chartName: fedml-client +chartVersion: 0.7.355 + # registry: "" + # pullPolicy: IfNotPresent + # imagePullSecrets: +# - name: myregistrykey +# ingressClassName: nginx +modules: + - client + + # ingress: + # client: + # annotations: {} + # hosts: + # - host: chart-example.local + # paths: + # - path: / + # pathType: ImplementationSpecific + # tls: + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +client: + fedmlAccountId: + # fedmlVersion: "release" + # fedmlClientOsName: "Linux" + # replicaCount: 1 + # volume: + # clientHomeDirHostPath: "/home/fedml-client" + # clientHomeDirMountPath: "/home/fedml/fedml-client" + # nameOverride: "" + # fullnameOverride: "" + # serviceAccount: + # create: true + # annotations: {} + # name: "" + # type: ClusterIP + # port: 9988 + # podAnnotations: + # nodeSelector: + # tolerations: + # affinity: + # resources: + # autoscaling: + # enabled: false + # minReplicas: 1 + # maxReplicas: 10 + # targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + # podSecurityContext: {} + # fsGroup: 2000 + # securityContext: { } + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 +``` + +The layout of the file is the typically called the "cluster yaml" for KubeFATE. You can change the name and namespace fields according to your needs. And the `fedmlAccountId` id field should be set to your account id in the FedML MLOps platform. For the meanings of the other fields, please refer to the helm chart values file. Typically, we don’t need to change the default settings. + +And, if the Kubernetes namespace doesn't exist, we need to create it beforehand: +```bash +$ kubectl create ns +``` + +Now we can install the above defined FedML client: + +```bash +$ kubefate cluster install -f fedml_client.yaml +``` + +The above command will give a `job_UUID` we can use to check the status: + +```bash +# View deployment status +$ kubefate job describe ${job_UUID} +``` + +When the job status is `Success`, it indicates that the deployment succeeded. Login to your MLOps account and the client should be listed under the "Edge Device" page. + +#### Check Deployed Client Status + +After the deployment, we can use the follow command to get the UUID of the deployed instance: + +```bash +$ kubefate cluster list +``` + +Locate the UUID of the "cluster" and then we can get the detailed status of it by: + +```bash +$ kubefate cluster describe +``` + +And check the logs of this instance: +```bash +$ kubefate cluster logs +``` + +The `logs` subcommand can be useful during the future training process. + +### (Optional) Deploy FedML Server + +We can optionally deploy FedML server instance that can be used in a FedML "Run". As described above, we can optionally package and upload the FedML server chart. And then we prepare the "cluster yaml" for server deployment as: + +```yaml +name: edge-server-1 +namespace: fedml-edge-server-1 +chartName: fedml-server +chartVersion: 0.7.355 + # registry: "" + # pullPolicy: IfNotPresent + # imagePullSecrets: +# - name: myregistrykey +# ingressClassName: nginx +modules: + - server + + # ingress: + # server: + # annotations: {} + # hosts: + # - host: chart-example.local + # paths: + # - path: / + # pathType: ImplementationSpecific + # tls: + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +server: + fedmlAccountId: + # fedmlVersion: "release" + # fedmlServerOsName: "Linux" + # replicaCount: 1 + # volume: + # serverHomeDirHostPath: "/home/fedml-server" + # serverHomeDirMountPath: "/home/fedml/fedml-server" + # nameOverride: "" + # fullnameOverride: "" + # serviceAccount: + # create: true + # annotations: {} + # name: "" + # type: ClusterIP + # port: 9999 + # podAnnotations: + # nodeSelector: + # tolerations: + # affinity: + # resources: + # autoscaling: + # enabled: false + # minReplicas: 1 + # maxReplicas: 10 + # targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + # podSecurityContext: {} + # fsGroup: 2000 + # securityContext: { } + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 +``` + +The configurable parameters are almost the same as the client deployment. And we can use the same `kubefate chart install`, `kubefate cluster describe`, `kubefate cluster logs` commands to check its status. + +After it has been successfully deployed, we can choose this server instance when creating new FedML "Run"s. + +### Next Steps + +We can follow same steps to deploy FedML clients and servers to other namespaces in same Kubernetes cluster, or to other Kubernetes clusters (which requires installing KubeFATE in those clusters too). Once we and our collaborators have deployed all the instances we need, we can start FedML training in the MLOps platform. This can be done by following the MLOps platform's [official document](https://open.fedml.ai/octopus/userGuides/index). We can now skip the "2. Install FedML Agent: fedml login $account_id" section as now we have used KubeFATE to achieve that. diff --git a/docs/images/fedml_with_kubefate.png b/docs/images/fedml_with_kubefate.png new file mode 100644 index 0000000000000000000000000000000000000000..84d821df7e0c9299f38101ea2ec6e27ebdc6dca7 GIT binary patch literal 876588 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

UG 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

#MQ2OtDYhRvz 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

    *>dfTiR4p%8tmbzXCn*YXzrhGcK67E=C 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

    |@><)}MRm|qB_@j?ev^Bv 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≫`Z%KohEZ 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 z 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

    o8`F( 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%0ATXTraajAFeZD)4F&sO0|MKSQZ2-i6mA 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

    @U2n-D=&R36`ySg1PHm^GM$I)R+`e*ftyq z@rjjfeJmplcZ*XwcwW#;Yck~JII@%7^0@SGy=-L$Js8y*wb2->{7@;iD()y!`f{^@ zl&FIUq&N1{3%D|M6LffP>7ml!tR#K8_3qAQL-Cpgcx%FZi$>zKya6XcZp>GZy%|?1 zgS0z`?z_oI3PXyIH{Z5gbeC?|lZcUxIL?^fR6Xmg7@8Kf4&EvnzA;hoPe@n*bUO@N z?5Q|xT;YN}A}&(+B2U1%X#CZWy{MHdDAf?R-NX!(4q^RmqdH zQ#(H`(VI*n+(ugd?#_y=xfi$?weOu$++-)KsJ&T(c=-V7A?|6Ec>fJMDLgC=cgg9U z@_7@ugu!eJE-+hRV@4vUJ7GYCjHF3z5`AW-kV(?-^o?52>CA6>y@6Qyh_r%H$Caf> zTMJ3-`-B)}MhxLH)mcSyKBRk%JLJPdIGAug&w-mm@39&yr%2`-n|#00EAxD{9&b@5 zJ{gBKTU<)l_lQC2Z##>y-$t*^#&U0aPhk&(MEd6+`$vog)oKa^GIBE{Q;JdRF|UJO z#HkSV1F300xW*hld(u{8=sSvpebjpM?I*2~_OYTG1x_lE6TUvbv&?5Y+CGSVfPH#r z)Bc$(Gj!6t!Bet38T$O@kE)mr?aHu$+WwxD81yf3P3RFTne+7w?qTQ0+M~o zEWi1ac`rh1co&i1;j&(dZRVL)&b#E@UnHGO?rm9pY6DY9RUP$dD$0u`rl%aqHHXUrJ|o#}GtyxWo0E#4^=P4iCjaB6|9 zro2|BzUy_ybc_bE1#re4P172u9f^f+yvJSHkPG->_QdA{;c@^nLESQ4fORlZz=jNC z#l~;=EL^%Vwb?FoGt9~v(|fWz zpk`&WmmI0RV_H_El;VD-XLbFUaANDx^>jhsPRf3ASUM>`B0$H}vFx4PLoc|rM2v#u ztl}pKBnSq5tMBz&1z}IrW@IZc(#AIfWwg^q=}Bu#AXKHx zO1hoaqHem)Hh{-|$RDp-Kb8-(d5TNV3nD1+vz0iZU zgX)1lJpJ#~y5j)Hg4S+=qW?RO8?QYpjz6@V+5?m#FQ{9u1b3p^jl3y|q<^wV{Z~j_ z?s;z?S1uWD;WJi@W+xF%Rl|lvGX+EeXu^|vYIX< zquQW=J6;$oX7M#_lNOU$I8DPTcJ@=E=l-F~s1=6PpZ5%_6?>9~*wmaG4L;|^D_82P zaNp(bFTIY7C8Z*VitjhpI#qT`F~7XX_PVHy3Q*KNIne+EG+J1)&I}7kdk<2L3CzCX zhY*w$L+~Z zLXZ@7hCE_XJ{hBrf!D+}fcIiW5m^yFb`--Db>FSXz=9YcWAj-xTlZA?1&ZE=^_dh5 zGlH`6*n6h;%xwSF6y-*(cZ0CebEPjeFje!kK&3; z?reF7H0rZ0#2%AsCk-I)#^n7ie;2sU>ijx2`@Zs-6QspVVF*wK%aR#Su=UxqB+0-uNdnlkB(VfKa64h=5MXls7c zPo!Otk!Ez>UlhaTtyVXmfjP;`-3@4+ktC=SqWSuIXqsQ+nNR&+gj=>YTr01VAeVdC zzmCD|@MT%wF|xz$L~Qi8?8}EQ=+(H}x4a)uPTl)vB0V1MZXYK*5tJ@ZaJP@mbX}j6 zK~9{5!4o6mLM0?0p!4LVxA{PtA^PL|07p)ZC9r2a05R9k3wb)(Qn1*mH?szQJF1xL zO3)btNoAlFTDJ|yI!W+z7N4)aMr99{7Gke1wj_KR`!&u~JfTmsM5#LT@f9PTS5p%I zI9ryb%i0C&0;97Z^9;V{O^?`&oMHg-)cYS>SEqh;%f2+$xBLCEee$;GaJ@vWcB;oL zozI?FF%6rI0hT|q(_GfO`I>Qpi+XH*kKYih3(7m;Icf|bN7N^koTN{9J&rTb-33G_OrYS5sm-MqW~W`$F(p^o;4nyokt(#ed_)WaxJ3 z1*c#3D@Q%hcX@JWwe(JwT2*e@5eoMB$pTyEGSkT?OS#^^+IY@}TZiB`GEjzD zX(9hZt}e|VE7CbrvlXgn^M!D_CR}n`J|~~wMt;nkCuMq3IO?20r0NG{q$!g~xZ|ED zn95G?HhW^%6EhmYA5%HBJuCNB3%;@51dEjdH%r-{gMT6|{j+sOdGN+(?LrxZY7cLN z%tOmSJEEo2JBqDVYsudx`7gV#NlsJ=c<64-%7-n8jGdKZPTm&_3{l>m@{~?aN(-5i z0WJ|n#kQVHx<4_|9Q3QPHUb)%5J5d@ReL09JFk1&xuIgvTrQ&Mok}Ob3*x#YW)dD+ohjnepHVkjR!lEZK(0R_!2Ja?9BniO4CP(c1|-yhg@UKP`pK0Gg@ z_N~!|wBDfOn*^3y4LWU}L7LL&Iu{gi{LMx(w~I;>VpcZAizu@kyF?# zCwJe6b^HGdV^U}92%81tqniNv^i`&A_sJpe*k?BN8q>NWYe${gVK^A{#ypo23y5j- zanN2bzXkrSnABJrAvNDuOarH}EAdsvMjG~-0K{g2oAZFKBSS6&n#FYn1w@3FRS?(1 z0^y|Ppad{4NMr^}0Z%M|PB!l`2W!U> zsr)X(Zd^f`O9!xgTtzB08o3f>)PZW%XZ+nZBSWYWZYG;LKT7` zT-Kdx0Q@%MZ44GqS}k2c)XwRDm}C0AjpKV!AiG)me**RVO{JGH9GunmrWE^4f%5(_ z>Fqm}(!B%ElN2>Li}{@Ih#Qn(`U*gTmhB6_jbuw&ePmqg(FxcS#MjUzDh&-6i5vXnm5P z^k3SO2S5ubf|AF39SQvw_b*&_NeXNWDd)^Cey$^Lzrrm=5?^*kPLSXD9>p)Ti=t`J z9fr3HS@=?~k}B-9t)lT(NU9gG>gjhAv1Ud&-f;0ITl_tHA=YC)E$`j#^&Fb5<@ek~ zCa22aL1CgvZ_T4nxJ;;vdJWXj9TU4ll|I_6Q zrk>HkOVJg<-rEw})CTq|Ul|SmHKoZ8X{@jL-Ov*)eHLPmS`AtEWEMJzV5Ih4QYho*-+t5( zYu71&FA4*Jw1?9P+{PnbJz9Yu=lIb(y7k{SmOGe0hsF2=6Y=Rl5_ah$lBC-^F8$2E2qXj&!Kz4pC02VEC z2(ntLdkV)SO5p`8dMBUe#W}l-FP_rCSP*^eM~j}tdWvrI8o1f_uZVlbmWd~V932*Q z0NRx~x+0JCy+a88HJ%3X+7n`>^PAuoCY#L;N6NYkKI-u@F(YkTA`r=*ZlyFQL6nzb zanNRP{!UlTmR#U1Y$5c^ej>|psi!zAWX^*;Ja7T^C&_Z3>zD1@lhp1I^9I-@_xu)#Jy#$>Bn#UUgM;yroQ+&NOR^)C>Dp^J zAUePiv5HfPIPP9Cip%MGY`>R~Zz8v++nPObCNJ_&vfy0TKw3vef0HQZvg&9&&Fq%O zI+jhsF0+Z3YsRmt5yB2kEQ}M?b;URy?)csBIH^_~C&pY;V~7T@c|Y?9AB*8|vSBE0 z9-nopMD_9!XgRdtKHMd;DQa}WYVkq*;-+6kIpW2{Nr~3873H88io*xNl(SNF-<{`# zL=md@Ku5RVvj0E=aj7jYVkxi1uOvso5@B{@a=)0LO;V`3S=wqYf2asBzQY)q5&umq(lV1QtM)7SY<+KXnq)z^Ni zNuLb%FK;HOToRU;9l1OuVtWR>RGj)hui=2q!S!|N=?bT|4&nV@{1Tmhbpm*cx<92 z;Fa0ot00~W3#}h*6fa9RZReW5DdzQ!&=qesA`$SmpC7v3}@Nm||=4fT+yaUlsCkDfqvAXTA+~Y;sW7hUS!* zr?=1Wf1eX}UF~b}+P1s)*f*ihLMQJg(QD@yqv+f0n}OGxG9y_TW6iO`aC@q9@vW7K zRIT$t1ReEbzFWcobxnL## zsV^q<0jdSB&`)6!uOaH+i2+yC!-9AEc)g8ijDC;*^r^jdA!2}10AuApk7j)WycxTm z+A~Xn*T?~_5d=(NAJ0Y%T{&Rv+0i|??LmkfNU!y5_-o>6e4OyaTN?9FOyuyQ4q#kj ziciNX&UE*RpTIgx7SNdh9L=0(RV887atx%)eWaGRp!e{a+N19x7o`Gzgx=paYd@!- z@~2)<^GU)LUUB8Qmb1IM(i_n=w;v}j28Bf%Ng$g`80xl%G-xV2rl-p!mcIlGE)F&w zR4~2em~^K1@%m4wgG%X5SBK{a319TO}>pG3vP+#KyAf6;yxAGHK$wQc>|cyX+%}@Rq)DN zfu7g7g|sVtvpF^^DYBqw{e2p+rKucoX@2mdiKuj5c-T?qJ9kh<2UV5uFJUK7YEg`< z6#8pjsokBN(EFFcypkw*<5L&UbCTVXf2$1B_f@bQoAc*|Bi@}Tb_bU-?K3>5xHH$= zVp}UyQ}@g$z#tGBbP)u0e}oMz$d0t=u|7vQ4!uB1;nP{Tw#Ug(7!7oxw?lM>3(Lp& zR)ILr7}TChl6#jk`0OZrNEf2&t|)`NFad!tWJpS@E(C`FenDSq{Leyxyo`n|%Nt1o2;1XuBMm7gM+;tO-OWIN6BH5qUA!kbaTr zNmqQk^#iv~#)l~nHTyRySay?Cm~a3VtOY`WdZ;{h>6dP3K)bHNISYR`$n7j&R#~Vk zI3vp31aI$h;^yW4&UPN{8=+`=X~`Jed2u|+2>NfLF1M(BA;3!Ok9T`*&)`>rHk|n8 zqTTpxm-&Uw6K*RUpbU3)>r+`(#t2n=56rtbi)H-n{+>IzzfaCxQ!jh;ROY1B!kJo@ zbKvLWPSTT`hCk1By(tLT8P3X|82QUiQBJ+#6v!e1H1No!^c1Usz5TPh1=2>9s0rDU zS>uYQ%WW6s34iqL;Sq?wvh;=nkEVO3{mn(XPAx3aXyfMh19DafX%xpwFWcoSoHw*Y z^m7@ajhpk8Ik^jPvznb}Y5A&od=cvkSz}Z=z#Evu%v|k5>is+k*>;0}@awo%9P6M> zkqF=^RFNocO-$oD0atIHHGW%+Txpm)Tve`2eh^SSd2H|JL=tju+T}7K=sxlD$?tv* z;i1`vWK-}fMTiX??cV11wYV#U`O5zZ)M<(61rOby@~2yFZr*E^y)syI-@vykt_T{9 znQf=E*K4cwqqonX;?OsynIhVZm#Rr&^h3^5>~E#*adocO@N-f-)w0tX2W{nb+ggvRDPu!Z0*P~Lu2rf@+dU<@mP z&Gr1FU$G=?xoP7p+he_kJ4`e8TX?1IjWqip&B_foi2vlV zT^HgyKt#Q1BdeHBowT|uM|F-d=fNvlU=N|yor5pz$SuFyF0v6)Z_7c6#}34wannp2 z&;<9WhhiMef?C%iFrm7w`OK zD%tcd$01I3%=)a3XKPv7uwDJ{U+==Oho7)t8qd#>roj&&0e!Kz4{1nLHK{Gwefbn$ zpT+NlScEZR^dGg#)&Bl3Q3Tj`>DOwy5o`1ZZs*3{oQu1{Sl`vLm12t{BKV1CU{OSs zaGGfR(9;9mk?ZQ`f5zvUrA6SRjeb%2134>{Gx0Z#!Ee>P{CuV|RVe??8s(}?Mr9$)}65PuV2uO{sv~+}GExw!hIuX4oXNDyV`s4AAJ1oBM zd`LTRen(iJZ^ll30Ib?$XR@8=0_+MoELhwAl1oK>NRS_Uqy-PrzOnJA!|~Ph{Q`s0r+@xa_21!gHx^vFMau)pVcj zp_w4Mc@3=QiD}Kfg{g>0Ys^{1QtGtyidB{96YBX6T|LUM2teG{P_LT?_SZTnJ_rYk zMQDir*hN$1j~5EXyS-H!mz+_&Mm)B?X+pftPZ{t0f{M0XZo@~!HHZb;J|&(imC#cB z3+!Cg!pBQQGI8j^I6dV-T`4G~cS8J@KBZdajm1=O$zd0?*eR0y_Nic@>WJCveEUnB z&m5>(v?113`nZnz%~p#3b;eH{z`OcFMLJf*)UGncB{kjyCt*glS>AjD+ZeWE z2NPf}r^Pcc$jAB!CwCXnFpZLwEBN>l>?V}GefXSVwQtTfk7(H9Jf`G`Wg@OOo-^ku z?fRULeD_w3SL&ELu@ooPly9o_a_u$W_}ou&0koBm%+}?dXc}DL_hE$5&uyQXMOF17 zCo^#i6LTRRu&_tt-~%m%*;l|)+M_*4y7I~^$UPk6S71;NsQF%&JIH@)u$@GmoM6t- z(&gEY4Y2XvwaQWd5Io)-@ARqzs zwr07o`#0~HxtM*Lh?KT^&meV`CR$&W+yOo@^a{5EeRT*scxCXT5%m6yrL1O;6ukSL zEC{a3{5Y2WeRwo09(LXZ-s;A$7Qlx$2I6VuC|!f1d4K7`O8Lxza;xKM$! zRw-fa8#JHF!x}&~c=w>fmPqwmWc73&4iA6zhx{>ByB;(Fr z3OWNKvC#wRUmNDz|Gb_;*mY2K*9){vo*A;Ux%-d2^44-gFqU)KUDuvrBkog_s-oz% zS=-tzx5Gc1UyAK4S=B3r?24t#+sR~O!nVJ-?7ZmE32XHe#SA-dCMqGt2X6BzDTDF5?G&EiLk6geF za73Q-HPZHvVCaG$iLdS|%3o*XrZ;pwk{s>uoAcN@Y4Fq50jx_)(mm`6gxuc6UkRIu z`swYNrBG{5Hg1W-^1b z_}h}9d9(J|vo0Mnd-&H^mpLm_(0z1Xfi|cAb7(;$UO~+Sx+@!ody_nWB<0MI`J!ZZ z)3xzm>yP1xHIO1S?z8`A^mlynK)FqZYienxWnon!*h@ldjO3$at!SpxdL)NY=WH%0i~x&{NU}%5ne9f%4{u z0@-Iq{h|wJD*0Y1R`pNO?lzsOEi07Aoz+j={-=8c^H<*1r#UjM_m*~mozBoh%@n>v z<@hoUOZJSIH)^6oolRgMZd9OD@~&&bnb_rG;uCOYu}IauEWK#)AQM#O6p_B zPKRgyW{!l}j?LePO0M}3356>VNu7L+a_Kq!>czGgkD)Srd?@r)vVi|!-L_-!)(=4^ zl(ng2u&1)LPDnv$mHC9qxFuq2Hd^0A-|W@uOPW05smPuvzl@co`?y1I{@7!sN9jHP z%WrQUX)Ie0okkt_!E%6C>=`?xR&U!r)AbSQR2_H`LO{bl^RHN$^RHZ+x$fWmr{wCJ zVthfUms;r`Q9N_#k87)Fgsnv7QwRSqBWv}YPN7h^Q{$L&av`$B%l{4k$xSKdaqSi62U>YyUt4y;&BZZKwRrM(E%# z6w%BPUm!~6-GYlAHeh(1*R6adFs2Iq5WikjZD;)?e|%=={oYt787meKXj6;9KnLmzLGeta!y6$ zJZK29{Ddjf+W*_1d5UcomaayrN<|mexxmkBxEYbvx0H&vu78 zX{CHG`7dh&LWTqL{hy9%!Ml@keeu`pn>^=iXN&StU!FLkQ>is_RdY0Qpug?@kBRPv z?(w;zKhnp&%!eGJG|9OrS^@EIzhc;VJ-_`OnHZjTG^Jql*!MD<8#o_XL49{4)JbAgsY<|r(W5r{ zkAG?RF;}1CoyEuvYvX8o#}5`xv(R9o_Y>pw&I{j9$zC5zS85)^YnwoksP8%_Q(0GqgAHoaMme)m>a)&%-ZGT?ULbG9b2jR%!QFvnx+sE?pf+;H#Uc=()8L z`7xmCwiM=S>n}y4@yCQ>-&Vad;y4IwT{J(P*XbT@q=kxD%&L z$RjzGN*)ekiS%57KQLR+-j8cVco5MU6F&aC{bO!;tiI7mUq9o4GJN;f+?0nZ1O-m3 z;H>MTbe)h{;a5Kh2QTz;e)JAD<)WfB){Hx@wZKy9UP*3-2n9?!NhKPVmre2u`KC5Q zcRufyAuQWp90w6{;5EXl1L$ra!yn4PYTM)e&X&qj1rRK&x9vJB_!g4C#%NL$KlzCz zrrnyzQ;fLpEv;E>h~1O+8vmr^6S?2$y6Ha{0-7?Q0|Qp%kS0=M{cB{13VY1M~6lfz)lWBiBYLymhqRb3Pf8q<+pY;Ka>) zjo);eZZRd@hkjbTFF@7nuhqEv4gl+_Ug zoMUVroKg0REaY6US)ZV_<#t$y+djaD(@Q3vPuSN7hn6ghaChxluZZzfdnVKK&BWtgKHkl9S_&<+PI0$AJJCTne3{u} zF&snA`Qo5X7N4`RSnRW0xR$l!`_a;+2IHfjXgfNm?DvZyL(=uN|LWi~_M)`QVF&C1 zqpn!#JLD+;%5v#6hMyU+a34%rU9oa&`P?C^y^tA>flrOjmm7@j}Th znPNvZ*RO98NB8}XC=z{t{?0Eg`@0y`DaF9IC@<#$Q;RTEyaG`xoH#r zQS@}oRx^qay}+>=^NEc@|LCoD@KD<^{m~dsB06gJ%7b5j1Vz$sg_{EjHgT3YA6oQwq+z>t!o*vU3PEtLTc=d+F4I?Fes)Ox1|Nuznp&Go zo~yV}b<}_Q*nWiPyZLKBN?|+hpsOWVY9ekn=;-m_w2u25>$Bq_qmu3QTBY_*2&PJqhO+7O>E~TySu64G;4UJ zxxv$icWrAnF15ii-o0vWV_kzO*y<^~>u?NO9|h?=U(*b9v8>0Lz^rujSK1R|t3rI* zNn=*o!Aj8WmMkkfqSE%4b!}~IyGA9)){=GX_wk9HN3*8>hULOJ>A4;Wnqnh;ud;Rx#az4V4m4&2u6n%ME;w%>1g0mM_7ve6?uXzfH#)|-_|<|xlJO$DBJTzf8M&0A8ZgW zy9=q3!EgLo=LmuxU5{Nw49NSB$43uvTD!_(V$f!dW0Zg&d%i8^uayf*)t^=>dJHXi z7MH=h=6dG_eoDh`^M0wXteBPw42~vy(nq>5)TGe4zQLDs5?qxH(w^;9#QRq>iM~0N= zFw>;BNuwWFnx-V&d^GcT;-MVDUfPu{Skk5GB}sLaj#|*%LB4$IemT{khm5bPlqMbv z>nKiLSRSnoH6$;-&MNn?n+)e<%lLMR;4D{io2r!xwbic4E2pTOgeUUf!b!TtxhI@Y zDLJqbj#+Ay$ye7|u-AQ&cMbZn1!;D|3Umld!3-P@Sw+88e5!l-RKD}ZMe~UxKXAK4 zB~t1mJS831)YL|v>f>-u9f`XpBAp4)e?kH}3bsr{&MUcu8>%gR2Hsq#aH+4`PQ~w1 zr<^Q483Ogim(u$0Z780JK3-Z%<_`~jcaB9=MGRVsb^HPNhMz|M&j<{=qujeD4i$V2 zf$l8WEIE1y8(P?96rEUc7Gh-?eEUt;zf%$|Ip1ar!aB0CGub}>RS%4S0VT>Zt6hI1 zk}ZcA7G+g-h2CawRiQ1~d}ZUl^$;3Fs+?hXHH4XS7n~cZpeAFejZ_)iBTQ- z>e8h)R|>w}qUJlp92I?u8p(Xc@pJOjgZSF{36%NRfhAl{taD)Y^;TICM^9wqca;o2u74k>E`sL&Dwoc=<^|wBRHQ!fGgkP<5 z#h}jonr{nMNgj!O9v?cW(6SyYr+hB&?qZPIbNpAPL*V4($yv+nTxrG}tVbA3=Ha9$ zO*phQf1Q6K=cN@bw8}oL)j0KOuuu+_JMxf;A{?QIyn}vUbE=Fgog4{JxiO=0-Dy|D zD%{4bZiyqyIaiad^OI_8g}G;TWrZ;RG#IW$E|;yOP2uwI=(K)Q*tLU89L?Xc&cHqm z?rIEgjP!;d2qs+ONMX0Yv&?hRDt|#HrelvZZ-2$Tyly|Di|0u2I-!F9osU_K9)N!E z+((*Fte4MgF{d_7`6)4)bQmG)3=hu#>8vDt{|y9kA`Ev~-{rn#^=*=axg-7%Q%>Y8 zV(5chE-EC2y5_F2f;zfq4nJ0VxzIL#1E7dVrwMskrCp*o#Z=R43j!Y8{_Jd9(+z#l zyy)v;A6A%m_)fqyDz(VAF{Sj&$l6};(V7KaLI1uisSEMip81|%VaKB2gp+$24ZL%2 z_W-dRhe@8oup|5yMDh$5A7K3(ZpI7x7bkgo2hFdCrQFgQ@*K2a$u(P3$Yrpb+Zvf( z^}L$B*zq^k@`R3!b$u_g6WRFZb8w($e#J=U*F;EceuPJ1Uzajt)BtXLbKd%Gm%}~U zMG{0CXbD)Um~6vXn)}n_#odkkSaJ3jyb81ki|Z06{c`xRE-zQz9ag69At@#!;3-Ye z$QX%QHocN+1qv4M7piVKejCT$smmk-??7*Z&FHYkBa8IO4y6$;1VR{u=B?H4fMQ%;i9gG5Nz$8 z;q{7{qBpm#oRXm*FbPf|jn`#?r?fMil*tW4$|fRwC=GZQvzj%rr9d#dT9bw7RVzIr zRbb5OhS_50LR%MjHv6EAtuDh1>|^EI3|bbUJ0F#~R*?Zu_1H!|U(#M3qdtc($A;7I zd&u>6OV91PU0~wXK1_{Xb;9FV4h3;Cwbj&uwkhY2S+>j?W94a9=6{%e+P#O@m#$=9GMk~HeDUhenN+L%tsZh3$ zs=!axgX;eh?J2qGwgaAM)>}`UIX|xUiGDQGrv(iL1KBlqU-;~D;>ojW+iyv$vNzDN zcH)o2)A$3ZE1PI1*2s-_0+vT3atoeAoOo!^L94ZNG}WJM1T1F^+S{F|-BsQ*sb&8b ztNGKlo(XZtE4g~ynpczBXtxmAf`=%v-VF8%lV`T^K;g}qj}0*!oTIi*Tb zXVv_o?Ku&Hqls%D&J!XRx3yobZfzxQ+&0d92K`j$d5qzq~SG_8Xig_S?~3%it2jD{RR*uBPFT+Fnx=yjVdefzXR&; znuDufR12APNQHDy=tzTyC7)`&zS&K@KKWz3s$lsEY+%7h^62{_VOWd)2IZmpaDjVN zaoD{Biy|-1lM2dUOz-*RP ze<;+dUU(%(*ZWkMZGcH1vQ}9D@**?K71^;##~o+VSkN>z!Q7u;aMy?~F5(>?IBb6jmspK}vJ@>mY zw}fi0xy6`UQjz=pHut;c&fMnCT(`N-Wq$KJzuzC=*xA{6f8L+h>-l^<{*eVu=j%E1 zDC1CLDV#3|6lIcj?YfE7fH0lYMl9LAE4DE6!*6N-u}VrNof*2W zeMY4x(zRkhQ=xfr7njGqYsPD#YaWt%u_9xXg#$(Y$G?Rlx$X8s2Wej>+|%jqx#*(# z94%!cm@aEW_-H-F>bGqw%Z({`>UKXaa^2D%Hpn(=n@-k_5awJ@^_*NJ6}?cl7_JJ> zBD6jdw155`TJ?DqcOXglm4AI5{2wMcf9S4X0?t(TvtwbwD9wE=CQNA~alan%6&j>L zdTQXMf$wicT1+@L0^`@U`(;jUMH(Hn>;1cCM)rkU9trthF>zS?=PoSfF0NG;>R=}$ zS|W$;J}Ok+!9NL}x5~^{c0W%Pc3|&==nc;OD@Bc3XG;0Lvu_G4lrp=`ZS6Ou`nXeL zWN^V$#3c{u^yJVsRX)kSyU|LR>nQ{;Bps`RakD8XdM*LPhMwHKb|KuvDG-E~UVM}q zZGy}#KaQ#Ex^5LIBbSF75JvX(q?UZcu;B|+CQ6?bq~&D#78Q&$%DgS?uuQpp_%6Xo z!A@A5GH4-#vSo23j?pn`ixo3n$sP(TP^k2D$Z{4Ce}*UZMvBf;6VJSL`Ij(*Ck7OJ zSpUhpK++lJE$5@Wgi!e>0#oh4kadoqzK{qp>0owcbCDFCqF$XhUPh7g=*S!{3;vhN z?n$n*?h-vg!ouEjaX-WRP=EjR)GlWvv&zoMfgDqztF9+Mq60HD=CdS=TF5a8tR9{1 z>K&fGt;K|x} zjuYMKm)fz_S=UW9mRpZE27hM(DTaDxxsN}g80)g;4hV!bkU}Jqv(QTQDzateKV~L5 zAIjOwE0&ZOxv6B0|3^nDL9wft-TJ!NKAnLG;_5k;=uo{R$`SM7!pwafhaPt4igV2^ zv@*Q`vHuN(G`-;ot;FC)1r3!cgnf*c0~`f}yUTr`6-bUy+*82(RrIl8QIY>THdk z)X7?0t~)gcRJhsxp-qda#Ci`}Jd3i@{xK83P5%W?@mz0)vU@b-`aaFbZgU>U@%@mYRMyVP!&m%nE>&h- zmv53W=`FgVKRC!!w@kzECMS>V@mBYSK8(N=FBd`8gS#!=)P6E1_S>7^BR8}$#&#Iq zH{t1FB`3*xM9=FWKIA8@0eBrGkAto+%>L?VLI+C7|G-@MUkd2x&2!Dz7Dt1yJ;5OV z`L-;d(dE`&bwo|btUIWjSL`LlXWqEKeVm&C>>ov%A-}HoR8-7-9Pg38FQ7{%oX&rl!%XH)PAU& z<27tuO)a5+IYX+dhR?7=QYzcByX5m@u1Gn^@qfY4nGeggeC|a!D51763OmD9d#j7( zVp)r)e!X-a5l2$%%;@tsl-(`};{*0hv_%W05Eg{@%VUFYz0^Z~^g5hx#2-DfQryzO zlj~8fwwI|7_QKpQ>a4gpFc&J1#5vFk9s(69hMfaYi*R3xsVVFR3==MRYM0I4O`O3D zLsADfO^&swj6g3{|8X|N*sJX?wdMnA#$Nj`!4^hQsq!id0Q)pWI^Muy&pBM6e`z(! zK_!T)Y?P2Jd&=QVV@RH(>V_W(^kSOt?wSBB9Th!+1&$18y_%~Eo zXh%fF#!XA9pdFM#XO8!O%X>yy?)Gm~JG>{hr1zko_}3137HOpAQ9V^ia9_mjds5p< zJ3;bBg6MeDE6yT2|OML)_AlwP~^u(yEa(~JK;^W6O!_M)DV zk?Z4~zJP|inb)tKWmNlk-Mp9Kx**S4VaddY;rD214`~6LORr@%Lz_agt%w`hsoB+= znj6_GZ&DNuU#I*rEO+oFaXe)$J@1TE4n@)-CMQKA#vcBNDoA`>s$Jjbyqe69ZfYQC z!V)KOc7@&gr1&rV9G-Jd>qrBAmz^gP|Ejvs(tfHE%cz#Z;8hxz366vSOEilPygux4 zRjkVD*bMKMnr4Tsl$#Ia5u2e5QD95aK!PMs@%gW9JNVZKq6W<+5uv-?^t?sv9CWNZwG0$;$j$k=BNjSoc9hWW? z#jvF>PJxFMiNi;d{^~Gr6Ero(zT?($#gQxcMo^{Uddt|e_4~<956WQKr$yzQh+ePB zRk-I$ByBm8{pgl~Q*n+v%kJ=Sw_`8^yQ(ny?!y{@N1bUM@vYjnZ#Kd;7X@Lc zizKa)e#wVVpvYiJvm}pi#>;kW<-0yY=2e4;f^u-W$yS$L&LqkBDB0?&dvxlr2uYUe zUh$J3>%HMeV}l!;j5>&rg@Ns!k-FW|uFU}ytyE!uF=&msml0{{>`^4}&LO=gNtYbz zb+~_3!mTkM`m{-Fxzn?YHF)Lonxt$yVXXcEAJmD#`#{dfxg=Hug}8+^XNzB(GLu^h z28bDc*`)pP=({49A68dNJze*ArB1sZI|w-B%AS;c=|m=9L`DH{ZdTX>#VX3*EGDof zTw2FCjK3AOk3sY@kjP19={xp2&P^NK9m+;^T9eJ{_%-y#N>RmtY)91kj985PO%o$t z1`>g8AHP$FaVPZ(?7yk$(4@_$*fLZ4Vm*_e8(wc3>{B^BgK?k8F5{|ic7=ac6q1wDnNPByR-8~VU zKW%G7?+ME-RRIo;>~GZBLdJ%GTQGKx_lSst8z|+4UfJK9=iXCZvD@#eF*|r`65bWp zTL$(pCHy(NzjP!>SpICfhZMxF2R8gj#hy93f%PtAK1OPr3CDz*07Y6wObiY_5}GH~ z(^yXgl2rtGKt*SHubr~V`V`@b0rT;=@ zRweOq`MGCfo$l}%mOSj5y-=xEw#xV-^?{a8^)+x%pAf%9tc}hFK7qfxshe0|()V=K z4-80V09YrC{qeA6EaZCGuj1*?tUy@i750qQz6nHx9Ab7oo` zIv!>ZEPn7FPQ-MLGD;Z{&38YRISaul^gf5x-vlPwh87|rLH`tUI>N%|PnbshSAef$ z%OWQR(8$K;<&LAGA^4ld-97#4kbUgQA$EtW4HF|_7sFat^_C2-9MNhjBrqEuN_>Ygj~G0jckZ9<__aA|-u$zFw9lv?MH4jI zlY!IlA*Df@db~v#;e7AHdMV>1#RNadf;=ykjLW~7zv269-xa#&Y76=2`8`2NKQ8~N z!}@oDu@^Rd{bjZCBrd{;vFGFmE2k_gz#hqJ9QurA*X+)AGKR*Lq%r>&$6? zns!ysNQlT8$Un-VBE|0$v4ymS3B2MO60YmK*;Uqhf9q|HtxQMm9lUX;IC{eF7QZCa zp5q*MEcrU=6r=Q^iEIHZJKNb%{rr-YeL=Q!1>874_f zo;3V5b(nldZvK|>PWTZT@%A7JEmdN=*F$frHQu+Xro+_eWejh>q1SqUf%juyus$eh z!HYwElWB=}N`bWd`hWL+teS!`Hg;AMBOasu6Sy{4yN86a%gTxx3AKSP0ov2;xLxr% zOTTt@F5rSeg0tdpZ9b}%t-+#TioqX0aUYp^oYtH5G7oMOaPd?ld$?)ssgvP%P&R4*ZnQ}11m<)GOEpfh`PjB3t9QnXj zfrk1OBnFINstj~3(5yy0Ray7(HYp@j6bb{@gAltTQvSPE{=4rY95@Pen@dx&Rn~1* zGw*pk!>nZ}!=$3N_>u{zhj@FGlo>SzZoO;hM7u$L`a?7-Yp#n@43FuoV0maPs?mg*Q=1l)Ro!0 z_qIj+k{~mQpdEqv0%^msEUQ3V4Y6w5t$JCuGo2X4m-H`jAfvm5LRm*%!>IQt6atoP z11-nYC+h2Gd`RSv^-LEIEBQne`8|VJsTVo*)&(p(LxIokKD$^G!0I*4_A^K)oG=zWC6;$$9-1&G7;cB|ambyZi~E$9)RmtvAiO(R2I;YoG!J zh;=19GjTae6Td=!wjblS9X8PE^G+y|%RzvX*k6I)xBhp7eIx^q9Nm5Qgwx-j;!D`` zwPl<>ZK{j_EWq2>`){$r7TvtRb2Js*(r9$m7U`bh=K! zJJ1~7gxMyy{0X%{U4Vc7?I@NY3(D2bT(^)%#AZ4o=K?{Aqt(xO0@PXDnk53JZ^iy( zd!@5n)uuIN^j}5vSjVx5E4cXD9T*6lnacJ9AIjNcRT+~rDT-fs$7uiNF9P}p|O47XNwVRAbt9;NNW4vmQnh*{@76qP`9a&~GhKB(bY z;)zW0`;eO!iu9{sCjZhGN|^DrTg@*3aSy-1<`q-XZMwO^rX1 zP!M{Mmg%)6T=j8H1d~#PE-4PyWR}`Hi1N!87=6Y2lCWm1q+sZ`RBZ$n_LMR^H7e#) zy?B>vpCIV<{i^LWbXof5NM!p%owB`;4anr$QWJZ9-tD7Vi>IK=qfsP!>u%d}$W+Iz zd;DjL74k{|&M{!+{o-aDF`&-xx?RkFwG%jO><^i=Ohi7?Yui!|l3>(7a{*62{ll?$ z?=k}uuFMxzcFFn-=<)vgLSFBpWR{0Q|)z=jC1`aiXz6#iaf zn+sMnl@sHUCrA11PlJAG6jcw3RmnhWxEqJ2Iv#pTnQk*G`xGu?j@FV=ul~&T;%)d~ zHWRIeUyG1SECMCfcRey=hIdZ+@4bBO+pfXkhr30>C#OX4kSsE{r-cVE^Z$sB1pPMo z$yI52^lPE!6|p$ox$)qFPxa_jakhKVikKm8H*e}G^!DMrMz0R1GpHL8l5bM!Ni^BX z9J|l6-487FMb{&zCA10Ajt~p@Y!K47C%OLdDEP-5;+nZs-5K+k{%R?mw}z7W&jp-7 zB*rcH$vf66VkWKZBFt5Dr^&M+-O=x&gR5ZCqmjdNwxZy;m;O$gijGgdLFg?&X!NE zo?Lh6VjnR1lZxC-^wQD@V#Bk(in!PcvsEA78y!nZTgq68R~g!T!8}R6*nX#H@xgP$ zYzrg@x4D*oBxiAQGcMXrhZ3hTh;m_H>KD=r#0}Q^$iM{&nhof($TJCRKX{ zWo@Z9*I43ye0^$%%_1B6`SJdSnp+$y&&~Cb?6QU^j*YAuB-wd;4&Lr@^a=7^(mH)c z{VwSHme`c0&s1EV3Zl%$zMfHhe>U;t0k6uoaR)c1#)+&8YE`GbHI6Ek#;~T$f5~^N zkL30b*BQnRMgy60+3MARgW!E5;?P#-#BpZQ)?8uE&{&Xk0*H^2_v5HZzS-Y(SkDs%|JUw+e# zG5zcn;Eh?u5C7IVxs%_0+RjwUPGY7+-QW84E>MIwOKGX)g<<_}QT=&Sf&Q9h_X%Vg zpICOX+P@e5EW*s^LnV6_ygUFP5ZUoX3eWbl@8-ji zRvC+=`dhmCQU}^=DVDQuEtRHKUNOj$9-9UI-(#bbbJ~^aNP|tN$F{ie22)le$a|%K zf))K@O*p|AqukweDU#ES(BFh7oO3mUJ0C~B3lr4O)iPV)TL^+*d2y%KoxFQ3CPm$6 z@0C$RB0{GGkQp)jfGl2r9#oUkolilSyT;S&3327Ai&GC+;M3b1LX(=JeJ{)VKA9PX zJvQ@9r%*cHJ1lI9hX01KxJq-?;&ED+(e2?_*hwy5RjJ7CZvE#nS-0RdVfN{3Cvh_Q z%Pla9H@CwCE2aA~-yy-It3ES^g9(|Q1t)9iAeH%60d5~bP#a2zs-$#9#+Pj57H69i zYNYIEZLdi6C4T9&K+Y%e?ye8~+u4>E#AQ?+h->q~kG*@@%=6ugkL@_+g*c~8_7RW_ z4#v{g&QjvapdOmS@y_`dGhkGDYJZ0bpC4`yiCZZLdr^}TQh#FWdUSedIXXUY@GfIr z*V|c<)IyxmbwWMt2xNld#Ga@4cLezPxeJA*+U!NwAiMauc2{qh{0LJ%pug7m0Z`z- zJclG8#V}4gwSO)Ssy=cMsM~ndQ-W2s?w0d-`_TPLB$xlG*@%fZE#@Y9e}t)H&`Hrx zCI)*CD!eim+|Jqq_z^>%`}h|SU;O3ns?Tkj7dysBH3(yRt9%=_N(+5KQ%mY?Yo9H* zgBMlCUZ!o>KchoF5s0>{!x(Ztf6?ukx2L74){jY{R5wd znm%p>`+5<`V z8DSv0d0WdR#Qz*|EB;~L_N}~)aPijL&Mu#e&A>U67&$dbvj=MqcSczMqVzTwuP=_O z@D?f}BfY=iU4&|`{Ig;lv-#2D$muXyl@a#a{ejM0dA|eFPT@!cL@0-aLOkc5Dhl>BI z!aw;}DSCW);%LngE+Qa|!%mp6faq>D@dpy;n}%D6_73~|bX@h|slZ1U(%p{B43aWf z9%C4r3SRu(5hmx?I^2nt82|yLm5G`<2Ch~%m`#(C!zVra{bTVIyIEtb|L#i`UqRqo zUMHKw`B_$UzT_vg-%tA@K;7DOlc_Xb%xNJ`Pm&PKH6`;*?uM0eO~mRF*PP5>eFj4_XUpqmDWWFjsctxF8G_KI~fQ5NM`ED99DTrIqx}KHNca)dHc={(ZEx6n&D4Dlpt-tjIg>nt}A7uMquu$`wbeuUI8==oi zJ_3+p2K@W`^tO-WpzWSb&eECBdD`Xj(Wq^!1BAcrtVo_LkOsH&ryCEA08j}ykL_r{ zMk`M?;BCqMU2bUji@NVAybVREkCfcPbi8E!U`iR`dCr>Go+T%OiS?c$QIcViUVlB!?2GkP4{Le7SGt&nUVFB3EQVY9b4Ti zP;0Ze7#}1)iSQ`9h_ksy@LN1^VNaCgyKjEDVmAAqMz**&g>v8Z&gD=;xa_`_BDtJX ztSgka+sj4Uum7nPYe_p>TSsgwWDZ9h$ma4rg43OQQq^l)^{8Aho{U!Isq*@~q|;#= z_H8jyvEY37XejoqC%QKIi5bV)u}%PSg>JZc0xq2KUV31aR7Y3vhr$6#KX84in<&7HHGGeUN%&u^g{^jWL7nH>N zMMvS^>yWJ%80C34#y#Y>aHg>+@N#fv!aP;T3;D!;xHeM0n>ac#p-u3qXBH?}d#=*l zW}{qwCeBnQ%2#}(w!n)fn2ZJtlv97k6!oTKA$ljhc~!k;kpXs{vGIJAmY$Y?vUj?_ zup(P(+2L%ZXZ>5gK=>5rR%1afPc|!A`4P)7#Qf?~XaB8pr*wjI$>y~8Su+X z8?hte2e5aU%fI7Pl&&C(-0E2|x4_JV`t~uy&}!wB{;EjMM5d}~saHQ~d=bh~warbJ z_i{6__;amN152HgC@C@F!oMy~qzJ5wV5LKiQk4m^ozZUC%-=gY+pjV53{iPCw??97 zo%5Yl*>>&?crD-%P4N9gsSo}YG^Pj=k0`JEH?se>UQ}{DbPd8VphunW>=4d&8H*Sg znQ1J%-2Gc`U`d;oBvyXLx|(u%MrXVmtc7uE!UM&^owA5Pd(yCfinXu=pK}1KFa6gk zSvSOQRCgUeZx~c4G<~p|Z^D}%_sEb+=lR`tNSK_|&_IyqD7X%_GH}qBQ%;lt4Sp2Q zz?KlXNBscl8x@m4XGH(~w6<_tMd8AN#YwPRNUAltr<7Ut_G)cZcvrY426fuZw<+Bu zuHsZ_?cY>{_XR&CyE)<0TH*MG_U|T^pYUZK%ZX2voQF24HqX(OrS_XYz8Ct5{zxcL z5H{XsM1NoI;+&e>jlAL(V2IY`j6hVlzxGh7MFYS~wisKw!VrsXY3xz^ z+l<;5^L5#MMSd@1HCR7u;bEh&`y1?2fB#&-1C9m0(uS#rX=)${ji%T+@`ZulrZZNm z*2kGT6#g8;IM`UGtVg2JJwMZ!;zy}R*5k2@IU4>J58x&9*-NnlOcl~(wDN3e@aZ7O zj?DSp(VF6aHvOT|V4CI7`R7MP(2nPnI5d zf5X>%*&dngSTcIkyJPg)1(2j~SChuX2&vBd5xUlXKFQ;UT-AQs+!^LeFhpn9UVr1q zOtccgZ+G_uLrixsqzJV)1BrHYGv>CpyHzZ8cF# zsh<@U;Djv4MC@n&wm&oW;3($4;!JXL6wHnM{=QN)8UkJpH2jb%_99>VXIC53*xg@P z@)uv$?8pnS?7Ig0mUCYO?Y2cTUqWNqd)dQ&W0 zIxAXEfE2Do=|7mMH4RPU-6-EAwvkRfXN1tJN8D8sEnJOv1^%Eq|SdDS~3>jOz3w{_UDhn<8=l)*} z?lIR+zOPtj9rHwS7M2t0t9v-?w|~=Oel>Ob`!NpSeQa=8_-2rmVd!iULn?gsbmezL zV_jA;UCeWDKg4jXCz#4ur>37C&Qf0s{ExVtM0-+KH2)>l>p&zyc3rTtj{)}7^}uX_ z4yiqHAvbXtgBPqmc_}5bv^N1k#J)Hw+-P8`B7>7XENb*h?Oz;RYpp65BI+l*q3Y5j)1{>JrCeF+?$YW$n?>=Dd;u%i!)pb%`$; z?GWxCVhDO5&NIs~%_yzy$6*C!FL$914OADNgDUn0hpk2B$uw&yly;$u(r12tZ&tdP^Ki(!Ys)1#!y5sGHF@K**y^81K zU?or-VJz}U_^Qgv)xTq(i(pK}@qyR_*UlQY%UqpM9o`rXp91bAWyzv%sri;&W7j6w z{!KC!)1?G={cmYcS}#$Fu1g-Kx2(kvecM#9SFFuoJCr*Od*WM}(1XkzV0%zL@Pp4R zrKc&YW6zPd^$cMNemm{i#kqkiLMCRs*B%8s58*7amk(`HJ?3Tk`1v%k{CscX-H|DjoDKx()(UvX&P02-VZSC(@{Mf#QD+!eUTwYXf z5V~~nxysyt3Z6%NKy%726+r#&_wDK-x2MhsmHfJFA$!J>qk`AyfOEh58L@w4r`h%` z>-@VrZ_cgOH!7qp<-%%SmJ15jy39XsQONSh;kn4rX8uh^$VamaU#t(y?PZ8$=L4{M z@VS0+3RL#zz8cVT zO}c-1{s9onc6zdo-f{YEAPD-$YVdqoDbUB{J+nNg;JyZL5+x?#qyLYfds@qs0$XNh zvj8@YRvEJ|0N7lx{M}(h`$|j9QLDh*IkZ9Umf%Q*Mc=J@fJ6mlCbLhTbILTm>bYa5 z2o54}u$4r|-BY3?jWn&Plf%4hoD8}Kg$rU@0*NFzyPY>q(Yqxcwh^PMXlZD(uUViwPQj`-)9 zpSKJ*%rGpICn`EnjK?^C@vj8c`-(9PLU(M|`RZMVbo6E)9jR;7izx_&0PjQemACa6 zsWOUNJJhWHxRE_A4K4ccu27BztONA6f@je6P!x2N@)(ASc&x`H}a0w zrw}|1L~0k(Gx^TxCI7RwC|+(5V-~PuyzSU6y<3<INVy=#)U1 zb4TAUWPft9Bh5|Jb33l1EDIndT3~4|5e#dUS2WNlq^cW4`958(J1S-qtF^Y&Epyc6 zsqP%19UQI|FCZXY(XV;Ul%5kVixn&T>t-596Ml+_Y4;hLf^1LgZ9X8`k3%iYZR7lchj#EG>D^%syAAi@-bTy zGu5oYvv4OL%RVgmapc5MsB>D`{HBANJo$1X*;DH1oF6#pcia5e5T9eFCt4=53wWa$ z$9t1qW?U3enK2koyvCxr!5JJW$YHwK(*9$l-U;{@5)bPS_n$CO?dnRC6P>W?Q9DBCp?Iey5Y|*$;?9VY2Bh`aOI-8{UXF zx%%wj{oak58-s5~-xxlZYqi-M;+Pl_n^wid!**JE}MGA0SI#OlF_ z=@@9@4uF?=8qD=E2*Ufxs_unqi;ylB@fCfC9(e zS4(Sabsjkmxom?YmoDXZFI`erJ8$krzD#95u(m2yI6#-{b1g9&gMAdwC$mkjD3!J? z-!jqn;vnh%;|bzu4VUO-Uf40E3K}_YGkK-a1nOiF3)N7Lo6M2Oa5=AQ=v>smP_6rA zvTsu7=7_uWW8O_)ZafR{-Nh`d%LC=!Pjgpv*ln5ZF<DkzRvlb7V(s7NUj?UYQk03jIN%W?OcS$DQI%IQ%FS7xp3w~N>}VotIjw42^F^pU~>bj`!ICIhie9R`b?vN>_d;_ z_gS*e8+V?y4%|+xiV?!k)Qg~dlmxE(I$JlDK1Y-U7e^c$FVl|^SPRhW+7|F|%x_kn zzw5dvW|7(a{5Sp230%3SnJokJCsW&WHy5Ffb7`XK{!gEFZ4>l0H1pev)lFN{Qy{Pg z7P$3JTVsEPjZHdDg2oIbF=xXzSH53#s+oTA#<)f2bBNTLg{%Y@nELBC$DhaNS$>=~ zZyZ=GIVH~6LWHHzpFE9(CXH0zs{FUh^?fbMnC@pWsial2o^ zdD0f$ovcb4BWZETTZaJJ9`nor$H=aoS%vw9Sy6tS_3MDQ6#2g|4Y-oM(rlUvvA>3g znHCrz*ljIr2`SFmdwjy{MM|34RwdVmc_EZ6SasyPqd-EK`MIx9I=k&{HZd)~8%Uc5 z=CLu)v+Sc{=(+HN!Kw^3_BrtbyN-XHf7Cp5%c=^0ujtU`b%yEF4i~ZWMVit>!+%u@ zf>7Od>z~}cUt4vW7k6$F68y@9y!*O;&XZ>+fBz0(w{r}`_%}TIxAGAF++fd&V>Zz! zPK*oFk7xT1dgeFV*?AJNxgW8!r|(o$h$MIF4Nm|u3A!+st1NL@)n(_uX>&`z#w~vp z!+Hmg-|v!qPz{p4CbL~Q|8?r(LKd_tPEA7quNa5_lCwAme!;Myy4{?Tt2z?Ew`dLt zcy{sygbCMM%yHYxWgWe#($2DcaRiWY9v=ZM(u}m59~tRuf8+b=M{ZBc*mop@Ml$9! zqzYWoqr*gOwEXcRDLwmgd-JiJwCgp8Glw5=*7Eqqw>Q}L=pvZ5k>7O5;1T}2&g^Qf zSN^k#4#^u@2NzV7ROoP1xY=11yFWW4QESOzeYy~QpC$`+2~gx-_BlHWvTu0!FS}B& zHN;Dr+51Kecy?@hLgM*k0m2owE@-Hvp8+u%=eRv`T=_Im?n%70)>4;hO=I+%BYm9r z@NaPssggjC7nN?8LVR#OQ?7l3|9ZIlu5z_DDc6g>_2?}xt)-AI=~z0K^nJH~>BmKD znOSA+NHkhzajGiucV0jpS_eGq^j6r+uU%2GoJi1T%Gb7JujjOgmN`)x63io>lH+5LiQpjJC>`Kbi4jp)Q zO_$j!cc-TdM%Shp{{-@@Zlq^J1M-Wld;iYJVpwp^A$>JQdXYxmRAb`9tB6;mMxeh9BMM0zWQtcc%6u zr{4)+AV~gSDW6UJk9Sx>1*9#!3AY~D%oB}Der9bXWOk4iT8<^8r6HyUsPr0JtW6x~1ub2A?LB_|NR}0A4yYwqNZxx`) zajwXUF{PBft8!350g<9BCMlclai=yAHCOvzfZ0>1&@sNrv}KoNGUhtoHOoeLZUP@q-5{B z@$Rs>H%t_2bkhj#HYZd3vA7lZXwaU+x?q%h>96gfN_wAWS-OP5Q-*%F|71=0U#&*>z}yY{Oa~AZR>zfC8EjCWB<) zj|*g7ZV%0>);8HA`2L#v&r(dRAX4{!ZSR#$1dob^7}VK~WOK1u-N3Y{DT{-r<7$L# zP4DLj*_~nevvO0*KI|nG2XuVAC%KsAUGm)!-<}a<507V!oAfUAqyF&#?)-iHt15*6 z=dMx52A%PHBL!Y|9B$dDS%PLV@u4LytJTt?ebr24R|bZelECy2X*>g8Ww1a_n7;rk zuC%clyRDq*Ivu{O=HruJ5>c;sH54z0@n^jDsn4z;B~2#RkG5rxBLgupsL=p>iR}Z! z3v(b|T6^SCdxqvu&_O!LKmP0Gdzo1=Uv0{{2PV$$UK6UV zE0rGVqB|B7a&19P4)w^;l%Ytl=M`1MZ89iv=xn8(+hw`(oI1P_Gz*Y2v|0JUzWBgg zefN*Qr5ti4r?CT#guBRs#IRjjpU0e#B@#AcIhC1pxmYrOF>(w`y^0uB=Rw4Fux~6q z;@r-<`b`eg+4zMer7>7;&Z(UpB!DTsy4P=iVJ4>g>VgT@M}Ho%dO6ao**o3rZ-h>f zTA1UDa#(J3>P5&$FEYxc=I9GGA8WsJWx!~p>#D1^*lV)>*j;RjfH^1Y$`|BVFrvWa zs0M2!yIEYRMX=J?y^$?-VpTguhcg%7GKmgCiEk%xz(~?5KgR$F!Olj=1u|2;fc;z>&AN_c{mf3I{T&XpKGj&j8_X zMmi)%iAt1|By`Ezej|;(Fs4>NIU22o{Bp?ZDU7!7c(RFi=!I~pibFaCe2;$(Fm>ek z_6Pmr<@`PfXq+2DdToAeAT9@W=$zIvkzm@el`j&AbX@RPx4*ArL z6sHDLeJPE_>Gc!e@($9&w~>MLaZlJL)4^+x=bUWFxpfHPA!p5}{=U@b)Z?1%=nbZA zseh>t0c_5Y4SHjwo+5$dJedy0Rz_2~5>+-=b%#~9_fE~DtYR6{rV^hvcj2G>7e_|x zk8m=fE=NG)owie{#8>|IxG4$>6zboKMh0RT%WOtP&sDwE$P_>MAn+c(BGq2P2*M?* zbDL4p$D)@mfX!LAoLueK3E!LIVWvgHjhi{p{o_X#lwZ)YKGAPD-!vol{JMtb*SMV^ zN)4|p>x**h;i>6I)zZNzlEP8cOrcX5Wu+FMGb+?qym0pJSUy5+${I|{lJYnA(; zxTupcowi6lI9-m7{JblVl&(z{b;!G!3Y?2XHs{cm#u)VNnab3LYlc~w#zL3WR|o8@ zb>nyJik6$UUQMrrgR+=YO73rR z)I8SP2@xNF*4F^|2xH$HvnfG`s~)S1txqVu;;B#a=9tz$O7!P|7r8USgUnxtt}Rx& z`P(T-;^peNhMC&1N$#dQDt!|!VV}06%339jE@s0=@w2M*D${5BqB z`>x-?v=bHD3PM;HK2lU%XbJ%VKDw1x>=Y%`+AYX=H0-^n#?d2m-T_;rX+}k!@E6Nk zL6Mw-GKw>tji!eyKin)DBSR8oRrs0+`CJHrm1Ua-fP|D5a_CDWt3Hsl%s}z}tf8em zwfJhA;$)jX()1T;F>`y zJ?;yyse8Kfo<{=s4P1dY3W4yUfacByUwVMPE$Z;yAPyBkA?bM;Aca$l$PkJo^*ZMZjK;3bww)ikT-}Q@>dgTNM+7=V)#1WQe=aI|D!+^6MhylsI zVXVNX2*4ficcNhQfog=?7Q2ZEq2SPEFN>}{`et&#S1wWEO$_1UAv$)u|6viBfBi4y zJXb(yq_SCRg8QP&A^2ksT!3z8&Z`V>F)%|HZdOfZ-0@wQTYm{!OAVhe)FAic9=r0k zhRqD~+hI8J`QT$;J=z@lm-fX^Dgun#V|>3B=Nu&3Cx)Hg1T%(HhkNdweD9*@asC=Y zSKY(Tjn~vX5fci?RKWoGKLGpQYaC6EERxN2)?Xgf_1GFNdY_^kxFnVL$Bc?@FIk|Z z_D?k*c?xmVeaE9#N4{--^d>PILvbDxpyAW2LNxr4KSUg<9MI|u9g9p(1Ah;R*!fIg zEZfNMo7Ugav$k6pwk%5AjP8#hb1~e!mdA02a$V0ar>bqWvK`YPwkKJcI<4k=dtc#Y zTU#TW;G3hljOA55ZQe7u6UM4~M({GCE=t34)t%;{;qM6oL3&IsBW!MHQ^z{5mmH?2 zascb>R2SsxTd#7m{z$S{ZfJnYWM5GC^=Da5I0>~izc!z|f52+A3B**5lgu;ev~g`XyO09H2T4KKtxu z@6c~jov?Wq{%n6(_R&utSM4pGEoE@Q<9EgW_GJgcO2(t{z_Y_{$$qP6G{6gD_AF5> zIA6#GsfEmJq*kbaXX$Cs>`p$&^UfR_Pk#q&u z5W}Ih`xhw<4I?5L_)_aJMN(zex$HjLLkSW4cOfwo-`lCDGZACnu-!*1bv0doYj_)G z=}mMz_^bsXI7}^oIOcEVr}UJG_P7S`=*}Fc&X7=(N;^%P({_MQCmW_RYkNCDb0-6e)kddJaSu#;UwAr%7ew3C18^j?2@e>{hyW6@pH zK*djs$YS%V5N@nlkVVb$TP(t9X3*)we3D>K#r}ZQZ-P9{(x&1=-%S&FS`UpUw0Exl zDoGN%|loFl_~gHC?ruIab~~>i zLziB3(|I6-d<7DV;`gR4Zqj`9?x-{*02?8Jl(od*|kt*UlpdB{QWI91Xf;&VU-w9`lMRE zcZE^bEE6f_op0!#_NA%b8AicjnphYV_QJiL4!T%EZw=-=h)Z>U6w;T+Sk{r57gu63 zCQp1e-Gq{Xu_$q!&e0Y|iA8Iec!1H|A<_%2+}1HzOxJIap2O&NH0?x}y3d*P3x2V0 zJ%Sxw1r9xjJzB#QULUp}u6@+X_T)*dDHm+-4pTOaVVFx|R2E==DiD#)>C^09%6B?A z{)Vmp1KcC!BJ!VSxWtuYn}TYK`pka7(0k)}q*1XK(MHvlA+aaB#8gT>e=%bdv*%(bx62wrnB@R5r_Yr54uUVVU!vP!-YMZY_Y zti$h7hRi-gYIO!m8yz@`Z4fdiY`^N-FPWJFu~XB6hPbyE!z;-*raGythL83fwSj=n zvHl0x1Ap;nDXUi#X+xP{cj7yLc)LKnQrQ6(OdFT$s$Kq4Boho|m%>mi9;bY4on3(_ zx5WrzRamz)B=Q9-)PF{KieFlGWz&+f;tGNJwbKZ5-NS5NpmRH&m2Sb3s%m_fMN0te zCukt-X03)(NkDk*SU87!i9kbrQ$Vq@Yazr6IZ@&qceGGeG!aIMKbtqodaj$u#5^iW zWZrVEXjxdIB=RmFcBY(_6_Wg2nO_|@kAf zKO!9O5}z$cJ4Uv2yNdP9^UJU;<-i{~ku7M7KG3K(_mAi6eu@GeiKazz#uU>8bHMdK zy2s^~&^Eyea8j8{Jfb4<+qrUbQ(HGFsrOo#pw;qfuA%u@o$Fs=Z*nlb9^+EY$b#LD ziL!%9G-T7sm&-``lucMm6oxtxRG38Ao7g1FDL(e$ZuGHW*Nn-7QQ8ql`0v6Y(Xz-1 zFyLQOrsu2J9J=J5Qafw!+~gtlFj8z(rlMcEfJg(iHsaPkEpXwfC6%pIQ^Fs{(7bt1 z(K5R~!pcqyr7~P=H^$lQbW72Mywxm${;NDdBlKi6{+K$o*Yo3`8+k=jf%X*Dkt+-(+J2#(6TQ61dh+Z@fHEDm{l^ zp7^m!zyJ7ZyTx+K*|<(ZghlY;Qa>Is#?go~dHUV3`V6=6Xw(Kv z;e0K?_droU@F8TP=s35xm0ZdY1g7PXc}kwn$whsD#U4KxTL6EYpGhC4`9B@gU6Dq} zM9QmO&V#+)J<`J5uDD z`=g@YI0~C*iW$82u~-W;inY1PvDll07IAd4x{OOX<4K*O5o_F{_<_g*@$a;1a*$+5 zA@klY)n2lB$BvM@7;9+MQia~?@;B*4^jE9Q!m8@uU-#jBW|1MV6@l$6ulUupxbu<8 zJUVB7_%Zsm6Wd?c*9?qlgl5wWvyWHf%2?HS6dZR=ETD@k#|EH3H`8c%(cT zzx7M--~ernqL9biNMygj5(QrQcw^;0LO5c-{zTa|b%*k}?Z9}jl+mz?&<>x@Oa!?9 z9KImxn?jDB1tF9H0B`&K2&5w6>9%^1<;_Pa2=KpnQQ+b4`b=%PnBvaE!0FLs zBAm_xRwvOF)v&5TXbY3XXtC5HXX?k6XGLfp%S;A;^^LP|r<9iBFBOC#^et{;X2+-k=Z--pZh-Wf-A-@mVI{zJ`>jXP)` zV>V}=Lk%&7;P;5$vS}=rR-GRw2K(LnX2o-P<5>E6_rc9q3{u%!{pKjMl21*N>COV2dr|w) zS2`y0uVOc!w46DHDwfk?jZbfQgYjl@m^w3cZz<@}psufkNm*1d=iznf2Rp*05%wf? zu}Wv1*)ELD!fRdugIx=KM~@TeV=u70CHrh#j&xX1)P2I&!<}E2QG2-Qsu(CXcIU(P zKSO0>pNU|mQvCR7s=U-}nf?vU(-?NfN}L#=cfts zE0$A3Vd1@?7V3dVb>fE@`Qv%k+LG`R+gipERot4HlSg^nnq_x$*Y(^DE9O8Qw3mlf zpSUxi;cMm7(4W230CKjV>u6o>;<9tKXZHqA9|5{tJCDFnmdE{9V+lz-?Cl;_J74%Q z&Bg~&ntWv*uJBNyy8Qit?0If=j<(<2s$bXRmD+m8pC_tU)U5Xj}L&y<-;wr`B zwTXW-y)E;P;|k2aBG0monfDUCe~mgRC6HUjqZtY(lt%c0P?JMtz+#%Ct_ONX(ojAv zgt^+Noqoje>mO6Vz1Jw-vnwDimLiA+pB*T!j=G}vqd?vdl<8u$qEY-G8V=`noc7ed zSjCg}7C}d}v$Q*_vX7KsScB+|HF~xyuR+2+FA0rqwx;G5i!8(5ZO@Rf8n6c1 zc8z9-ZkXKFe^TV2JPMcFyJ9B(&nEoiM5j{Sl3M#cFmCt9@e_mU^*1#odv9qnwWVU5 zwz|D|kHTQl!C=^OyWvD@&Zc9a8Kv#5{_#;$lM(~xH;hY1)N$2It@%C7cFeLk=HKwI z6<+K&Y+sIGh}2t#XzCPcA27^wpPJYmm0szsAquqWs@j+0S{@PSVGfmLfgPK^b)tDU(DaM`gy69?KcHf+l>I#`YKejiDSb&tS`g!6^M# z3?(svM`b}LUFN3vUr5CfM#a&xnEm$aI<8-4&Q_ov0Q~-+qv1Ao#BsY z2HbRg{Nh)yh3pPr8pgiic;Issv-6gP zlYRpjMexIMX7hKYGw)A?Cg zj?8(Ns!dmpB(6%@e5g?C z!yx?TXGuLMJp-HQ*T&#j_gmQA`RKyDlVF|dXR;p$84#pleVG9Pn~FZ|w5N{KL1NDp zNc%p$ArmyLD+!peYJtVk;0(rZa(8C z8)vX^zVijU7#AZrS+kPLDK)@mh>ezRDb4zT^$lcQTrRVd*7eg7Vy@|yM3l?M<5WH@{x1H;u&Y$} zDr)v+5hes5z|!~>`P+Iy)VX%|v+5fIDgRD>#^;5Ou6*0xzb5M?3LLUJ)vh))6aEgV zGlHex#M1Zc6g*)Y@T1MVigWNAtZg5<%E94yi$TAKw$5kwPEwNeT!0!E=~_(Al#x_+ z?TZ`a*YvJNL02a&p~ES>a^E33gE4{&xehmCO^n~FitifdrjtJ=g8In zXj1(c>y~0@M(=+QJaG?;SQX;jUjj zk15}JMHCdQEw?^NWSp`*z|WxE40i;SPE}xSdzNC>+)#dm@&sRDZ-ujtn3%$ z5kw(ZIO$(w|M&2(doj$t4og}Sr74S**Fuql0k}A={zA^Z+WpeE2Q6lA&}Ay#$qr9< zLWEE^S&gm8kRI(SQr7unZFz-AY^Q$b=g=rokioe9;9~~bIl%P(>+b9kV^~X+SeWfz zpWXHV^%8C8V^RBw$824eOzt{v9(%C`CUdbg0B3C)WiV+$?u@I>Ec$0G9Td0FMOham zqKMNGIJUgn86qkdV0L_GQt;-!Mn)-%Zh2={3jJ(;PkyEHS=OD2Z{ls%0A+;^kX}18 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�Iw9&bcq^CeQ6MBaEGf#abfPKe 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⩔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

    Ddcsb-!5l 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 Z);3<=N#x5PegOW=jIFPgTy=T+e*(6BL#_Y- literal 0 HcmV?d00001 diff --git a/helm-charts/FedML-Client/README.html b/helm-charts/FedML-Client/README.html deleted file mode 100644 index d8e8e5e3e..000000000 --- a/helm-charts/FedML-Client/README.html +++ /dev/null @@ -1,483 +0,0 @@ - - - - - - - README - - - - -

    Deploy -FedML Agent to Kubernetes Clusters via KubeFATE

    -

    Overview

    -

    This document provides guide on how to run FedML client and server -agent on Kuberentes using KubeFATE. KubeFATE uses Helm charts to -facilitate the deployment process, with which we can get all the -benefits provided by Kubernetes natively. And it provides additional -values including:

    -
      -
    • Declarative deployment definitions for application installing and -upgrading.
    • -
    • Easy management via the KubeFATE CLI.
    • -
    • Additional status check making sure the deployment is -successful.
    • -
    • Log aggregation for convenient debugging and monitoring.
    • -
    -

    The overall architecture for FedML with KubeFATE is shown in the -below diagram

    -
    -

    -
    -

    The high-level steps are:

    -
      -
    1. The user install KubeFATE service in the Kubernetes cluster.
    2. -
    3. The user install KubeFATE CLI program in the local machine.
    4. -
    5. The user define the FedML client deployment yaml and use KubeFATE to -deploy it.
    6. -
    7. The FedML client will register to the FedML public cloud MLOps -platform.
    8. -
    9. Optionally, the user can deploy more client instances and server -instances in the same Kubernetes cluster.
    10. -
    11. The user can now use the MLOps platform to orchestrate federated -learning trainings.
    12. -
    -

    Prerequisites

    -
    -

    Deploy KubeFATE Service and -CLI

    -

    Download the KubeFATE “k8s” deployment package from the KubeFATE release -page. Follow the KubeFATE K8s deploy guide (service -guide, cli -guide) to install KubeFATE service. For the service deployment, we -can stop after the “Preparing domain name and deploying KubeFATE in -Kubernetes” section. For the cli guide, we can stop after the “Verify -the KubeFATE CLI works properly” section.

    -

    In general this includes the following steps:

    -
      -
    1. Deploy KubeFATE service by applying the resources defined in the -“rbac-config” and “kubefate” yaml files.
    2. -
    3. Make sure an ingress controller is deployed that can expose KubeFATE -service. Otherwise we need to change the kubefate service type to -NodePort or LoadBalancer to expose it.
    4. -
    5. Download and install the KubeFATE cli program and configure the -local config yaml file to set the server address to the exposed KubeFATE -service address.
    6. -
    7. Use kubefate version to verify the cli can work with -the service.
    8. -
    -

    Upload FedML Charts

    -

    KubeFATE internally uses Helm chart to deploy FML application. To -support deploying FedML client, use the following command to upload -FedML client charts to the KubeFATE service:

    -
    $ kubefate chart upload -f fedml-client-<version>.tgz
    -

    After uploading the chart, use the kubefate chart list -command to verify the chart is successfully imported. The output should -contain an item looks like

    -
    UUID                       NAME             VERSION                 APPVERSION                   
    -<OTHERS OMITTED>                                
    -<some uuid>                fedml-client     0.7.355                 release        
    -

    If we want to deploy the FedML server too, we need to use -kubefate chart upload -f fedml-server-<version>.tgz -to upload the server chart.

    -

    Deploy the FedML Edge Client

    -

    Prepare a yaml file, for example, “fedml_client.yaml”, as below:

    -
    name: edge-client-1
    -namespace: fedml-edge-client-1
    -chartName: fedml-client
    -chartVersion: 0.7.355
    -# registry: ""
    -# pullPolicy: IfNotPresent
    -# imagePullSecrets:
    -  # - name: myregistrykey
    -# ingressClassName: nginx
    -modules:
    -  - client
    -
    -# ingress:
    -  # client:
    -    # annotations: {}
    -    # hosts:
    -      # - host: chart-example.local
    -      #   paths:
    -          # - path: /
    -          #   pathType: ImplementationSpecific
    -    # tls:
    -    #  - secretName: chart-example-tls
    -    #    hosts:
    -    #      - chart-example.local
    -
    -client:
    -  fedmlAccountId: <your account id>
    -  # fedmlVersion: "release"
    -  # fedmlClientOsName: "Linux"
    -  # replicaCount: 1
    -  # volume:
    -    # clientHomeDirHostPath: "/home/fedml-client"
    -    # clientHomeDirMountPath: "/home/fedml/fedml-client"
    -  # nameOverride: ""
    -  # fullnameOverride: ""
    -  # serviceAccount:
    -    # create: true
    -    # annotations: {}
    -    # name: ""
    -  # type: ClusterIP
    -  # port: 9988
    -  # podAnnotations:
    -  # nodeSelector:
    -  # tolerations:
    -  # affinity:
    -  # resources:
    -  # autoscaling:
    -    # enabled: false
    -    # minReplicas: 1
    -    # maxReplicas: 10
    -    # targetCPUUtilizationPercentage: 80
    -    # targetMemoryUtilizationPercentage: 80
    -  # podSecurityContext: {}
    -    # fsGroup: 2000
    -  # securityContext: { }
    -    # capabilities:
    -    #   drop:
    -    #   - ALL
    -    # readOnlyRootFilesystem: true
    -    # runAsNonRoot: true
    -    # runAsUser: 1000
    -

    The layout of the file is the typically called the “cluster yaml” for -KubeFATE. You can change the name and namespace fields according to your -needs. And the fedmlAccountId id field should be set to -your account id in the FedML MLOps platform. For the meanings of the -other fields, please refer to the helm chart values file. Typically, we -don’t need to change the default settings.

    -

    And, if the Kubernetes namespace doesn’t exist, we need to create it -beforehand:

    -
    $ kubectl create ns <your namespace>
    -

    Now we can install the above defined FedML client:

    -
    $ kubefate cluster install -f fedml_client.yaml
    -

    The above command will give a job_UUID we can use to -check the status:

    -
    # View deployment status
    -$ kubefate job describe ${job_UUID}
    -

    When the job status is Success, it indicates that the -deployment succeeded. Login to your MLOps account and the client should -be listed under the “Edge Device” page.

    -

    Check Deployed Client Status

    -

    After the deployment, we can use the follow command to get the UUID -of the deployed instance:

    -
    $ kubefate cluster list
    -

    Locate the UUID of the “cluster” and then we can get the detailed -status of it by:

    -
    $ kubefate cluster describe <UUID>
    -

    And check the logs of this instance:

    -
    $ kubefate cluster logs <UUID>
    -

    The logs subcommand can be useful during the future -training process.

    -

    (Optional) Deploy FedML -Server

    -

    We can optionally deploy FedML server instance that can be used in a -FedML “Run”. As described above, we need to firstly upload the FedML -server chart. And then we prepare the “cluster yaml” for server -deployment as:

    -
    name: edge-server-1
    -namespace: fedml-edge-server-1
    -chartName: fedml-server
    -chartVersion: 0.7.355
    -# registry: ""
    -# pullPolicy: IfNotPresent
    -# imagePullSecrets:
    -  # - name: myregistrykey
    -# ingressClassName: nginx
    -modules:
    -  - server
    -
    -# ingress:
    -  # server:
    -    # annotations: {}
    -    # hosts:
    -      # - host: chart-example.local
    -      #   paths:
    -          # - path: /
    -          #   pathType: ImplementationSpecific
    -    # tls:
    -    #  - secretName: chart-example-tls
    -    #    hosts:
    -    #      - chart-example.local
    -
    -server:
    -  fedmlAccountId: <your account id>
    -  # fedmlVersion: "release"
    -  # fedmlServerOsName: "Linux"
    -  # replicaCount: 1
    -  # volume:
    -    # serverHomeDirHostPath: "/home/fedml-server"
    -    # serverHomeDirMountPath: "/home/fedml/fedml-server"
    -  # nameOverride: ""
    -  # fullnameOverride: ""
    -  # serviceAccount:
    -    # create: true
    -    # annotations: {}
    -    # name: ""
    -  # type: ClusterIP
    -  # port: 9999
    -  # podAnnotations:
    -  # nodeSelector:
    -  # tolerations:
    -  # affinity:
    -  # resources:
    -  # autoscaling:
    -    # enabled: false
    -    # minReplicas: 1
    -    # maxReplicas: 10
    -    # targetCPUUtilizationPercentage: 80
    -    # targetMemoryUtilizationPercentage: 80
    -  # podSecurityContext: {}
    -    # fsGroup: 2000
    -  # securityContext: { }
    -    # capabilities:
    -    #   drop:
    -    #   - ALL
    -    # readOnlyRootFilesystem: true
    -    # runAsNonRoot: true
    -    # runAsUser: 1000
    -

    The configurable parameters are almost the same as the client -deployment. And we can use the same kubefate chart install, -kubefate cluster describe, -kubefate cluster logs commands to check its status.

    -

    After it has been successfully deployed, we can choose this server -instance when creating new FedML “Run”s.

    -

    Next Steps

    -

    We can follow same steps to deploy FedML clients and servers to other -namespaces in same Kubernetes cluster, or to other Kubernetes clusters -(which requires installing KubeFATE in those clusters too). Once we and -our collaborators have deployed all the instances we need, we can start -FedML training in the MLOps platform. This can be done by following the -MLOps platform’s official -document. We can now skip the “2. Install FedML Agent: fedml login -$account_id” section as now we have used KubeFATE to achieve that.

    - - diff --git a/helm-charts/FedML-Server/README.html b/helm-charts/FedML-Server/README.html deleted file mode 100644 index d8e8e5e3e..000000000 --- a/helm-charts/FedML-Server/README.html +++ /dev/null @@ -1,483 +0,0 @@ - - - - - - - README - - - - -

    Deploy -FedML Agent to Kubernetes Clusters via KubeFATE

    -

    Overview

    -

    This document provides guide on how to run FedML client and server -agent on Kuberentes using KubeFATE. KubeFATE uses Helm charts to -facilitate the deployment process, with which we can get all the -benefits provided by Kubernetes natively. And it provides additional -values including:

    -
      -
    • Declarative deployment definitions for application installing and -upgrading.
    • -
    • Easy management via the KubeFATE CLI.
    • -
    • Additional status check making sure the deployment is -successful.
    • -
    • Log aggregation for convenient debugging and monitoring.
    • -
    -

    The overall architecture for FedML with KubeFATE is shown in the -below diagram

    -
    -

    -
    -

    The high-level steps are:

    -
      -
    1. The user install KubeFATE service in the Kubernetes cluster.
    2. -
    3. The user install KubeFATE CLI program in the local machine.
    4. -
    5. The user define the FedML client deployment yaml and use KubeFATE to -deploy it.
    6. -
    7. The FedML client will register to the FedML public cloud MLOps -platform.
    8. -
    9. Optionally, the user can deploy more client instances and server -instances in the same Kubernetes cluster.
    10. -
    11. The user can now use the MLOps platform to orchestrate federated -learning trainings.
    12. -
    -

    Prerequisites

    -
      -
    • A running Kubernetes cluster and permissions to create KubeFATE -services and namespaces required by future deployments. For the -permissions KubeFATE needs, check its rbac -yaml file.
    • -
    • Basic knowledge of FedML and KubeFATE.
    • -
    -

    Deploy KubeFATE Service and -CLI

    -

    Download the KubeFATE “k8s” deployment package from the KubeFATE release -page. Follow the KubeFATE K8s deploy guide (service -guide, cli -guide) to install KubeFATE service. For the service deployment, we -can stop after the “Preparing domain name and deploying KubeFATE in -Kubernetes” section. For the cli guide, we can stop after the “Verify -the KubeFATE CLI works properly” section.

    -

    In general this includes the following steps:

    -
      -
    1. Deploy KubeFATE service by applying the resources defined in the -“rbac-config” and “kubefate” yaml files.
    2. -
    3. Make sure an ingress controller is deployed that can expose KubeFATE -service. Otherwise we need to change the kubefate service type to -NodePort or LoadBalancer to expose it.
    4. -
    5. Download and install the KubeFATE cli program and configure the -local config yaml file to set the server address to the exposed KubeFATE -service address.
    6. -
    7. Use kubefate version to verify the cli can work with -the service.
    8. -
    -

    Upload FedML Charts

    -

    KubeFATE internally uses Helm chart to deploy FML application. To -support deploying FedML client, use the following command to upload -FedML client charts to the KubeFATE service:

    -
    $ kubefate chart upload -f fedml-client-<version>.tgz
    -

    After uploading the chart, use the kubefate chart list -command to verify the chart is successfully imported. The output should -contain an item looks like

    -
    UUID                       NAME             VERSION                 APPVERSION                   
    -<OTHERS OMITTED>                                
    -<some uuid>                fedml-client     0.7.355                 release        
    -

    If we want to deploy the FedML server too, we need to use -kubefate chart upload -f fedml-server-<version>.tgz -to upload the server chart.

    -

    Deploy the FedML Edge Client

    -

    Prepare a yaml file, for example, “fedml_client.yaml”, as below:

    -
    name: edge-client-1
    -namespace: fedml-edge-client-1
    -chartName: fedml-client
    -chartVersion: 0.7.355
    -# registry: ""
    -# pullPolicy: IfNotPresent
    -# imagePullSecrets:
    -  # - name: myregistrykey
    -# ingressClassName: nginx
    -modules:
    -  - client
    -
    -# ingress:
    -  # client:
    -    # annotations: {}
    -    # hosts:
    -      # - host: chart-example.local
    -      #   paths:
    -          # - path: /
    -          #   pathType: ImplementationSpecific
    -    # tls:
    -    #  - secretName: chart-example-tls
    -    #    hosts:
    -    #      - chart-example.local
    -
    -client:
    -  fedmlAccountId: <your account id>
    -  # fedmlVersion: "release"
    -  # fedmlClientOsName: "Linux"
    -  # replicaCount: 1
    -  # volume:
    -    # clientHomeDirHostPath: "/home/fedml-client"
    -    # clientHomeDirMountPath: "/home/fedml/fedml-client"
    -  # nameOverride: ""
    -  # fullnameOverride: ""
    -  # serviceAccount:
    -    # create: true
    -    # annotations: {}
    -    # name: ""
    -  # type: ClusterIP
    -  # port: 9988
    -  # podAnnotations:
    -  # nodeSelector:
    -  # tolerations:
    -  # affinity:
    -  # resources:
    -  # autoscaling:
    -    # enabled: false
    -    # minReplicas: 1
    -    # maxReplicas: 10
    -    # targetCPUUtilizationPercentage: 80
    -    # targetMemoryUtilizationPercentage: 80
    -  # podSecurityContext: {}
    -    # fsGroup: 2000
    -  # securityContext: { }
    -    # capabilities:
    -    #   drop:
    -    #   - ALL
    -    # readOnlyRootFilesystem: true
    -    # runAsNonRoot: true
    -    # runAsUser: 1000
    -

    The layout of the file is the typically called the “cluster yaml” for -KubeFATE. You can change the name and namespace fields according to your -needs. And the fedmlAccountId id field should be set to -your account id in the FedML MLOps platform. For the meanings of the -other fields, please refer to the helm chart values file. Typically, we -don’t need to change the default settings.

    -

    And, if the Kubernetes namespace doesn’t exist, we need to create it -beforehand:

    -
    $ kubectl create ns <your namespace>
    -

    Now we can install the above defined FedML client:

    -
    $ kubefate cluster install -f fedml_client.yaml
    -

    The above command will give a job_UUID we can use to -check the status:

    -
    # View deployment status
    -$ kubefate job describe ${job_UUID}
    -

    When the job status is Success, it indicates that the -deployment succeeded. Login to your MLOps account and the client should -be listed under the “Edge Device” page.

    -

    Check Deployed Client Status

    -

    After the deployment, we can use the follow command to get the UUID -of the deployed instance:

    -
    $ kubefate cluster list
    -

    Locate the UUID of the “cluster” and then we can get the detailed -status of it by:

    -
    $ kubefate cluster describe <UUID>
    -

    And check the logs of this instance:

    -
    $ kubefate cluster logs <UUID>
    -

    The logs subcommand can be useful during the future -training process.

    -

    (Optional) Deploy FedML -Server

    -

    We can optionally deploy FedML server instance that can be used in a -FedML “Run”. As described above, we need to firstly upload the FedML -server chart. And then we prepare the “cluster yaml” for server -deployment as:

    -
    name: edge-server-1
    -namespace: fedml-edge-server-1
    -chartName: fedml-server
    -chartVersion: 0.7.355
    -# registry: ""
    -# pullPolicy: IfNotPresent
    -# imagePullSecrets:
    -  # - name: myregistrykey
    -# ingressClassName: nginx
    -modules:
    -  - server
    -
    -# ingress:
    -  # server:
    -    # annotations: {}
    -    # hosts:
    -      # - host: chart-example.local
    -      #   paths:
    -          # - path: /
    -          #   pathType: ImplementationSpecific
    -    # tls:
    -    #  - secretName: chart-example-tls
    -    #    hosts:
    -    #      - chart-example.local
    -
    -server:
    -  fedmlAccountId: <your account id>
    -  # fedmlVersion: "release"
    -  # fedmlServerOsName: "Linux"
    -  # replicaCount: 1
    -  # volume:
    -    # serverHomeDirHostPath: "/home/fedml-server"
    -    # serverHomeDirMountPath: "/home/fedml/fedml-server"
    -  # nameOverride: ""
    -  # fullnameOverride: ""
    -  # serviceAccount:
    -    # create: true
    -    # annotations: {}
    -    # name: ""
    -  # type: ClusterIP
    -  # port: 9999
    -  # podAnnotations:
    -  # nodeSelector:
    -  # tolerations:
    -  # affinity:
    -  # resources:
    -  # autoscaling:
    -    # enabled: false
    -    # minReplicas: 1
    -    # maxReplicas: 10
    -    # targetCPUUtilizationPercentage: 80
    -    # targetMemoryUtilizationPercentage: 80
    -  # podSecurityContext: {}
    -    # fsGroup: 2000
    -  # securityContext: { }
    -    # capabilities:
    -    #   drop:
    -    #   - ALL
    -    # readOnlyRootFilesystem: true
    -    # runAsNonRoot: true
    -    # runAsUser: 1000
    -

    The configurable parameters are almost the same as the client -deployment. And we can use the same kubefate chart install, -kubefate cluster describe, -kubefate cluster logs commands to check its status.

    -

    After it has been successfully deployed, we can choose this server -instance when creating new FedML “Run”s.

    -

    Next Steps

    -

    We can follow same steps to deploy FedML clients and servers to other -namespaces in same Kubernetes cluster, or to other Kubernetes clusters -(which requires installing KubeFATE in those clusters too). Once we and -our collaborators have deployed all the instances we need, we can start -FedML training in the MLOps platform. This can be done by following the -MLOps platform’s official -document. We can now skip the “2. Install FedML Agent: fedml login -$account_id” section as now we have used KubeFATE to achieve that.

    - - From 4d093af05ba24d0f004ca87788329c399f194f72 Mon Sep 17 00:00:00 2001 From: Chenlong Ma Date: Thu, 15 Dec 2022 15:08:46 +0800 Subject: [PATCH 23/28] Update KubeFATE to support FATE v1.10.0 Signed-off-by: Chenlong Ma --- docker-deploy/.env | 2 +- docker-deploy/README.md | 12 ++++++------ docker-deploy/README_zh.md | 12 ++++++------ docs/Customize_KubeFATE_Chart.md | 2 +- docs/Eggroll_with_TLS.md | 2 +- docs/Manage_FATE_and_FATE-Serving_Version.md | 8 ++++---- ...uster_in_One_Linux_Machine_with_MiniKube.md | 18 +++++++++--------- ...er_in_One_Linux_Machine_with_MiniKube_zh.md | 18 +++++++++--------- helm-charts/FATE-Exchange/Chart.yaml | 4 ++-- .../FATE-Exchange/values-template-example.yaml | 2 +- helm-charts/FATE-Exchange/values.yaml | 2 +- helm-charts/FATE/Chart.yaml | 4 ++-- helm-charts/FATE/values-template-example.yaml | 6 +++--- helm-charts/FATE/values.yaml | 2 +- helm-charts/UpgradeManager/values.yaml | 4 ++-- k8s-deploy/README.md | 4 ++-- k8s-deploy/README_zh.md | 4 ++-- k8s-deploy/cluster-spark-pulsar.yaml | 2 +- k8s-deploy/cluster-spark-rabbitmq.yaml | 2 +- k8s-deploy/cluster-spark-slim.yaml | 2 +- k8s-deploy/cluster.yaml | 2 +- .../cluster-spark-local-pulsar.yaml | 2 +- .../party-10000/cluster-spark-pulsar.yaml | 2 +- .../party-10000/cluster-spark-rabbitmq.yaml | 2 +- k8s-deploy/examples/party-10000/cluster.yaml | 2 +- .../party-9999/cluster-spark-local-pulsar.yaml | 2 +- .../party-9999/cluster-spark-pulsar.yaml | 2 +- .../party-9999/cluster-spark-rabbitmq.yaml | 2 +- k8s-deploy/examples/party-9999/cluster.yaml | 2 +- .../examples/party-exchange/rollsite.yaml | 2 +- .../examples/party-exchange/trafficServer.yaml | 2 +- k8s-deploy/examples/party.config | 4 ++-- 32 files changed, 69 insertions(+), 69 deletions(-) diff --git a/docker-deploy/.env b/docker-deploy/.env index bb1227020..cef87147c 100644 --- a/docker-deploy/.env +++ b/docker-deploy/.env @@ -1,5 +1,5 @@ RegistryURI= -TAG=1.9.2-release +TAG=1.10.0-release SERVING_TAG=2.1.6-release SSH_PORT=22 diff --git a/docker-deploy/README.md b/docker-deploy/README.md index ea20bdebe..2a2ab5c36 100644 --- a/docker-deploy/README.md +++ b/docker-deploy/README.md @@ -166,12 +166,12 @@ CONTAINER ID IMAGE COMMAND 3dca43f3c9d5 federatedai/serving-admin:2.1.5-release "/bin/sh -c 'java -c…" 5 minutes ago Up 5 minutes 0.0.0.0:8350->8350/tcp, :::8350->8350/tcp serving-9999_serving-admin_1 fe924918509b federatedai/serving-proxy:2.1.5-release "/bin/sh -c 'java -D…" 5 minutes ago Up 5 minutes 0.0.0.0:8059->8059/tcp, :::8059->8059/tcp, 0.0.0.0:8869->8869/tcp, :::8869->8869/tcp, 8879/tcp serving-9999_serving-proxy_1 b62ed8ba42b7 bitnami/zookeeper:3.7.0 "/opt/bitnami/script…" 5 minutes ago Up 5 minutes 0.0.0.0:2181->2181/tcp, :::2181->2181/tcp, 8080/tcp, 0.0.0.0:49226->2888/tcp, :::49226->2888/tcp, 0.0.0.0:49225->3888/tcp, :::49225->3888/tcp serving-9999_serving-zookeeper_1 -3c643324066f federatedai/client:1.9.2-release "/bin/sh -c 'flow in…" 5 minutes ago Up 5 minutes 0.0.0.0:20000->20000/tcp, :::20000->20000/tcp confs-9999_client_1 -3fe0af1ebd71 federatedai/fateboard:1.9.2-release "/bin/sh -c 'java -D…" 5 minutes ago Up 5 minutes 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp confs-9999_fateboard_1 -635b7d99357e federatedai/fateflow:1.9.2-release "container-entrypoin…" 5 minutes ago Up 5 minutes (healthy) 0.0.0.0:9360->9360/tcp, :::9360->9360/tcp, 8080/tcp, 0.0.0.0:9380->9380/tcp, :::9380->9380/tcp confs-9999_fateflow_1 -8b515f08add3 federatedai/eggroll:1.9.2-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 8080/tcp, 0.0.0.0:9370->9370/tcp, :::9370->9370/tcp confs-9999_rollsite_1 -108cc061c191 federatedai/eggroll:1.9.2-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 4670/tcp, 8080/tcp confs-9999_clustermanager_1 -f10575e76899 federatedai/eggroll:1.9.2-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 4671/tcp, 8080/tcp confs-9999_nodemanager_1 +3c643324066f federatedai/client:1.10.0-release "/bin/sh -c 'flow in…" 5 minutes ago Up 5 minutes 0.0.0.0:20000->20000/tcp, :::20000->20000/tcp confs-9999_client_1 +3fe0af1ebd71 federatedai/fateboard:1.10.0-release "/bin/sh -c 'java -D…" 5 minutes ago Up 5 minutes 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp confs-9999_fateboard_1 +635b7d99357e federatedai/fateflow:1.10.0-release "container-entrypoin…" 5 minutes ago Up 5 minutes (healthy) 0.0.0.0:9360->9360/tcp, :::9360->9360/tcp, 8080/tcp, 0.0.0.0:9380->9380/tcp, :::9380->9380/tcp confs-9999_fateflow_1 +8b515f08add3 federatedai/eggroll:1.10.0-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 8080/tcp, 0.0.0.0:9370->9370/tcp, :::9370->9370/tcp confs-9999_rollsite_1 +108cc061c191 federatedai/eggroll:1.10.0-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 4670/tcp, 8080/tcp confs-9999_clustermanager_1 +f10575e76899 federatedai/eggroll:1.10.0-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 4671/tcp, 8080/tcp confs-9999_nodemanager_1 aa0a0002de93 mysql:8.0.28 "docker-entrypoint.s…" 5 minutes ago Up 5 minutes 3306/tcp, 33060/tcp confs-9999_mysql_1 ``` diff --git a/docker-deploy/README_zh.md b/docker-deploy/README_zh.md index 32f5d6489..2b222f4fa 100644 --- a/docker-deploy/README_zh.md +++ b/docker-deploy/README_zh.md @@ -185,12 +185,12 @@ CONTAINER ID IMAGE COMMAND 3dca43f3c9d5 federatedai/serving-admin:2.1.5-release "/bin/sh -c 'java -c…" 5 minutes ago Up 5 minutes 0.0.0.0:8350->8350/tcp, :::8350->8350/tcp serving-9999_serving-admin_1 fe924918509b federatedai/serving-proxy:2.1.5-release "/bin/sh -c 'java -D…" 5 minutes ago Up 5 minutes 0.0.0.0:8059->8059/tcp, :::8059->8059/tcp, 0.0.0.0:8869->8869/tcp, :::8869->8869/tcp, 8879/tcp serving-9999_serving-proxy_1 b62ed8ba42b7 bitnami/zookeeper:3.7.0 "/opt/bitnami/script…" 5 minutes ago Up 5 minutes 0.0.0.0:2181->2181/tcp, :::2181->2181/tcp, 8080/tcp, 0.0.0.0:49226->2888/tcp, :::49226->2888/tcp, 0.0.0.0:49225->3888/tcp, :::49225->3888/tcp serving-9999_serving-zookeeper_1 -3c643324066f federatedai/client:1.9.2-release "/bin/sh -c 'flow in…" 5 minutes ago Up 5 minutes 0.0.0.0:20000->20000/tcp, :::20000->20000/tcp confs-9999_client_1 -3fe0af1ebd71 federatedai/fateboard:1.9.2-release "/bin/sh -c 'java -D…" 5 minutes ago Up 5 minutes 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp confs-9999_fateboard_1 -635b7d99357e federatedai/fateflow:1.9.2-release "container-entrypoin…" 5 minutes ago Up 5 minutes (healthy) 0.0.0.0:9360->9360/tcp, :::9360->9360/tcp, 8080/tcp, 0.0.0.0:9380->9380/tcp, :::9380->9380/tcp confs-9999_fateflow_1 -8b515f08add3 federatedai/eggroll:1.9.2-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 8080/tcp, 0.0.0.0:9370->9370/tcp, :::9370->9370/tcp confs-9999_rollsite_1 -108cc061c191 federatedai/eggroll:1.9.2-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 4670/tcp, 8080/tcp confs-9999_clustermanager_1 -f10575e76899 federatedai/eggroll:1.9.2-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 4671/tcp, 8080/tcp confs-9999_nodemanager_1 +3c643324066f federatedai/client:1.10.0-release "/bin/sh -c 'flow in…" 5 minutes ago Up 5 minutes 0.0.0.0:20000->20000/tcp, :::20000->20000/tcp confs-9999_client_1 +3fe0af1ebd71 federatedai/fateboard:1.10.0-release "/bin/sh -c 'java -D…" 5 minutes ago Up 5 minutes 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp confs-9999_fateboard_1 +635b7d99357e federatedai/fateflow:1.10.0-release "container-entrypoin…" 5 minutes ago Up 5 minutes (healthy) 0.0.0.0:9360->9360/tcp, :::9360->9360/tcp, 8080/tcp, 0.0.0.0:9380->9380/tcp, :::9380->9380/tcp confs-9999_fateflow_1 +8b515f08add3 federatedai/eggroll:1.10.0-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 8080/tcp, 0.0.0.0:9370->9370/tcp, :::9370->9370/tcp confs-9999_rollsite_1 +108cc061c191 federatedai/eggroll:1.10.0-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 4670/tcp, 8080/tcp confs-9999_clustermanager_1 +f10575e76899 federatedai/eggroll:1.10.0-release "/tini -- bash -c 'j…" 5 minutes ago Up 5 minutes 4671/tcp, 8080/tcp confs-9999_nodemanager_1 aa0a0002de93 mysql:8.0.28 "docker-entrypoint.s…" 5 minutes ago Up 5 minutes 3306/tcp, 33060/tcp confs-9999_mysql_1 ``` diff --git a/docs/Customize_KubeFATE_Chart.md b/docs/Customize_KubeFATE_Chart.md index 1ddcf8afb..14c6ba1ef 100644 --- a/docs/Customize_KubeFATE_Chart.md +++ b/docs/Customize_KubeFATE_Chart.md @@ -28,7 +28,7 @@ Unzip one KubeFATE's Chart, you can find a `templates` folder and 4 files: ## `templates` folder In `templates` folder, the template yaml file combined with values will generate valid Kubernetes manifest files for each `FATE` or `FATE-Serving` component. -e.g. For `FATE` v1.9.2, there are following templates locating in `template` folder: +e.g. For `FATE` v1.10.0, there are following templates locating in `template` folder: 1. eggroll: eggroll module, including 3 eggroll related components: clustermanager, nodemanager and rollsite/lb-rollsite. 2. spark: spark module, including spark, hdfs, nginx, pulsar/rabbitmq. People just need to pick one module from spark and eggroll. 3. client: the module for the jupyter notebook client. diff --git a/docs/Eggroll_with_TLS.md b/docs/Eggroll_with_TLS.md index 53d34d735..0ff3b817f 100644 --- a/docs/Eggroll_with_TLS.md +++ b/docs/Eggroll_with_TLS.md @@ -146,7 +146,7 @@ Then in the cluster.yaml file of FATE-Exchange, turn on the ```enableTLS``` swit ## Docker-Compose mode -In KubeFATE release v1.9.2, we will not provide a switch for enabling TLS for rollsite. This can be done in below manual steps: +In KubeFATE release v1.10.0, we will not provide a switch for enabling TLS for rollsite. This can be done in below manual steps: 1. Generate the certs, as above documents shows, for every FATE cluster and for the FATE Exchange if needed. 2. Run `docker ps` to get the container id of the rollsite. diff --git a/docs/Manage_FATE_and_FATE-Serving_Version.md b/docs/Manage_FATE_and_FATE-Serving_Version.md index c8ef7599a..084688989 100644 --- a/docs/Manage_FATE_and_FATE-Serving_Version.md +++ b/docs/Manage_FATE_and_FATE-Serving_Version.md @@ -30,18 +30,18 @@ The chart can be downloaded in each KubeFATE release, with name `fate-{release_v Download it and copy it to the folder to upload. ``` -$ kubefate chart upload -f ./fate-v1.9.2.tgz +$ kubefate chart upload -f ./fate-v1.10.0.tgz Upload file success $ kubefate chart ls UUID NAME VERSION APPVERSION -ca3f7843-749a-4f69-9f6b-4c544a7623ac fate v1.9.2 v1.9.2 +ca3f7843-749a-4f69-9f6b-4c544a7623ac fate v1.10.0 v1.10.0 ``` -Then, we can deploy the fate cluster of v1.9.2 version. The detail of cluster.yaml please refer to: [FATE Cluster Configuration](./configurations/FATE_cluster_configuration.md) +Then, we can deploy the fate cluster of v1.10.0 version. The detail of cluster.yaml please refer to: [FATE Cluster Configuration](./configurations/FATE_cluster_configuration.md) ``` chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 ``` We can delete the chart with: diff --git a/docs/tutorials/Build_Two_Parties_FATE_Cluster_in_One_Linux_Machine_with_MiniKube.md b/docs/tutorials/Build_Two_Parties_FATE_Cluster_in_One_Linux_Machine_with_MiniKube.md index a927718d6..10b8e6b10 100644 --- a/docs/tutorials/Build_Two_Parties_FATE_Cluster_in_One_Linux_Machine_with_MiniKube.md +++ b/docs/tutorials/Build_Two_Parties_FATE_Cluster_in_One_Linux_Machine_with_MiniKube.md @@ -21,14 +21,14 @@ After the tutorial, the deployment architecture looks like the following diagram 5. Network connectivity to dockerhub or 163 Docker Image Registry, and google gcr. 6. Setup the global KubeFATE version using in the tutorial and create a folder for the whole tutorial. ``` -export fate_version=v1.9.2 && export kubefate_version=v1.4.5 && cd ~ && mkdir demo && cd demo +export fate_version=v1.10.0 && export kubefate_version=v1.4.5 && cd ~ && mkdir demo && cd demo ``` Notes: * When talking about KubeFATE version, usually there are 3 notions: * The KubeFATE CLI version, in this tutorial, it is v1.4.5. * The KubeFATE service version, in this tutorial, it is v1.4.5. - * The FATE version, in this tutorial, it is v1.9.2, it also means the version of the helm chart of FATE, currently we use this version to tag the KubeFATE GitHub master branch. + * The FATE version, in this tutorial, it is v1.10.0, it also means the version of the helm chart of FATE, currently we use this version to tag the KubeFATE GitHub master branch. * **In this tutorial, the IP of the machine we used is 192.168.100.123. Please change it to your machine's IP in all the following commands and config files.** # Start Tutorial @@ -87,7 +87,7 @@ When all the pods are in the ready state, it means your Kubernetes cluster is re ## Setup Kubefate ### Install KubeFATE CLI Go to [KubeFATE Release](https://github.com/FederatedAI/KubeFATE/releases), and find the latest kubefate-k8s release -pack, which is `v1.9.2` as set to ENVs before. (replace ${fate_version} with the newest version available) +pack, which is `v1.10.0` as set to ENVs before. (replace ${fate_version} with the newest version available) ``` curl -LO https://github.com/FederatedAI/KubeFATE/releases/download/${fate_version}/kubefate-k8s-${fate_version}.tar.gz && tar -xzf ./kubefate-k8s-${fate_version}.tar.gz ``` @@ -256,7 +256,7 @@ For `/kubefate/examples/party-9999/cluster-spark-pulsar.yaml`, modify it as foll name: fate-9999 namespace: fate-9999 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 9999 registry: "" pullPolicy: @@ -340,7 +340,7 @@ and for fate-10000: name: fate-10000 namespace: fate-10000 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 10000 registry: "" pullPolicy: @@ -440,8 +440,8 @@ or watch the clusters till their STATUS changing to `Running`: ``` kubefate@machine:~/kubefate$ watch kubefate cluster ls UUID NAME NAMESPACE REVISION STATUS CHART ChartVERSION AGE -29878fa9-aeee-4ae5-a5b7-fd4e9eb7c1c3 fate-9999 fate-9999 1 Running fate v1.9.2 88s -dacc0549-b9fc-463f-837a-4e7316db2537 fate-10000 fate-10000 1 Running fate v1.9.2 69s +29878fa9-aeee-4ae5-a5b7-fd4e9eb7c1c3 fate-9999 fate-9999 1 Running fate v1.10.0 88s +dacc0549-b9fc-463f-837a-4e7316db2537 fate-10000 fate-10000 1 Running fate v1.10.0 69s ``` We have about 10G Docker images that need to be pulled, this step will take a while for the first time. An alternative way is offline loading the images to the local environment. @@ -479,13 +479,13 @@ UUID 29878fa9-aeee-4ae5-a5b7-fd4e9eb7c1c3 Name fate-9999 NameSpace fate-9999 ChartName fate -ChartVersion v1.9.2 +ChartVersion v1.10.0 Revision 1 Age 54m Status Running Spec algorithm: Basic chartName: fate - chartVersion: v1.9.2 + chartVersion: v1.10.0 computing: Spark device: CPU federation: Pulsar diff --git a/docs/tutorials/Build_Two_Parties_FATE_Cluster_in_One_Linux_Machine_with_MiniKube_zh.md b/docs/tutorials/Build_Two_Parties_FATE_Cluster_in_One_Linux_Machine_with_MiniKube_zh.md index 523fe01a6..de43ed832 100644 --- a/docs/tutorials/Build_Two_Parties_FATE_Cluster_in_One_Linux_Machine_with_MiniKube_zh.md +++ b/docs/tutorials/Build_Two_Parties_FATE_Cluster_in_One_Linux_Machine_with_MiniKube_zh.md @@ -17,14 +17,14 @@ 5. 要保证安装机器可以正常访问Docker Hub或者网易云镜像仓库,以及Google gcr; 6. 预先创建一个目录,以便整个过程使用该目录作为工作目录,命令如下: ``` -export fate_version=v1.9.2 && export kubefate_version=v1.4.5 && cd ~ && mkdir demo && cd demo +export fate_version=v1.10.0 && export kubefate_version=v1.4.5 && cd ~ && mkdir demo && cd demo ``` Notes: * 当我们提到"KubeFATE的版本",通常来讲会有三个概念: * KubeFATE命令行工具的版本,在本教程中为v1.4.5。 * KubeFATE服务版本,在本教程中为v1.4.5。 - * FATE版本,在本教程中v1.9.2,它也意味着FATE的Helm Chart的版本, 值得注意的是我们用这个版本来给GitHub上的KubeFATE的发布打tag。 + * FATE版本,在本教程中v1.10.0,它也意味着FATE的Helm Chart的版本, 值得注意的是我们用这个版本来给GitHub上的KubeFATE的发布打tag。 * **下文介绍的MiniKube机器IP地址是192.168.100.123。请修改为你准备的实验机器IP地址** # 开始安装 @@ -77,7 +77,7 @@ sudo minikube addons enable ingress ## 安装Kubefate ### 下载KubeFATE命令行工具 -我们从Github上 [KubeFATE Release](https://github.com/FederatedAI/KubeFATE/releases)页面找到Kuberetes部署的下载包,并下载对应版本,如前面环境变量设置`v1.9.2`, +我们从Github上 [KubeFATE Release](https://github.com/FederatedAI/KubeFATE/releases)页面找到Kuberetes部署的下载包,并下载对应版本,如前面环境变量设置`v1.10.0`, ``` curl -LO https://github.com/FederatedAI/KubeFATE/releases/download/${fate_version}/kubefate-k8s-${fate_version}.tar.gz && tar -xzf ./kubefate-k8s-${fate_version}.tar.gz ``` @@ -237,7 +237,7 @@ kubectl -n fate-10000 create secret docker-registry myregistrykey \ name: fate-9999 namespace: fate-9999 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 9999 registry: "" pullPolicy: @@ -322,7 +322,7 @@ pulsar: name: fate-10000 namespace: fate-10000 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 10000 registry: "" pullPolicy: @@ -418,8 +418,8 @@ create job success, job id=7752db70-e368-41fa-8827-d39411728d1b ``` kubefate@machine:~/kubefate$ watch kubefate cluster ls UUID NAME NAMESPACE REVISION STATUS CHART ChartVERSION AGE -29878fa9-aeee-4ae5-a5b7-fd4e9eb7c1c3 fate-9999 fate-9999 1 Running fate v1.9.2 88s -dacc0549-b9fc-463f-837a-4e7316db2537 fate-10000 fate-10000 1 Running fate v1.9.2 69s +29878fa9-aeee-4ae5-a5b7-fd4e9eb7c1c3 fate-9999 fate-9999 1 Running fate v1.10.0 88s +dacc0549-b9fc-463f-837a-4e7316db2537 fate-10000 fate-10000 1 Running fate v1.10.0 69s ``` 因为这个步骤需要到网易云镜像仓库去下载约10G的镜像,所以第一次执行视乎你的网络情况需要一定时间。 检查下载的进度可以用 @@ -446,13 +446,13 @@ UUID 29878fa9-aeee-4ae5-a5b7-fd4e9eb7c1c3 Name fate-9999 NameSpace fate-9999 ChartName fate -ChartVersion v1.9.2 +ChartVersion v1.10.0 Revision 1 Age 54m Status Running Spec algorithm: Basic chartName: fate - chartVersion: v1.9.2 + chartVersion: v1.10.0 computing: Spark device: CPU federation: Pulsar diff --git a/helm-charts/FATE-Exchange/Chart.yaml b/helm-charts/FATE-Exchange/Chart.yaml index 24c642d73..253a79e81 100644 --- a/helm-charts/FATE-Exchange/Chart.yaml +++ b/helm-charts/FATE-Exchange/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v1 -appVersion: v1.9.2 +appVersion: v1.10.0 description: A Helm chart for fate exchange name: fate-exchange -version: v1.9.2 +version: v1.10.0 diff --git a/helm-charts/FATE-Exchange/values-template-example.yaml b/helm-charts/FATE-Exchange/values-template-example.yaml index b4f9c25ec..c711d9ac4 100644 --- a/helm-charts/FATE-Exchange/values-template-example.yaml +++ b/helm-charts/FATE-Exchange/values-template-example.yaml @@ -1,7 +1,7 @@ name: fate-exchange namespace: fate-exchange chartName: fate-exchange -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 1 registry: "" pullPolicy: diff --git a/helm-charts/FATE-Exchange/values.yaml b/helm-charts/FATE-Exchange/values.yaml index 8d81142f5..1c61523d8 100644 --- a/helm-charts/FATE-Exchange/values.yaml +++ b/helm-charts/FATE-Exchange/values.yaml @@ -4,7 +4,7 @@ partyName: fate-exchange image: registry: federatedai isThridParty: - tag: 1.9.2-release + tag: 1.10.0-release pullPolicy: IfNotPresent imagePullSecrets: # - name: diff --git a/helm-charts/FATE/Chart.yaml b/helm-charts/FATE/Chart.yaml index 5cb4682d2..85a11ebf7 100644 --- a/helm-charts/FATE/Chart.yaml +++ b/helm-charts/FATE/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v1 -appVersion: v1.9.2 +appVersion: v1.10.0 description: A Helm chart for fate-training name: fate -version: v1.9.2 +version: v1.10.0 home: https://fate.fedai.org icon: https://aisp-1251170195.cos.ap-hongkong.myqcloud.com/wp-content/uploads/sites/12/2019/09/logo.png sources: diff --git a/helm-charts/FATE/values-template-example.yaml b/helm-charts/FATE/values-template-example.yaml index c5d0a6017..3e4770d0e 100644 --- a/helm-charts/FATE/values-template-example.yaml +++ b/helm-charts/FATE/values-template-example.yaml @@ -1,7 +1,7 @@ name: fate-9999 namespace: fate-9999 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 9999 registry: "" pullPolicy: @@ -274,7 +274,7 @@ skippedKeys: # spark: # master: # Image: "federatedai/spark-master" - # ImageTag: "1.9.2-release" + # ImageTag: "1.10.0-release" # replicas: 1 # resources: # requests: @@ -290,7 +290,7 @@ skippedKeys: # nodePort: 30977 # worker: # Image: "federatedai/spark-worker" - # ImageTag: "1.9.2-release" + # ImageTag: "1.10.0-release" # replicas: 2 # resources: # requests: diff --git a/helm-charts/FATE/values.yaml b/helm-charts/FATE/values.yaml index cadafa9aa..84515aec4 100644 --- a/helm-charts/FATE/values.yaml +++ b/helm-charts/FATE/values.yaml @@ -2,7 +2,7 @@ image: registry: federatedai isThridParty: - tag: 1.9.2-release + tag: 1.10.0-release pullPolicy: IfNotPresent imagePullSecrets: # - name: diff --git a/helm-charts/UpgradeManager/values.yaml b/helm-charts/UpgradeManager/values.yaml index fda03b93a..b49d24dbb 100644 --- a/helm-charts/UpgradeManager/values.yaml +++ b/helm-charts/UpgradeManager/values.yaml @@ -1,4 +1,4 @@ username: fate password: fate_dev -start: 1.9.2 -target: 1.9.2 \ No newline at end of file +start: 1.10.0 +target: 1.10.0 \ No newline at end of file diff --git a/k8s-deploy/README.md b/k8s-deploy/README.md index 41dea4f2c..77293e88e 100644 --- a/k8s-deploy/README.md +++ b/k8s-deploy/README.md @@ -186,13 +186,13 @@ UUID 24bb75ff-f636-4c64-8c04-1b9073f89a2f Name fate-9999 NameSpace fate-9999 ChartName fate -ChartVersion v1.9.2 +ChartVersion v1.10.0 Revision 1 Age 15m Status Running Spec algorithm: Basic chartName: fate - chartVersion: v1.9.2 + chartVersion: v1.10.0 computing: Eggroll device: CPU federation: Eggroll diff --git a/k8s-deploy/README_zh.md b/k8s-deploy/README_zh.md index 4cb67601b..9486ae68c 100644 --- a/k8s-deploy/README_zh.md +++ b/k8s-deploy/README_zh.md @@ -185,13 +185,13 @@ UUID 24bb75ff-f636-4c64-8c04-1b9073f89a2f Name fate-9999 NameSpace fate-9999 ChartName fate -ChartVersion v1.9.2 +ChartVersion v1.10.0 Revision 1 Age 15m Status Running Spec algorithm: Basic chartName: fate - chartVersion: v1.9.2 + chartVersion: v1.10.0 computing: Eggroll device: CPU federation: Eggroll diff --git a/k8s-deploy/cluster-spark-pulsar.yaml b/k8s-deploy/cluster-spark-pulsar.yaml index 76a26c497..df9b1ad16 100644 --- a/k8s-deploy/cluster-spark-pulsar.yaml +++ b/k8s-deploy/cluster-spark-pulsar.yaml @@ -1,7 +1,7 @@ name: fate-9999 namespace: fate-9999 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 9999 registry: "" pullPolicy: diff --git a/k8s-deploy/cluster-spark-rabbitmq.yaml b/k8s-deploy/cluster-spark-rabbitmq.yaml index 71e89e0c4..b4037cb12 100644 --- a/k8s-deploy/cluster-spark-rabbitmq.yaml +++ b/k8s-deploy/cluster-spark-rabbitmq.yaml @@ -1,7 +1,7 @@ name: fate-9999 namespace: fate-9999 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 9999 registry: "" pullPolicy: diff --git a/k8s-deploy/cluster-spark-slim.yaml b/k8s-deploy/cluster-spark-slim.yaml index 4c988537f..653c78065 100644 --- a/k8s-deploy/cluster-spark-slim.yaml +++ b/k8s-deploy/cluster-spark-slim.yaml @@ -1,7 +1,7 @@ name: fate-9999 namespace: fate-9999 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 9999 registry: "" pullPolicy: diff --git a/k8s-deploy/cluster.yaml b/k8s-deploy/cluster.yaml index c1f0aa735..e3858d754 100644 --- a/k8s-deploy/cluster.yaml +++ b/k8s-deploy/cluster.yaml @@ -1,7 +1,7 @@ name: fate-9999 namespace: fate-9999 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 9999 registry: "" pullPolicy: diff --git a/k8s-deploy/examples/party-10000/cluster-spark-local-pulsar.yaml b/k8s-deploy/examples/party-10000/cluster-spark-local-pulsar.yaml index 411459038..df69d5caf 100644 --- a/k8s-deploy/examples/party-10000/cluster-spark-local-pulsar.yaml +++ b/k8s-deploy/examples/party-10000/cluster-spark-local-pulsar.yaml @@ -1,7 +1,7 @@ name: fate-10000 namespace: fate-10000 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 10000 registry: "" pullPolicy: diff --git a/k8s-deploy/examples/party-10000/cluster-spark-pulsar.yaml b/k8s-deploy/examples/party-10000/cluster-spark-pulsar.yaml index b8a2e0b20..e798aadbe 100644 --- a/k8s-deploy/examples/party-10000/cluster-spark-pulsar.yaml +++ b/k8s-deploy/examples/party-10000/cluster-spark-pulsar.yaml @@ -1,7 +1,7 @@ name: fate-10000 namespace: fate-10000 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 10000 registry: "" pullPolicy: diff --git a/k8s-deploy/examples/party-10000/cluster-spark-rabbitmq.yaml b/k8s-deploy/examples/party-10000/cluster-spark-rabbitmq.yaml index 0c9a87443..d1d4028a8 100644 --- a/k8s-deploy/examples/party-10000/cluster-spark-rabbitmq.yaml +++ b/k8s-deploy/examples/party-10000/cluster-spark-rabbitmq.yaml @@ -1,7 +1,7 @@ name: fate-10000 namespace: fate-10000 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 10000 registry: "" pullPolicy: diff --git a/k8s-deploy/examples/party-10000/cluster.yaml b/k8s-deploy/examples/party-10000/cluster.yaml index 6f4380d6d..fc90e7033 100644 --- a/k8s-deploy/examples/party-10000/cluster.yaml +++ b/k8s-deploy/examples/party-10000/cluster.yaml @@ -1,7 +1,7 @@ name: fate-10000 namespace: fate-10000 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 10000 registry: "" pullPolicy: diff --git a/k8s-deploy/examples/party-9999/cluster-spark-local-pulsar.yaml b/k8s-deploy/examples/party-9999/cluster-spark-local-pulsar.yaml index 29736bfec..8d83d6099 100644 --- a/k8s-deploy/examples/party-9999/cluster-spark-local-pulsar.yaml +++ b/k8s-deploy/examples/party-9999/cluster-spark-local-pulsar.yaml @@ -1,7 +1,7 @@ name: fate-9999 namespace: fate-9999 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 9999 registry: "" pullPolicy: diff --git a/k8s-deploy/examples/party-9999/cluster-spark-pulsar.yaml b/k8s-deploy/examples/party-9999/cluster-spark-pulsar.yaml index 101525d0d..4c4912b76 100644 --- a/k8s-deploy/examples/party-9999/cluster-spark-pulsar.yaml +++ b/k8s-deploy/examples/party-9999/cluster-spark-pulsar.yaml @@ -1,7 +1,7 @@ name: fate-9999 namespace: fate-9999 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 9999 registry: "" pullPolicy: diff --git a/k8s-deploy/examples/party-9999/cluster-spark-rabbitmq.yaml b/k8s-deploy/examples/party-9999/cluster-spark-rabbitmq.yaml index 60f75c1ac..a744eee42 100644 --- a/k8s-deploy/examples/party-9999/cluster-spark-rabbitmq.yaml +++ b/k8s-deploy/examples/party-9999/cluster-spark-rabbitmq.yaml @@ -1,7 +1,7 @@ name: fate-9999 namespace: fate-9999 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 9999 registry: "" pullPolicy: diff --git a/k8s-deploy/examples/party-9999/cluster.yaml b/k8s-deploy/examples/party-9999/cluster.yaml index 1e2e14727..69f6fc00b 100644 --- a/k8s-deploy/examples/party-9999/cluster.yaml +++ b/k8s-deploy/examples/party-9999/cluster.yaml @@ -1,7 +1,7 @@ name: fate-9999 namespace: fate-9999 chartName: fate -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 9999 registry: "" pullPolicy: diff --git a/k8s-deploy/examples/party-exchange/rollsite.yaml b/k8s-deploy/examples/party-exchange/rollsite.yaml index ae73dcec7..d67a60fb8 100644 --- a/k8s-deploy/examples/party-exchange/rollsite.yaml +++ b/k8s-deploy/examples/party-exchange/rollsite.yaml @@ -1,7 +1,7 @@ name: fate-exchange namespace: fate-exchange chartName: fate-exchange -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 1 registry: "" pullPolicy: diff --git a/k8s-deploy/examples/party-exchange/trafficServer.yaml b/k8s-deploy/examples/party-exchange/trafficServer.yaml index 8da89524c..c497cd02e 100644 --- a/k8s-deploy/examples/party-exchange/trafficServer.yaml +++ b/k8s-deploy/examples/party-exchange/trafficServer.yaml @@ -1,7 +1,7 @@ name: fate-exchange namespace: fate-exchange chartName: fate-exchange -chartVersion: v1.9.2 +chartVersion: v1.10.0 partyId: 1 registry: "" pullPolicy: diff --git a/k8s-deploy/examples/party.config b/k8s-deploy/examples/party.config index 0a54025ea..89fc3c3ec 100644 --- a/k8s-deploy/examples/party.config +++ b/k8s-deploy/examples/party.config @@ -1,5 +1,5 @@ -fate_chartVersion=v1.9.2 -fate_imageTAG=1.9.2-release +fate_chartVersion=v1.10.0 +fate_imageTAG=1.10.0-release fate_serving_chartVersion=v2.1.6 fate_serving_imageTAG=2.1.6-release party_9999_IP=192.168.9.1 From f08d4d149dda33fd76df22b089118f8a222bb696 Mon Sep 17 00:00:00 2001 From: Chenlong Ma Date: Wed, 4 Jan 2023 16:37:18 +0800 Subject: [PATCH 24/28] Fix flow init failure Signed-off-by: Chenlong Ma --- docker-deploy/training_template/docker-compose-eggroll.yml | 2 +- docker-deploy/training_template/docker-compose-spark-slim.yml | 2 +- docker-deploy/training_template/docker-compose-spark.yml | 2 +- helm-charts/FATE/templates/core/client/statefulSet.yaml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docker-deploy/training_template/docker-compose-eggroll.yml b/docker-deploy/training_template/docker-compose-eggroll.yml index 514d73ac4..4d6b0fb59 100644 --- a/docker-deploy/training_template/docker-compose-eggroll.yml +++ b/docker-deploy/training_template/docker-compose-eggroll.yml @@ -162,7 +162,7 @@ services: - fateflow networks: - fate-network - command: ["bash", "-c", "flow init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && pipeline init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=$${NOTEBOOK_HASHED_PASSWORD} "] + command: ["bash", "-c", "pipeline init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && flow init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=$${NOTEBOOK_HASHED_PASSWORD} "] mysql: image: "mysql:8.0.28" diff --git a/docker-deploy/training_template/docker-compose-spark-slim.yml b/docker-deploy/training_template/docker-compose-spark-slim.yml index 89202ca44..fae0c679c 100644 --- a/docker-deploy/training_template/docker-compose-spark-slim.yml +++ b/docker-deploy/training_template/docker-compose-spark-slim.yml @@ -178,4 +178,4 @@ services: - fateflow networks: - fate-network - command: ["bash", "-c", "flow init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && pipeline init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=$${NOTEBOOK_HASHED_PASSWORD} "] \ No newline at end of file + command: ["bash", "-c", "pipeline init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && flow init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=$${NOTEBOOK_HASHED_PASSWORD} "] diff --git a/docker-deploy/training_template/docker-compose-spark.yml b/docker-deploy/training_template/docker-compose-spark.yml index e44049b8c..01e20a27a 100644 --- a/docker-deploy/training_template/docker-compose-spark.yml +++ b/docker-deploy/training_template/docker-compose-spark.yml @@ -263,4 +263,4 @@ services: - fateflow networks: - fate-network - command: ["bash", "-c", "flow init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && pipeline init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=$${NOTEBOOK_HASHED_PASSWORD} "] \ No newline at end of file + command: ["bash", "-c", "pipeline init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && flow init --ip $${FATE_FLOW_IP} --port $${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=$${NOTEBOOK_HASHED_PASSWORD} "] diff --git a/helm-charts/FATE/templates/core/client/statefulSet.yaml b/helm-charts/FATE/templates/core/client/statefulSet.yaml index a44b845ae..83f218db0 100644 --- a/helm-charts/FATE/templates/core/client/statefulSet.yaml +++ b/helm-charts/FATE/templates/core/client/statefulSet.yaml @@ -47,7 +47,7 @@ spec: value: {{ .Values.modules.client.notebook_hashed_password }} ports: - containerPort: 20000 - command: ["bash", "-c", "flow init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && pipeline init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=${NOTEBOOK_HASHED_PASSWORD}"] + command: ["bash", "-c", "pipeline init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && flow init --ip ${FATE_FLOW_IP} --port ${FATE_FLOW_PORT} && jupyter notebook --ip=0.0.0.0 --port=20000 --allow-root --debug --NotebookApp.notebook_dir='/data/projects/fate/' --no-browser --NotebookApp.token='' --NotebookApp.password=${NOTEBOOK_HASHED_PASSWORD}"] livenessProbe: httpGet: path: / From e32e43db07e49138b8c1a243ec303ef064ed4c63 Mon Sep 17 00:00:00 2001 From: Chenlong Ma Date: Thu, 5 Jan 2023 16:14:50 +0800 Subject: [PATCH 25/28] Fix spark-worker image name Signed-off-by: Chenlong Ma --- docker-deploy/generate_config.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docker-deploy/generate_config.sh b/docker-deploy/generate_config.sh index 01ec6e94c..7fe37fd81 100755 --- a/docker-deploy/generate_config.sh +++ b/docker-deploy/generate_config.sh @@ -237,7 +237,7 @@ GenerateConfig() { Suffix="" # computing if [ "$computing" == "Spark" ] || [ "$computing" == "Spark_local" ]; then - Suffix=$Suffix"-spark" + Suffix=$Suffix"" fi # algorithm if [ "$algorithm" == "NN" ]; then @@ -249,12 +249,13 @@ GenerateConfig() { fi # federatedai/fateflow-${computing}-${algorithm}-${device}:${version} - sed -i "s#image: \"federatedai/fateflow:\${TAG}\"#image: \"federatedai/fateflow${Suffix}:\${TAG}\"#g" ./confs-$party_id/docker-compose.yml # eggroll or spark-worker if [ "$computing" == "Eggroll" ]; then + sed -i "s#image: \"federatedai/fateflow:\${TAG}\"#image: \"federatedai/fateflow${Suffix}:\${TAG}\"#g" ./confs-$party_id/docker-compose.yml sed -i "s#image: \"federatedai/eggroll:\${TAG}\"#image: \"federatedai/eggroll${Suffix}:\${TAG}\"#g" ./confs-$party_id/docker-compose.yml elif [ "$computing" == "Spark" ]; then + sed -i "s#image: \"federatedai/fateflow:\${TAG}\"#image: \"federatedai/fateflow-spark${Suffix}:\${TAG}\"#g" ./confs-$party_id/docker-compose.yml sed -i "s#image: \"federatedai/spark-worker:\${TAG}\"#image: \"federatedai/spark-worker${Suffix}:\${TAG}\"#g" ./confs-$party_id/docker-compose.yml fi From 352f143dcf8cea52b4f1c51d2ac2c797ed2f1488 Mon Sep 17 00:00:00 2001 From: Chenlong Ma Date: Mon, 9 Jan 2023 12:03:57 +0800 Subject: [PATCH 26/28] Fix spark-local docker-compose.yaml generate Signed-off-by: Chenlong Ma --- docker-deploy/generate_config.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-deploy/generate_config.sh b/docker-deploy/generate_config.sh index 7fe37fd81..48900794c 100755 --- a/docker-deploy/generate_config.sh +++ b/docker-deploy/generate_config.sh @@ -254,7 +254,7 @@ GenerateConfig() { if [ "$computing" == "Eggroll" ]; then sed -i "s#image: \"federatedai/fateflow:\${TAG}\"#image: \"federatedai/fateflow${Suffix}:\${TAG}\"#g" ./confs-$party_id/docker-compose.yml sed -i "s#image: \"federatedai/eggroll:\${TAG}\"#image: \"federatedai/eggroll${Suffix}:\${TAG}\"#g" ./confs-$party_id/docker-compose.yml - elif [ "$computing" == "Spark" ]; then + elif [ "$computing" == "Spark" ] || [ "$computing" == "Spark_local" ]; then sed -i "s#image: \"federatedai/fateflow:\${TAG}\"#image: \"federatedai/fateflow-spark${Suffix}:\${TAG}\"#g" ./confs-$party_id/docker-compose.yml sed -i "s#image: \"federatedai/spark-worker:\${TAG}\"#image: \"federatedai/spark-worker${Suffix}:\${TAG}\"#g" ./confs-$party_id/docker-compose.yml fi From 7924559c3df30a545628c73c2d4ebdd8531e52f4 Mon Sep 17 00:00:00 2001 From: Chenlong Ma Date: Mon, 9 Jan 2023 12:04:43 +0800 Subject: [PATCH 27/28] Fix KubeFATE upgrade failed Signed-off-by: Chenlong Ma --- .../FATE/templates/core/fateflow/service.yaml | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/helm-charts/FATE/templates/core/fateflow/service.yaml b/helm-charts/FATE/templates/core/fateflow/service.yaml index 796643e96..a94757b56 100644 --- a/helm-charts/FATE/templates/core/fateflow/service.yaml +++ b/helm-charts/FATE/templates/core/fateflow/service.yaml @@ -17,6 +17,29 @@ metadata: labels: fateMoudle: fateflow {{ include "fate.labels" . | indent 4 }} +spec: + ports: + - name: "tcp-grpc" + port: 9360 + targetPort: 9360 + protocol: TCP + - name: "tcp-http" + port: 9380 + targetPort: 9380 + protocol: TCP + type: ClusterIP + clusterIP: None + selector: + fateMoudle: python +{{ include "fate.matchLabels" . | indent 4 }} +--- +apiVersion: v1 +kind: Service +metadata: + name: fateflow-client + labels: + fateMoudle: fateflow +{{ include "fate.labels" . | indent 4 }} spec: ports: - name: "tcp-grpc" From f2d0d1a85632637dfdf008fce72621297c6e3088 Mon Sep 17 00:00:00 2001 From: Chenlong Ma Date: Mon, 9 Jan 2023 12:06:55 +0800 Subject: [PATCH 28/28] Remove the PodSecurityPolicy of rbac-config for kubernetes v1.25+ Signed-off-by: Chenlong Ma --- k8s-deploy/rbac-config.yaml | 29 ----------------------------- 1 file changed, 29 deletions(-) diff --git a/k8s-deploy/rbac-config.yaml b/k8s-deploy/rbac-config.yaml index 8aef0a393..ecd26bc76 100644 --- a/k8s-deploy/rbac-config.yaml +++ b/k8s-deploy/rbac-config.yaml @@ -36,24 +36,6 @@ stringData: mariadbUsername: kubefate mariadbPassword: kubefate --- -apiVersion: policy/v1beta1 -kind: PodSecurityPolicy -metadata: - name: kubefate-psp - namespace: kube-fate -spec: - privileged: false - seLinux: - rule: RunAsAny - supplementalGroups: - rule: RunAsAny - runAsUser: - rule: RunAsAny - fsGroup: - rule: RunAsAny - volumes: - - '*' ---- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: @@ -121,17 +103,6 @@ rules: - delete - update - patch -- apiGroups: - - policy - resources: - - podsecuritypolicies - verbs: - - get - - use - - create - - delete - - update - - patch - apiGroups: - rbac.authorization.k8s.io resources: