diff --git a/docs/hybrid-1.png b/docs/hybrid-1.png new file mode 100644 index 0000000..3e90bd6 Binary files /dev/null and b/docs/hybrid-1.png differ diff --git a/docs/hybrid.png b/docs/hybrid.png new file mode 100644 index 0000000..78284fd Binary files /dev/null and b/docs/hybrid.png differ diff --git a/docs/swarmlab-hybrid.adoc b/docs/swarmlab-hybrid.adoc new file mode 100644 index 0000000..e673b33 --- /dev/null +++ b/docs/swarmlab-hybrid.adoc @@ -0,0 +1,103 @@ += SwarmlabHybrid ! +Apostolos rootApostolos@swarmlab.io +// Metadata: +:description: Intro and Install +:keywords: ubuntu install +:data-uri: +:toc: right +:toc-title: Table of contents +:toclevels: 4 +:source-highlighter: highlight +:icons: font +:sectnums: + + + +{empty} + + +image:./hybrid.png[alt="SwarmlabHybrid"] + +== Install + + +=== Prerequisites Hardware + +[NOTE] +.Remember +==== +Before you create and configure a hybrid deployment using the swarmlab-agent client, your Local Machines need to meet certain requirements. + +If you don't meet those requirements, you won't be able to complete the steps within the swarmlab-agent client +and you won't be able to configure a hybrid deployment between your Local Enviroment and Swarmlab Online Enviroment. +==== + +* A Linux Server (Virtual or Physical) +** You must have super user privileges (sudo) + +* Docker Engine- Community version 18 or later is required. +** Docker Engine is supported on x86_64 (or amd64), armhf, and arm64 architectures. + +* RAM +** Absolute minimum to run the daemon and some very light containers - 512MB +** Minimum for “comfortable” usage – 2GB + +* CPU +** Minimum: 2; Recommended 4+. + +* Disk Space +** 10 GB for internal requirements. +** The amount of additional disk space required for load file staging, persistence, or backups depends on the size of the data to be loaded. + +TIP: Docker uses a hypervisor with a VM, and the host server must support virtualization. + +=== Prerequisites Keys + +* Create an Hybrid Swarmlab Key +** Connect to https://api-client.swarmlab.io:8088/ and click on the Dashboard->Profile Menou +* After creating Keys for your project, you will be informed with an email and it will also become visible in the Swarmlab-agent clients corresponding menu. + +=== Download and install + +* Download the swarmlab-agent client +** git clone https://git.swarmlab.io:3000/zeus/swarmlab-hybrid.git + +* Run sudo ./install.sh +** See also ./install directory + +== Start/Stop Agent + +=== Start Agent +* Navigate to the dir you have installed the agent +** run ./start.sh + +=== Stop Agent +* Navigate to the dir you have installed the agent +** run ./stop.sh + +=== Login + +Connect to https://api-client.swarmlab.io:8088/ and click on "Hybrid->OpenSwarmlab Hybrid" Menou + +TIP: This is the way to have a fully functional Swarmlab Cloud. You HAVE to connect this way to be Authorized for the session. + +== Config + +* Use the "Profile->Settings” menu on swarmlab-agent client to configure a hybrid agent +** add also a zone for your agent + + +** Connect to https://api-client.swarmlab.io:8088/ and click on the Dashboard->Profile Menou + +== Deploy + +=== Local + +=== Hybrid + +== Join + +== Connect to Container + + + + diff --git a/src/components/manageservices/join-service.vue b/src/components/manageservices/join-service.vue index 2c55a60..222c31a 100644 --- a/src/components/manageservices/join-service.vue +++ b/src/components/manageservices/join-service.vue @@ -210,6 +210,7 @@ detail-row-id="id" @vuetable:pagination-data="onPaginationData" @vuetable:load-success="loadsuccess" + @vuetable:load-error="onLoadError" :css="css.table" >
@@ -675,7 +676,24 @@ export default { this.fielddata=data var n = data.length n=n-1 + //console.log('data1 '+JSON.stringify(response)) }, + onLoadError(payload) { + /* + //error2 "invalid_token" join-service.vue:684 + //error2 "The access token provided has expired" join-service.vue:685 + //error2 "Unauthorized" join-service.vue:686 + //error2 401 + console.log('error2 '+JSON.stringify(payload.response.data.error)) + console.log('error2 '+JSON.stringify(payload.response.data.error_description)) + console.log('error2 '+JSON.stringify(payload.response.statusText)) + console.log('error2 '+JSON.stringify(payload.response.status)) + */ + if(payload.response.status == '401'){ + window.location.href = 'https://api-login.swarmlab.io:8089'; + Vue.nextTick( () => window.location.href = 'https://api-login.swarmlab.io:8089') + } + } }, diff --git a/src/components/manageservices/manage-service.vue b/src/components/manageservices/manage-service.vue index 015563a..5c68891 100644 --- a/src/components/manageservices/manage-service.vue +++ b/src/components/manageservices/manage-service.vue @@ -202,6 +202,7 @@ detail-row-id="id" @vuetable:pagination-data="onPaginationData" @vuetable:load-success="loadsuccess" + @vuetable:load-error="onLoadError" :css="css.table" >