diff --git a/404.html b/404.html index 2f52554fdc8..425c9abbeda 100644 --- a/404.html +++ b/404.html @@ -7,15 +7,15 @@ Page Not Found | Apache Linkis - - + +
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

- - + + \ No newline at end of file diff --git a/assets/js/2b9753f8.b87d3368.js b/assets/js/2b9753f8.b87d3368.js new file mode 100644 index 00000000000..fe66fec18bd --- /dev/null +++ b/assets/js/2b9753f8.b87d3368.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklinkis_web_apache=self.webpackChunklinkis_web_apache||[]).push([[26074],{3905:function(e,n,t){t.d(n,{Zo:function(){return m},kt:function(){return h}});var a=t(67294);function i(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function o(e){for(var n=1;n=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}var l=a.createContext({}),p=function(e){var n=a.useContext(l),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},m=function(e){var n=p(e.components);return a.createElement(l.Provider,{value:n},e.children)},u={inlineCode:"code",wrapper:function(e){var n=e.children;return a.createElement(a.Fragment,{},n)}},c=a.forwardRef((function(e,n){var t=e.components,i=e.mdxType,r=e.originalType,l=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),c=p(t),h=i,d=c["".concat(l,".").concat(h)]||c[h]||u[h]||r;return t?a.createElement(d,o(o({ref:n},m),{},{components:t})):a.createElement(d,o({ref:n},m))}));function h(e,n){var t=arguments,i=n&&n.mdxType;if("string"==typeof e||i){var r=t.length,o=new Array(r);o[0]=c;var s={};for(var l in n)hasOwnProperty.call(n,l)&&(s[l]=n[l]);s.originalType=e,s.mdxType="string"==typeof e?e:i,o[1]=s;for(var p=2;p80%)"),(0,r.kt)("li",{parentName:"ul"},"c. High Heap memory for each JVM instance (>80%)"),(0,r.kt)("li",{parentName:"ul"},"d. High NonHeap memory for each JVM instance (>80%)"),(0,r.kt)("li",{parentName:"ul"},"e. High Waiting thread for each JVM instance (100)")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'## alertrule.yml ##\ngroups:\n - name: LinkisAlert\n rules:\n - alert: LinkisNodeDown\n expr: last_over_time(up{job="linkis", application=~"LINKISI.*", application!="LINKIS-CG-ENGINECONN"}[1m])== 0\n for: 15s\n labels:\n severity: critical\n service: Linkis\n instance: "{{ $labels.instance }}"\n annotations:\n summary: "instance: {{ $labels.instance }} down"\n description: "Linkis instance(s) is/are down in last 1m"\n value: "{{ $value }}"\n\n - alert: LinkisNodeCpuHigh\n expr: system_cpu_usage{job="linkis", application=~"LINKIS.*"} >= 0.8\n for: 1m\n labels:\n severity: warning\n service: Linkis\n instance: "{{ $labels.instance }}"\n annotations:\n summary: "instance: {{ $labels.instance }} cpu overload"\n description: "CPU usage is over 80% for over 1min"\n value: "{{ $value }}"\n\n - alert: LinkisNodeHeapMemoryHigh\n expr: sum(jvm_memory_used_bytes{job="linkis", application=~"LINKIS.*", area="heap"}) by(instance) *100/sum(jvm_memory_max_bytes{job="linkis", application=~"LINKIS.*", area="heap"}) by(instance) >= 50\n for: 1m\n labels:\n severity: warning\n service: Linkis\n instance: "{{ $labels.instance }}"\n annotations:\n summary: "instance: {{ $labels.instance }} memory(heap) overload"\n description: "Memory usage(heap) is over 80% for over 1min"\n value: "{{ $value }}"\n\n - alert: LinkisNodeNonHeapMemoryHigh\n expr: sum(jvm_memory_used_bytes{job="linkis", application=~"LINKIS.*", area="nonheap"}) by(instance) *100/sum(jvm_memory_max_bytes{job="linkis", application=~"LINKIS.*", area="nonheap"}) by(instance) >= 60\n for: 1m\n labels:\n severity: warning\n service: Linkis\n instance: "{{ $labels.instance }}"\n annotations:\n summary: "instance: {{ $labels.instance }} memory(nonheap) overload"\n description: "Memory usage(nonheap) is over 80% for over 1min"\n value: "{{ $value }}"\n\n - alert: LinkisWaitingThreadHigh\n expr: jvm_threads_states_threads{job="linkis", application=~"LINKIS.*", state="waiting"} >= 100\n for: 1m\n labels:\n severity: warning\n service: Linkis\n instance: "{{ $labels.instance }}"\n annotations:\n summary: "instance: {{ $labels.instance }} waiting threads is high"\n description: "waiting threads is over 100 for over 1min"\n value: "{{ $value }}"\n')),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Note"),": Since once the service instance is shutdown, it will not be one of the target of Prometheus Eureka SD, and ",(0,r.kt)("inlineCode",{parentName:"p"},"up")," metrics will not return any data after a short time. Thus we will collect if the ",(0,r.kt)("inlineCode",{parentName:"p"},"up=0")," in the last one minute to determine whether the service is alive or not. "),(0,r.kt)("p",null,"Third, and most importantly define Prometheus configuration in prometheus.yml file. This will defines:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"the global settings like scrapping interval and rules evaluation interval"),(0,r.kt)("li",{parentName:"ul"},"the connection information to reach AlertManager and the rules to be evaluated"),(0,r.kt)("li",{parentName:"ul"},"the connection information to application metrics endpoint.\nThis is an example configration file for Linkis:")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"## prometheus.yml ##\n# my global config\nglobal:\n scrape_interval: 30s # By default, scrape targets every 15 seconds.\n evaluation_interval: 30s # By default, scrape targets every 15 seconds.\nalerting:\n alertmanagers:\n - static_configs:\n - targets: ['alertmanager:9093']\n# Load and evaluate rules in this file every 'evaluation_interval' seconds.\nrule_files:\n - \"alertrule.yml\"\n\n# A scrape configuration containing exactly one endpoint to scrape:\n# Here it's Prometheus itself.\nscrape_configs:\n - job_name: 'prometheus'\n static_configs:\n - targets: ['localhost:9090']\n - job_name: linkis\n eureka_sd_configs:\n # the endpoint of your eureka instance\n - server: {{linkis-host}}:20303/eureka\n relabel_configs:\n - source_labels: [__meta_eureka_app_name]\n target_label: application\n - source_labels: [__meta_eureka_app_instance_metadata_prometheus_path]\n action: replace\n target_label: __metrics_path__\n regex: (.+)\n")),(0,r.kt)("p",null,"Forth, the following configuration defines how alerts will be sent to external webhook."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"## alertmanager.yml ##\nglobal:\n resolve_timeout: 5m\n\nroute:\n receiver: 'webhook'\n group_by: ['alertname']\n \n # How long to wait to buffer alerts of the same group before sending a notification initially.\n group_wait: 1m\n # How long to wait before sending an alert that has been added to a group for which there has already been a notification.\n group_interval: 5m\n # How long to wait before re-sending a given alert that has already been sent in a notification.\n repeat_interval: 12h\n\nreceivers:\n- name: 'webhook'\n webhook_configs:\n - send_resolved: true\n url: {{your-webhook-url}}\n\n")),(0,r.kt)("p",null,"Finally, after defining all the configuration file as well as the docker compose file we can start the monitoring stack with ",(0,r.kt)("inlineCode",{parentName:"p"},"docker-compose up")),(0,r.kt)("h2",{id:"4-result-display"},"4. Result display"),(0,r.kt)("p",null,"On Prometheus page, it's expected to see all the Linkis service instances as shown below:\n",(0,r.kt)("img",{src:t(62562).Z})),(0,r.kt)("p",null,"When the Grafana is accessible, you need to import the prometheus as datasource in Grafana, and import the dashboard template with id 11378, which is normally used for springboot service(2.1+).\nThen you can view one living dashboard of Linkis there."),(0,r.kt)("p",null,(0,r.kt)("img",{src:t(34226).Z})),(0,r.kt)("p",null,"You can also try to integrate the Prometheus alter manager with your own webhook, where you can see if the alter message is fired."))}c.isMDXComponent=!0},34226:function(e,n,t){n.Z=t.p+"assets/images/grafana_screenshot-dbea39db333224610c66dcd0582ac709.jpg"},81959:function(e,n,t){n.Z=t.p+"assets/images/prometheus_architecture-b8e59c4fd7626cf1ec1fb8dfc261d7e6.jpg"},62562:function(e,n,t){n.Z=t.p+"assets/images/prometheus_screenshot-fbd3f3d69fff7a50160471e7e893c1ae.jpg"}}]); \ No newline at end of file diff --git a/assets/js/2b9753f8.cc3aa371.js b/assets/js/2b9753f8.cc3aa371.js deleted file mode 100644 index d5607c4801b..00000000000 --- a/assets/js/2b9753f8.cc3aa371.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunklinkis_web_apache=self.webpackChunklinkis_web_apache||[]).push([[26074],{3905:function(e,n,t){t.d(n,{Zo:function(){return m},kt:function(){return h}});var a=t(67294);function i(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function o(e){for(var n=1;n=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}var l=a.createContext({}),p=function(e){var n=a.useContext(l),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},m=function(e){var n=p(e.components);return a.createElement(l.Provider,{value:n},e.children)},u={inlineCode:"code",wrapper:function(e){var n=e.children;return a.createElement(a.Fragment,{},n)}},c=a.forwardRef((function(e,n){var t=e.components,i=e.mdxType,r=e.originalType,l=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),c=p(t),h=i,d=c["".concat(l,".").concat(h)]||c[h]||u[h]||r;return t?a.createElement(d,o(o({ref:n},m),{},{components:t})):a.createElement(d,o({ref:n},m))}));function h(e,n){var t=arguments,i=n&&n.mdxType;if("string"==typeof e||i){var r=t.length,o=new Array(r);o[0]=c;var s={};for(var l in n)hasOwnProperty.call(n,l)&&(s[l]=n[l]);s.originalType=e,s.mdxType="string"==typeof e?e:i,o[1]=s;for(var p=2;p80%)"),(0,r.kt)("li",{parentName:"ul"},"c. High Heap memory for each JVM instance (>80%)"),(0,r.kt)("li",{parentName:"ul"},"d. High NonHeap memory for each JVM instance (>80%)"),(0,r.kt)("li",{parentName:"ul"},"e. High Waiting thread for each JVM instance (100)")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'## alertrule.yml ##\ngroups:\n - name: LinkisAlert\n rules:\n - alert: LinkisNodeDown\n expr: last_over_time(up{job="linkis", application=~"LINKISI.*", application!="LINKIS-CG-ENGINECONN"}[1m])== 0\n for: 15s\n labels:\n severity: critical\n service: Linkis\n instance: "{{ $labels.instance }}"\n annotations:\n summary: "instance: {{ $labels.instance }} down"\n description: "Linkis instance(s) is/are down in last 1m"\n value: "{{ $value }}"\n\n - alert: LinkisNodeCpuHigh\n expr: system_cpu_usage{job="linkis", application=~"LINKIS.*"} >= 0.8\n for: 1m\n labels:\n severity: warning\n service: Linkis\n instance: "{{ $labels.instance }}"\n annotations:\n summary: "instance: {{ $labels.instance }} cpu overload"\n description: "CPU usage is over 80% for over 1min"\n value: "{{ $value }}"\n\n - alert: LinkisNodeHeapMemoryHigh\n expr: sum(jvm_memory_used_bytes{job="linkis", application=~"LINKIS.*", area="heap"}) by(instance) *100/sum(jvm_memory_max_bytes{job="linkis", application=~"LINKIS.*", area="heap"}) by(instance) >= 50\n for: 1m\n labels:\n severity: warning\n service: Linkis\n instance: "{{ $labels.instance }}"\n annotations:\n summary: "instance: {{ $labels.instance }} memory(heap) overload"\n description: "Memory usage(heap) is over 80% for over 1min"\n value: "{{ $value }}"\n\n - alert: LinkisNodeNonHeapMemoryHigh\n expr: sum(jvm_memory_used_bytes{job="linkis", application=~"LINKIS.*", area="nonheap"}) by(instance) *100/sum(jvm_memory_max_bytes{job="linkis", application=~"LINKIS.*", area="nonheap"}) by(instance) >= 60\n for: 1m\n labels:\n severity: warning\n service: Linkis\n instance: "{{ $labels.instance }}"\n annotations:\n summary: "instance: {{ $labels.instance }} memory(nonheap) overload"\n description: "Memory usage(nonheap) is over 80% for over 1min"\n value: "{{ $value }}"\n\n - alert: LinkisWaitingThreadHigh\n expr: jvm_threads_states_threads{job="linkis", application=~"LINKIS.*", state="waiting"} >= 100\n for: 1m\n labels:\n severity: warning\n service: Linkis\n instance: "{{ $labels.instance }}"\n annotations:\n summary: "instance: {{ $labels.instance }} waiting threads is high"\n description: "waiting threads is over 100 for over 1min"\n value: "{{ $value }}"\n')),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Note"),": Since once the service instance is shutdown, it will not be one of the target of Prometheus Eureka SD, and ",(0,r.kt)("inlineCode",{parentName:"p"},"up")," metrics will not return any data after a short time. Thus we will collect if the ",(0,r.kt)("inlineCode",{parentName:"p"},"up=0")," in the last one minute to determine whether the service is alive or not. "),(0,r.kt)("p",null,"Third, and most importantly define Prometheus configuration in prometheus.yml file. This will defines:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"the global settings like scrapping interval and rules evaluation interval"),(0,r.kt)("li",{parentName:"ul"},"the connection information to reach AlertManager and the rules to be evaluated"),(0,r.kt)("li",{parentName:"ul"},"the connection information to application metrics endpoint.\nThis is an example configration file for Linkis:")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"## prometheus.yml ##\n# my global config\nglobal:\n scrape_interval: 30s # By default, scrape targets every 15 seconds.\n evaluation_interval: 30s # By default, scrape targets every 15 seconds.\nalerting:\n alertmanagers:\n - static_configs:\n - targets: ['alertmanager:9093']\n# Load and evaluate rules in this file every 'evaluation_interval' seconds.\nrule_files:\n - \"alertrule.yml\"\n\n# A scrape configuration containing exactly one endpoint to scrape:\n# Here it's Prometheus itself.\nscrape_configs:\n - job_name: 'prometheus'\n static_configs:\n - targets: ['localhost:9090']\n - job_name: linkis\n eureka_sd_configs:\n # the endpoint of your eureka instance\n - server: {{linkis-host}}:20303/eureka\n relabel_configs:\n - source_labels: [__meta_eureka_app_name]\n target_label: application\n - source_labels: [__meta_eureka_app_instance_metadata_prometheus_path]\n action: replace\n target_label: __metrics_path__\n regex: (.+)\n")),(0,r.kt)("p",null,"Forth, the following configuration defines how alerts will be sent to external webhook."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"## alertmanager.yml ##\nglobal:\n resolve_timeout: 5m\n\nroute:\n receiver: 'webhook'\n group_by: ['alertname']\n \n # How long to wait to buffer alerts of the same group before sending a notification initially.\n group_wait: 1m\n # How long to wait before sending an alert that has been added to a group for which there has already been a notification.\n group_interval: 5m\n # How long to wait before re-sending a given alert that has already been sent in a notification.\n repeat_interval: 12h\n\nreceivers:\n- name: 'webhook'\n webhook_configs:\n - send_resolved: true\n url: {{your-webhook-url}}\n\n")),(0,r.kt)("p",null,"Finally, after defining all the configuration file as well as the docker compose file we can start the monitoring stack with ",(0,r.kt)("inlineCode",{parentName:"p"},"docker-compose up")),(0,r.kt)("h2",{id:"4-result-display"},"4. Result display"),(0,r.kt)("p",null,"On Prometheus page, it's expected to see all the Linkis service instances as shown below:\n",(0,r.kt)("img",{src:t(62562).Z})),(0,r.kt)("p",null,"When the Grafana is accessible, you need to import the prometheus as datasource in Grafana, and import the dashboard template with id 11378, which is normally used for springboot service(2.1+).\nThen you can view one living dashboard of Linkis there."),(0,r.kt)("p",null,(0,r.kt)("img",{src:t(34226).Z})),(0,r.kt)("p",null,"You can also try to integrate the Prometheus alter manager with your own webhook, where you can see if the alter message is fired."))}c.isMDXComponent=!0},34226:function(e,n,t){n.Z=t.p+"assets/images/grafana_screenshot-dbea39db333224610c66dcd0582ac709.jpg"},81959:function(e,n,t){n.Z=t.p+"assets/images/prometheus_architecture-b8e59c4fd7626cf1ec1fb8dfc261d7e6.jpg"},62562:function(e,n,t){n.Z=t.p+"assets/images/prometheus_screenshot-fbd3f3d69fff7a50160471e7e893c1ae.jpg"}}]); \ No newline at end of file diff --git a/assets/js/2e1d0e00.71cdb4d7.js b/assets/js/2e1d0e00.029a4644.js similarity index 97% rename from assets/js/2e1d0e00.71cdb4d7.js rename to assets/js/2e1d0e00.029a4644.js index ed8dddeed5c..30cd32f6611 100644 --- a/assets/js/2e1d0e00.71cdb4d7.js +++ b/assets/js/2e1d0e00.029a4644.js @@ -1 +1 @@ -"use strict";(self.webpackChunklinkis_web_apache=self.webpackChunklinkis_web_apache||[]).push([[35707],{11653:function(e,t,l){l.r(t),l.d(t,{default:function(){return c}});var n=l(67294),o=l(72389),r=JSON.parse('{"zh-CN":{"title":"Apache Linkis \u6240\u6709\u6587\u6863\u7248\u672c","latestVersion":"\u8fd9\u662f\u5f53\u524d\u6700\u65b0\u7a33\u5b9a\u7248\u672c\u7684\u6587\u6863","latestVersionExplain":"\u5728\u8fd9\u91cc\u60a8\u53ef\u4ee5\u627e\u5230\u5f53\u524d\u53d1\u5e03\u7684\u6700\u7a33\u5b9a\u7248\u672c\u7684\u6587\u6863","nextVersion":"\u8fd9\u662f\u672a\u53d1\u5e03\u7248\u672c\u7684\u6587\u6863","nextVersionExplain":"\u5728\u8fd9\u91cc\u60a8\u53ef\u4ee5\u627e\u5230\u672a\u53d1\u5e03\u7248\u672c\u7684\u6587\u6863","historyVersion":"\u8fd9\u662f\u4ee5\u524d\u53d1\u5e03\u7684\u5386\u53f2\u7248\u672c\u6587\u6863","historyVersionExplain":"\u5728\u8fd9\u91cc\u60a8\u53ef\u4ee5\u627e\u5230\u4ee5\u524d\u53d1\u5e03\u5386\u53f2\u7248\u672c\u7684\u6587\u6863","table":{"doc":"\u6587\u6863","source":"\u6e90\u4ee3\u7801","release":"Release Note","latestData":[{"versionLabel":"1.1.2","downloadUrl":"/zh-CN/download/release-notes-1.1.2","docUrl":"/zh-CN/docs/latest/introduction","sourceTag":"release-1.1.2"}],"nextData":[{"versionLabel":"Next-1.1.3(WIP)","docUrl":"/zh-CN/docs/1.1.3/introduction"}],"historyData":[{"versionLabel":"1.1.1","downloadUrl":"/zh-CN/download/release-notes-1.1.1","docUrl":"/zh-CN/docs/1.1.1/introduction","sourceTag":"release-1.1.1"},{"versionLabel":"1.1.0","downloadUrl":"/zh-CN/download/release-notes-1.1.0","docUrl":"/zh-CN/docs/1.1.0/introduction","sourceTag":"release-1.1.0"},{"versionLabel":"1.0.3","downloadUrl":"/zh-CN/download/release-notes-1.0.3","docUrl":"/zh-CN/docs/1.0.3/introduction","sourceTag":"release-1.0.3"},{"versionLabel":"1.0.2","downloadUrl":"/zh-CN/download/release-notes-1.0.2","docUrl":"/zh-CN/docs/1.0.2/introduction","sourceTag":"1.0.2"},{"versionLabel":"0.11.0","downloadUrl":"https://github.com/apache/incubator-linkis/releases/tag/0.11.0","docUrl":"/zh-CN/docs/0.11.0/introduction","sourceTag":"0.11.0"}]}},"en":{"title":"Apache Linkis all document versions","latestVersion":"This is the current document version","latestVersionExplain":"Here you can find the currently published version of the document","nextVersion":"This is an unpublished document version","nextVersionExplain":"Here you can find the unpublished version of the document","historyVersion":"This is the previously published version of the document","historVersionExplain":"Here you can find the previously published version of the document","table":{"doc":"Document","source":"Source Code","release":"Release Note","latestData":[{"versionLabel":"1.1.2","docUrl":"/docs/latest/introduction","releaseNotes":"/download/release-notes-1.1.2","sourceTag":"release-1.1.2"}],"nextData":[{"versionLabel":"Next-1.1.3(WIP)","docUrl":"/docs/1.1.3/introduction"}],"historyData":[{"versionLabel":"1.1.1","docUrl":"/docs/1.1.1/introduction","releaseNotes":"/download/release-notes-1.1.1","sourceTag":"release-1.1.1"},{"versionLabel":"1.1.0","docUrl":"/docs/1.1.0/introduction","releaseNotes":"/download/release-notes-1.1.0","sourceTag":"release-1.1.0"},{"versionLabel":"1.0.3","docUrl":"/docs/1.0.3/introduction","releaseNotes":"/download/release-notes-1.0.3","sourceTag":"release-1.0.3"},{"versionLabel":"1.0.2","releaseNotes":"/download/release-notes-1.0.2","docUrl":"/docs/1.0.2/introduction","sourceTag":"1.0.2"},{"versionLabel":"0.11.0","releaseNotes":"https://github.com/apache/incubator-linkis/releases/tag/0.11.0","docUrl":"/docs/0.11.0/introduction","sourceTag":"0.11.0"}]}}}'),a=l(89276),s="divone_joUq";function c(){var e=(0,o.Z)()&&0===location.pathname.indexOf("/zh-CN/")?"zh-CN":"en",t=null==r?void 0:r[e];return n.createElement(a.Z,null,n.createElement("div",{className:s},n.createElement("br",null),n.createElement("h1",null,t.title),n.createElement("br",null),n.createElement("h3",null,t.latestVersion),n.createElement("p",null,t.latestVersionExplain),n.createElement("table",null,n.createElement("tbody",null,t.table.latestData.map((function(e,l){return n.createElement("tr",{key:l,index:l},n.createElement("td",null,e.versionLabel),n.createElement("td",null,n.createElement("a",{href:e.docUrl},t.table.doc)),n.createElement("td",null,n.createElement("a",{href:e.downloadUrl},t.table.release)),n.createElement("td",null,n.createElement("a",{target:"_blank",href:"https://github.com/apache/incubator-linkis/tree/"+e.sourceTag},t.table.source)))})))),n.createElement("br",null),n.createElement("h3",null,t.nextVersion),n.createElement("p",null,t.nextVersionExplain),n.createElement("table",null,n.createElement("tbody",null,t.table.nextData.map((function(e,l){return n.createElement("tr",{key:l,index:l},n.createElement("td",null,e.versionLabel),n.createElement("td",null,n.createElement("a",{href:e.docUrl},t.table.doc)))})))),n.createElement("br",null),n.createElement("h3",null,t.historyVersion),n.createElement("p",null,t.historyVersionExplain),n.createElement("table",null,n.createElement("tbody",null,t.table.historyData.map((function(e,l){return n.createElement("tr",{key:l,index:l},n.createElement("td",null,e.versionLabel),n.createElement("td",null,n.createElement("a",{href:e.docUrl},t.table.doc)),e.downloadUrl&&n.createElement("td",null,n.createElement("a",{href:e.downloadUrl},t.table.release)),n.createElement("td",null,n.createElement("a",{target:"_blank",href:"https://github.com/apache/incubator-linkis/tree/"+e.sourceTag},t.table.source)))}))))))}}}]); \ No newline at end of file +"use strict";(self.webpackChunklinkis_web_apache=self.webpackChunklinkis_web_apache||[]).push([[35707],{11653:function(e,t,l){l.r(t),l.d(t,{default:function(){return c}});var n=l(67294),o=l(72389),r=JSON.parse('{"zh-CN":{"title":"Apache Linkis \u6240\u6709\u6587\u6863\u7248\u672c","latestVersion":"\u8fd9\u662f\u5f53\u524d\u6700\u65b0\u7a33\u5b9a\u7248\u672c\u7684\u6587\u6863","latestVersionExplain":"\u5728\u8fd9\u91cc\u60a8\u53ef\u4ee5\u627e\u5230\u5f53\u524d\u53d1\u5e03\u7684\u6700\u7a33\u5b9a\u7248\u672c\u7684\u6587\u6863","nextVersion":"\u8fd9\u662f\u672a\u53d1\u5e03\u7248\u672c\u7684\u6587\u6863","nextVersionExplain":"\u5728\u8fd9\u91cc\u60a8\u53ef\u4ee5\u627e\u5230\u672a\u53d1\u5e03\u7248\u672c\u7684\u6587\u6863","historyVersion":"\u8fd9\u662f\u4ee5\u524d\u53d1\u5e03\u7684\u5386\u53f2\u7248\u672c\u6587\u6863","historyVersionExplain":"\u5728\u8fd9\u91cc\u60a8\u53ef\u4ee5\u627e\u5230\u4ee5\u524d\u53d1\u5e03\u5386\u53f2\u7248\u672c\u7684\u6587\u6863","table":{"doc":"\u6587\u6863","source":"\u6e90\u4ee3\u7801","release":"Release Note","latestData":[{"versionLabel":"1.1.2","downloadUrl":"/zh-CN/download/release-notes-1.1.2","docUrl":"/zh-CN/docs/latest/introduction","sourceTag":"release-1.1.2"}],"nextData":[{"versionLabel":"Next-1.1.3(WIP)","docUrl":"/zh-CN/docs/1.1.3/introduction"}],"historyData":[{"versionLabel":"1.1.1","downloadUrl":"/zh-CN/download/release-notes-1.1.1","docUrl":"/zh-CN/docs/1.1.1/introduction","sourceTag":"release-1.1.1"},{"versionLabel":"1.1.0","downloadUrl":"/zh-CN/download/release-notes-1.1.0","docUrl":"/zh-CN/docs/1.1.0/introduction","sourceTag":"release-1.1.0"},{"versionLabel":"1.0.3","downloadUrl":"/zh-CN/download/release-notes-1.0.3","docUrl":"/zh-CN/docs/1.0.3/introduction","sourceTag":"release-1.0.3"},{"versionLabel":"1.0.2","downloadUrl":"/zh-CN/download/release-notes-1.0.2","docUrl":"/zh-CN/docs/1.0.2/introduction","sourceTag":"1.0.2"},{"versionLabel":"0.11.0","downloadUrl":"https://github.com/apache/incubator-linkis/releases/tag/0.11.0","docUrl":"/zh-CN/docs/0.11.0/introduction","sourceTag":"0.11.0"}]}},"en":{"title":"Apache Linkis All Document Versions","latestVersion":"This is the current document version","latestVersionExplain":"Here you can find the currently published version of the document","nextVersion":"This is an unpublished document version","nextVersionExplain":"Here you can find the unpublished version of the document","historyVersion":"This is the previously published version of the document","historVersionExplain":"Here you can find the previously published version of the document","table":{"doc":"Document","source":"Source Code","release":"Release Note","latestData":[{"versionLabel":"1.1.2","docUrl":"/docs/latest/introduction","releaseNotes":"/download/release-notes-1.1.2","sourceTag":"release-1.1.2"}],"nextData":[{"versionLabel":"Next-1.1.3(WIP)","docUrl":"/docs/1.1.3/introduction"}],"historyData":[{"versionLabel":"1.1.1","docUrl":"/docs/1.1.1/introduction","releaseNotes":"/download/release-notes-1.1.1","sourceTag":"release-1.1.1"},{"versionLabel":"1.1.0","docUrl":"/docs/1.1.0/introduction","releaseNotes":"/download/release-notes-1.1.0","sourceTag":"release-1.1.0"},{"versionLabel":"1.0.3","docUrl":"/docs/1.0.3/introduction","releaseNotes":"/download/release-notes-1.0.3","sourceTag":"release-1.0.3"},{"versionLabel":"1.0.2","releaseNotes":"/download/release-notes-1.0.2","docUrl":"/docs/1.0.2/introduction","sourceTag":"1.0.2"},{"versionLabel":"0.11.0","releaseNotes":"https://github.com/apache/incubator-linkis/releases/tag/0.11.0","docUrl":"/docs/0.11.0/introduction","sourceTag":"0.11.0"}]}}}'),a=l(89276),s="divone_joUq";function c(){var e=(0,o.Z)()&&0===location.pathname.indexOf("/zh-CN/")?"zh-CN":"en",t=null==r?void 0:r[e];return n.createElement(a.Z,null,n.createElement("div",{className:s},n.createElement("br",null),n.createElement("h1",null,t.title),n.createElement("br",null),n.createElement("h3",null,t.latestVersion),n.createElement("p",null,t.latestVersionExplain),n.createElement("table",null,n.createElement("tbody",null,t.table.latestData.map((function(e,l){return n.createElement("tr",{key:l,index:l},n.createElement("td",null,e.versionLabel),n.createElement("td",null,n.createElement("a",{href:e.docUrl},t.table.doc)),n.createElement("td",null,n.createElement("a",{href:e.downloadUrl},t.table.release)),n.createElement("td",null,n.createElement("a",{target:"_blank",href:"https://github.com/apache/incubator-linkis/tree/"+e.sourceTag},t.table.source)))})))),n.createElement("br",null),n.createElement("h3",null,t.nextVersion),n.createElement("p",null,t.nextVersionExplain),n.createElement("table",null,n.createElement("tbody",null,t.table.nextData.map((function(e,l){return n.createElement("tr",{key:l,index:l},n.createElement("td",null,e.versionLabel),n.createElement("td",null,n.createElement("a",{href:e.docUrl},t.table.doc)))})))),n.createElement("br",null),n.createElement("h3",null,t.historyVersion),n.createElement("p",null,t.historyVersionExplain),n.createElement("table",null,n.createElement("tbody",null,t.table.historyData.map((function(e,l){return n.createElement("tr",{key:l,index:l},n.createElement("td",null,e.versionLabel),n.createElement("td",null,n.createElement("a",{href:e.docUrl},t.table.doc)),e.downloadUrl&&n.createElement("td",null,n.createElement("a",{href:e.downloadUrl},t.table.release)),n.createElement("td",null,n.createElement("a",{target:"_blank",href:"https://github.com/apache/incubator-linkis/tree/"+e.sourceTag},t.table.source)))}))))))}}}]); \ No newline at end of file diff --git a/assets/js/38e24728.1956ed49.js b/assets/js/38e24728.1956ed49.js deleted file mode 100644 index 1ef27446611..00000000000 --- a/assets/js/38e24728.1956ed49.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunklinkis_web_apache=self.webpackChunklinkis_web_apache||[]).push([[98129],{3905:function(e,t,n){n.d(t,{Zo:function(){return c},kt:function(){return f}});var i=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function o(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var l=i.createContext({}),u=function(e){var t=i.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=u(e.components);return i.createElement(l.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},p=i.forwardRef((function(e,t){var n=e.components,r=e.mdxType,a=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=u(n),f=r,m=p["".concat(l,".").concat(f)]||p[f]||d[f]||a;return n?i.createElement(m,o(o({ref:t},c),{},{components:n})):i.createElement(m,o({ref:t},c))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var a=n.length,o=new Array(a);o[0]=p;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:r,o[1]=s;for(var u=2;u=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var l=i.createContext({}),u=function(e){var t=i.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=u(e.components);return i.createElement(l.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},p=i.forwardRef((function(e,t){var n=e.components,r=e.mdxType,a=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=u(n),f=r,g=p["".concat(l,".").concat(f)]||p[f]||d[f]||a;return n?i.createElement(g,o(o({ref:t},c),{},{components:n})):i.createElement(g,o({ref:t},c))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var a=n.length,o=new Array(a);o[0]=p;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:r,o[1]=s;for(var u=2;u=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=i.createContext({}),d=function(e){var t=i.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},c=function(e){var t=d(e.components);return i.createElement(l.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},p=i.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=d(n),h=a,g=p["".concat(l,".").concat(h)]||p[h]||u[h]||o;return n?i.createElement(g,r(r({ref:t},c),{},{components:n})):i.createElement(g,r({ref:t},c))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,r=new Array(o);r[0]=p;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:a,r[1]=s;for(var d=2;d /appcom/Install/LinkisInstall/linkis-1.1.3.20220615210213")),(0,o.kt)("li",{parentName:"ul"},"The upgrade process mainly requires attention to the adjustment of the database table structure and the adjustment of some configuration parameters"),(0,o.kt)("li",{parentName:"ul"},"In addition to the upgrade of the back-end services, the management console resources of linkis also need to be upgraded together"),(0,o.kt)("li",{parentName:"ul"},"The main changes of each version can be found in the overview information of the version ",(0,o.kt)("inlineCode",{parentName:"li"},"https://linkis.apache.org/zh-CN/docs/x.x.x/release")," and the version ","[release-note]","(",(0,o.kt)("a",{parentName:"li",href:"https://linkis.apache"},"https://linkis.apache")," .org/zh-CN/download/main): ",(0,o.kt)("a",{parentName:"li",href:"https://linkis.apache.org/zh-CN/download/main"},"https://linkis.apache.org/zh-CN/download/main")),(0,o.kt)("li",{parentName:"ul"},"The database changes/configuration parameter changes of each version are based on the previous version")),(0,o.kt)("h2",{id:"2-service-upgrade-installation"},"2 Service upgrade installation"),(0,o.kt)("p",null,"Press ",(0,o.kt)("a",{parentName:"p",href:"../deployment/quick_deploy"},"Deployment guide document")," (the installation of the management console in the document can be skipped) to install the new version."),(0,o.kt)("p",null,"When installing the service, if the historical data is retained, please retain the historical data, if you do not need to retain the data, just reinstall it directly"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell",metastring:"script",script:!0},"Do you want to clear Linkis table information in the database?\n 1: Do not execute table-building statements\n 2: Dangerous! Clear all data and rebuild the tables\n other: exit\n\nPlease input the choice: ## choice 1\n")),(0,o.kt)("h2",{id:"3-database-table-upgrade"},"3. Database table upgrade"),(0,o.kt)("blockquote",null,(0,o.kt)("p",{parentName:"blockquote"},"After the service installation is completed, the database structure needs to be modified, including table structure changes and table data changes")),(0,o.kt)("p",null,"Find the corresponding version ",(0,o.kt)("inlineCode",{parentName:"p"},"db/upgrade/x.x.x-schema/")," sql change file"),(0,o.kt)("p",null,"If it is executed across multiple versions, please execute them in the order of versions,\nIf some versions do not have x.x.x_schema (after the linkis>=1.1.0 version, as long as the adjustment of the database table is involved, there will be a corresponding version of the schema file), it means that there is no change in the data table in this version"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell",metastring:"script",script:!0},"\u251c\u2500\u2500 linkis_ddl.sql # The current version of the full ddl database definition language table building statement\n\u251c\u2500\u2500 linkis_dml.sql # The current version of the full dml data manipulation language data additions and changes\n\u2514\u2500\u2500 upgrade\n \u251c\u2500\u2500 1.1.0_schema # The corresponding version of sql\n \u2502 \u2514\u2500\u2500 mysql\n \u2502 \u251c\u2500\u2500 linkis_ddl.sql\n \u2502 \u2514\u2500\u2500 linkis_dml.sql\n \u251c\u2500\u2500 1.1.1_schema\n \u2502 \u2514\u2500\u2500 mysql\n \u2502 \u251c\u2500\u2500 linkis_ddl.sql\n \u2502 \u2514\u2500\u2500 linkis_dml.sql\n \u2514\u2500\u2500 1.1.3_schema\n \u2514\u2500\u2500 mysql\n \u2514\u2500\u2500 linkis_ddl.sql\n")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-mysql-sql"}," #If it is executed across multiple versions, please execute in order of versions, execute ddl first and then execute ddl\n #For example, currently upgrade from linkis-1.0.3 to linkis-1.1.2\n source upgrade/1.1.0_schema/mysql/linkis_ddl.sql\n source upgrade/1.1.0_schema/mysql/linkis_dml.sql\n\n source upgrade/1.1.1_schema/mysql/linkis_ddl.sql\n source upgrade/1.1.1_schema/mysql/linkis_dml.sql\n\n")),(0,o.kt)("h2",{id:"4-adjustment-of-data-optional"},"4 Adjustment of data (optional)"),(0,o.kt)("blockquote",null,(0,o.kt)("p",{parentName:"blockquote"},"According to the actual situation, decide whether to make the following adjustments")),(0,o.kt)("h3",{id:"41-token-configuration"},"4.1 TOKEN configuration"),(0,o.kt)("p",null,"Authentication for interface calls yes\n1.1.1 Version adjustment Migrate the original TOKEN configuration from ",(0,o.kt)("inlineCode",{parentName:"p"},"${LINKIS_HOME}/conf/token.properties")," to the database table ",(0,o.kt)("inlineCode",{parentName:"p"},"linkis_mg_gateway_auth_token"),",\nFor the TOKEN originally configured in ",(0,o.kt)("inlineCode",{parentName:"p"},"token.properties"),", you need to manually migrate the table"),(0,o.kt)("h3",{id:"42-udf-adjustment"},"4.2 UDF Adjustment"),(0,o.kt)("p",null,"1.1.1 supports the functions of UDF multi-version control and UDF storage to BML, the table structure stored by UDF functions has been adjusted, and the historical data of UDF needs to be migrated separately"),(0,o.kt)("h3",{id:"43-session-field-key-configuration"},"4.3 Session field key configuration"),(0,o.kt)("p",null,"In version 1.1.1, the key of the session field was adjusted from ",(0,o.kt)("inlineCode",{parentName:"p"},"bdp-user-ticket-id"),"-> to ",(0,o.kt)("inlineCode",{parentName:"p"},"linkis_user_session_ticket_id_v1"),",\nIf it is an upgrade to Linkis. At the same time, DSS or other projects are deployed, but in their service lib package, the linkis-module-x.x.x.jar package of Linkis that they depend on is <1.1.1, you need to modify the file located in ",(0,o.kt)("inlineCode",{parentName:"p"},"${LINKIS_HOME}/conf/linkis.properties")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell"},'echo "wds.linkis.session.ticket.key=bdp-user-ticket-id" >> linkis.properties\n')),(0,o.kt)("h3",{id:"44-adjustment-of-default-queue"},"4.4 Adjustment of default queue"),(0,o.kt)("p",null,"1.1.1 Begin to adjust the default cluster name of yarn queue ",(0,o.kt)("inlineCode",{parentName:"p"},"wds.linkis.rm.cluster")," sit is adjusted to default, if you have been using sit, please modify the table data\nCluster name in ",(0,o.kt)("inlineCode",{parentName:"p"},"linkis_cg_rm_external_resource_provider")),(0,o.kt)("h3",{id:"45-copies-of-other-related-packages"},"4.5 Copies of other related packages"),(0,o.kt)("p",null,"If there is a third-party appconn plugin installed in ",(0,o.kt)("inlineCode",{parentName:"p"},"${LINKIS_HOME_OLD}/lib/linkis-engineconn-plugins")," in the previous version of Linkis, you need to copy it to the new version,\nIt is best to link to the appconn path through a soft chain\nlike:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"#Check if the old version has a third-party appconn installed\ncd ${LINKIS_HOME_OLD}/lib/linkis-engineconn-plugins/\nll\n appconn -> /appcom/Install/LinkisInstall/appconn\n\n\n#The new version is consistent\ncd ${LINKIS_HOME}/lib/linkis-engineconn-plugins/\n#soft chain\nln -snf /appcom/Install/LinkisInstall/appconn appconn\n")),(0,o.kt)("p",null,"If dss is installed in the original version, you need to copy the ",(0,o.kt)("inlineCode",{parentName:"p"},"dss-gateway-support-x.x.x.jar")," in the original package to the ",(0,o.kt)("inlineCode",{parentName:"p"},"./lib/linkis-spring-cloud-services/linkis-mg-gateway/")," directory of linkis\nlike:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell",metastring:"script",script:!0},"cp ${LINKIS_HOME_OLD}/lib/linkis-spring-cloud-services/linkis-mg-gateway/dss-gateway-support-1.1.3.jar ${LINKIS_HOME}/lib/linkis-spring-cloud-services/linkis- mg-gateway/dss-gateway-support-1.1.3.jar\n\n")),(0,o.kt)("h2",{id:"5-updates-to-the-console"},"5 Updates to the console"),(0,o.kt)("blockquote",null,(0,o.kt)("p",{parentName:"blockquote"},"To upgrade the backend, you also need to upgrade the corresponding management console resources. You don't need to install the management console, just replace the static resources directly.")),(0,o.kt)("h3",{id:"51-download-the-front-end-installation-package-and-unzip-it"},"5.1 Download the front-end installation package and unzip it"),(0,o.kt)("p",null,"Upload it to the server where the management console is located, and decompress it"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell",metastring:"script",script:!0},"tar -xvf apache-linkis-x.x.x-incubating-web-bin.tar.gz\n")),(0,o.kt)("h3",{id:"52-upgrade"},"5.2 Upgrade"),(0,o.kt)("blockquote",null,(0,o.kt)("p",{parentName:"blockquote"},"There are many ways to upgrade the management console, because it is only the update of resources, which can be done through the installation script of the management console, or it can directly overwrite the original resources.\nIt is recommended to use the soft chain method, just modify the target address of the soft chain. The following takes the new version resource path method as an example")),(0,o.kt)("p",null,"The nginx configuration file is by default in ",(0,o.kt)("inlineCode",{parentName:"p"},"/etc/nginx/conf.d/*"),"\nnginx log files are in ",(0,o.kt)("inlineCode",{parentName:"p"},"/var/log/nginx/access.log")," and ",(0,o.kt)("inlineCode",{parentName:"p"},"/var/log/nginx/error.log")),(0,o.kt)("p",null,"Scenario 1: If it is integrated into the DSS project, modify the address of the linkis management console resource in the DSS project to point to\nThe nginx configuration file for dss is by default in ",(0,o.kt)("inlineCode",{parentName:"p"},"/etc/nginx/conf.d/dss.conf")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-nginx"},"#Example\n server {\n ......\n location dss/linkis {\n alias /appcom/Install/linkis-web-newversion/dist; # static file directory\n index index.html index.html;\n }\n .....\n }\n")),(0,o.kt)("p",null,"Scenario 2: If linkis is deployed independently\nModify the configuration of Nginx, the static resource address points to the new version of the linkis console\nLinkis' nginx configuration file is by default in ",(0,o.kt)("inlineCode",{parentName:"p"},"/etc/nginx/conf.d/dss.conf")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-nginx"},"#Example\n server {\n ......\n location dss/linkis {\n alias /appcom/Install/linkis-web-newversion/dist; # static file directory\n index index.html index.html;\n }\n ......\n }\n")),(0,o.kt)("p",null,"Reload nginx configuration"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"sudo nginx -s reload\n")),(0,o.kt)("h3",{id:"53-notes"},"5.3 Notes"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"After the management console is upgraded, because the browser may have a cache, if you want to verify the effect, it is best to clear the browser cache")))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/41f3d1d4.f3bcaf98.js b/assets/js/41f3d1d4.f3bcaf98.js new file mode 100644 index 00000000000..eb1bfff28fa --- /dev/null +++ b/assets/js/41f3d1d4.f3bcaf98.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklinkis_web_apache=self.webpackChunklinkis_web_apache||[]).push([[68626],{3905:function(e,t,n){n.d(t,{Zo:function(){return c},kt:function(){return h}});var i=n(67294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function r(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=i.createContext({}),d=function(e){var t=i.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},c=function(e){var t=d(e.components);return i.createElement(l.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),u=d(n),h=a,m=u["".concat(l,".").concat(h)]||u[h]||p[h]||o;return n?i.createElement(m,r(r({ref:t},c),{},{components:n})):i.createElement(m,r({ref:t},c))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,r=new Array(o);r[0]=u;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:a,r[1]=s;for(var d=2;d /appcom/Install/LinkisInstall/linkis-1.1.3.20220615210213")),(0,o.kt)("li",{parentName:"ul"},"The upgrade process mainly requires attention to the adjustment of the database table structure and the adjustment of some configuration parameters"),(0,o.kt)("li",{parentName:"ul"},"In addition to the upgrade of the back-end services, the management console resources of linkis also need to be upgraded together"),(0,o.kt)("li",{parentName:"ul"},"The main changes of each version can be found in the overview information of the version ",(0,o.kt)("inlineCode",{parentName:"li"},"https://linkis.apache.org/zh-CN/docs/x.x.x/release")," and the version ","[release-note]","(",(0,o.kt)("a",{parentName:"li",href:"https://linkis.apache"},"https://linkis.apache")," .org/zh-CN/download/main): ",(0,o.kt)("a",{parentName:"li",href:"https://linkis.apache.org/zh-CN/download/main"},"https://linkis.apache.org/zh-CN/download/main")),(0,o.kt)("li",{parentName:"ul"},"The database changes/configuration parameter changes of each version are based on the previous version")),(0,o.kt)("h2",{id:"2-service-upgrade-installation"},"2 Service upgrade installation"),(0,o.kt)("p",null,"Press ",(0,o.kt)("a",{parentName:"p",href:"../deployment/quick_deploy"},"Deployment guide document")," (the installation of the management console in the document can be skipped) to install the new version."),(0,o.kt)("p",null,"When installing the service, if the historical data is retained, please retain the historical data, if you do not need to retain the data, just reinstall it directly"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell",metastring:"script",script:!0},"Do you want to clear Linkis table information in the database?\n 1: Do not execute table-building statements\n 2: Dangerous! Clear all data and rebuild the tables\n other: exit\n\nPlease input the choice: ## choice 1\n")),(0,o.kt)("h2",{id:"3-database-table-upgrade"},"3. Database table upgrade"),(0,o.kt)("blockquote",null,(0,o.kt)("p",{parentName:"blockquote"},"After the service installation is completed, the database structure needs to be modified, including table structure changes and table data changes")),(0,o.kt)("p",null,"Find the corresponding version ",(0,o.kt)("inlineCode",{parentName:"p"},"db/upgrade/x.x.x-schema/")," sql change file"),(0,o.kt)("p",null,"If it is executed across multiple versions, please execute them in the order of versions,\nIf some versions do not have x.x.x_schema (after the linkis>=1.1.0 version, as long as the adjustment of the database table is involved, there will be a corresponding version of the schema file), it means that there is no change in the data table in this version"),(0,o.kt)("div",{className:"admonition admonition-caution alert alert--warning"},(0,o.kt)("div",{parentName:"div",className:"admonition-heading"},(0,o.kt)("h5",{parentName:"div"},(0,o.kt)("span",{parentName:"h5",className:"admonition-icon"},(0,o.kt)("svg",{parentName:"span",xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 16"},(0,o.kt)("path",{parentName:"svg",fillRule:"evenodd",d:"M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"}))),"notice")),(0,o.kt)("div",{parentName:"div",className:"admonition-content"},(0,o.kt)("p",{parentName:"div"},"Execute upgrade",(0,o.kt)("em",{parentName:"p"},"1.1.1 under DDL upgrade script in schema, such as if it is executed to linkis")," cg",(0,o.kt)("em",{parentName:"p"}," rm")," resource",(0,o.kt)("em",{parentName:"p"}," action")," Record related error, please check whether the statement creating the table is missing engine=innodb default charset=utf8; If it is missing, please add it before execution"))),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell",metastring:"script",script:!0},"\u251c\u2500\u2500 linkis_ddl.sql # The current version of the full ddl database definition language table building statement\n\u251c\u2500\u2500 linkis_dml.sql # The current version of the full dml data manipulation language data additions and changes\n\u2514\u2500\u2500 upgrade\n \u251c\u2500\u2500 1.1.0_schema # The corresponding version of sql\n \u2502 \u2514\u2500\u2500 mysql\n \u2502 \u251c\u2500\u2500 linkis_ddl.sql\n \u2502 \u2514\u2500\u2500 linkis_dml.sql\n \u251c\u2500\u2500 1.1.1_schema\n \u2502 \u2514\u2500\u2500 mysql\n \u2502 \u251c\u2500\u2500 linkis_ddl.sql\n \u2502 \u2514\u2500\u2500 linkis_dml.sql\n \u2514\u2500\u2500 1.1.3_schema\n \u2514\u2500\u2500 mysql\n \u2514\u2500\u2500 linkis_ddl.sql\n")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-mysql-sql"}," #If it is executed across multiple versions, please execute in order of versions, execute ddl first and then execute ddl\n #For example, currently upgrade from linkis-1.0.3 to linkis-1.1.2\n source upgrade/1.1.0_schema/mysql/linkis_ddl.sql\n source upgrade/1.1.0_schema/mysql/linkis_dml.sql\n\n source upgrade/1.1.1_schema/mysql/linkis_ddl.sql\n source upgrade/1.1.1_schema/mysql/linkis_dml.sql\n\n")),(0,o.kt)("h2",{id:"4-adjustment-of-data-optional"},"4 Adjustment of data (optional)"),(0,o.kt)("blockquote",null,(0,o.kt)("p",{parentName:"blockquote"},"According to the actual situation, decide whether to make the following adjustments")),(0,o.kt)("h3",{id:"41-token-configuration"},"4.1 TOKEN configuration"),(0,o.kt)("p",null,"Authentication for interface calls yes\n1.1.1 Version adjustment Migrate the original TOKEN configuration from ",(0,o.kt)("inlineCode",{parentName:"p"},"${LINKIS_HOME}/conf/token.properties")," to the database table ",(0,o.kt)("inlineCode",{parentName:"p"},"linkis_mg_gateway_auth_token"),",\nFor the TOKEN originally configured in ",(0,o.kt)("inlineCode",{parentName:"p"},"token.properties"),", you need to manually migrate the table"),(0,o.kt)("h3",{id:"42-udf-adjustment"},"4.2 UDF Adjustment"),(0,o.kt)("p",null,"1.1.1 supports the functions of UDF multi-version control and UDF storage to BML, the table structure stored by UDF functions has been adjusted, and the historical data of UDF needs to be migrated separately"),(0,o.kt)("h3",{id:"43-session-field-key-configuration"},"4.3 Session field key configuration"),(0,o.kt)("p",null,"In version 1.1.1, the key of the session field was adjusted from ",(0,o.kt)("inlineCode",{parentName:"p"},"bdp-user-ticket-id"),"-> to ",(0,o.kt)("inlineCode",{parentName:"p"},"linkis_user_session_ticket_id_v1"),",\nIf it is an upgrade to Linkis. At the same time, DSS or other projects are deployed, but in their service lib package, the linkis-module-x.x.x.jar package of Linkis that they depend on is <1.1.1, you need to modify the file located in ",(0,o.kt)("inlineCode",{parentName:"p"},"${LINKIS_HOME}/conf/linkis.properties")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell"},'echo "wds.linkis.session.ticket.key=bdp-user-ticket-id" >> linkis.properties\n')),(0,o.kt)("h3",{id:"44-adjustment-of-default-queue"},"4.4 Adjustment of default queue"),(0,o.kt)("p",null,"1.1.1 Begin to adjust the default cluster name of yarn queue ",(0,o.kt)("inlineCode",{parentName:"p"},"wds.linkis.rm.cluster")," sit is adjusted to default, if you have been using sit, please modify the table data\nCluster name in ",(0,o.kt)("inlineCode",{parentName:"p"},"linkis_cg_rm_external_resource_provider")),(0,o.kt)("h3",{id:"45-copies-of-other-related-packages"},"4.5 Copies of other related packages"),(0,o.kt)("p",null,"If there is a third-party appconn plugin installed in ",(0,o.kt)("inlineCode",{parentName:"p"},"${LINKIS_HOME_OLD}/lib/linkis-engineconn-plugins")," in the previous version of Linkis, you need to copy it to the new version,\nIt is best to link to the appconn path through a soft chain\nlike:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"#Check if the old version has a third-party appconn installed\ncd ${LINKIS_HOME_OLD}/lib/linkis-engineconn-plugins/\nll\n appconn -> /appcom/Install/LinkisInstall/appconn\n\n\n#The new version is consistent\ncd ${LINKIS_HOME}/lib/linkis-engineconn-plugins/\n#soft chain\nln -snf /appcom/Install/LinkisInstall/appconn appconn\n")),(0,o.kt)("p",null,"If dss is installed in the original version, you need to copy the ",(0,o.kt)("inlineCode",{parentName:"p"},"dss-gateway-support-x.x.x.jar")," in the original package to the ",(0,o.kt)("inlineCode",{parentName:"p"},"./lib/linkis-spring-cloud-services/linkis-mg-gateway/")," directory of linkis\nlike:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell",metastring:"script",script:!0},"cp ${LINKIS_HOME_OLD}/lib/linkis-spring-cloud-services/linkis-mg-gateway/dss-gateway-support-1.1.3.jar ${LINKIS_HOME}/lib/linkis-spring-cloud-services/linkis- mg-gateway/dss-gateway-support-1.1.3.jar\n\n")),(0,o.kt)("h2",{id:"5-updates-to-the-console"},"5 Updates to the console"),(0,o.kt)("blockquote",null,(0,o.kt)("p",{parentName:"blockquote"},"To upgrade the backend, you also need to upgrade the corresponding management console resources. You don't need to install the management console, just replace the static resources directly.")),(0,o.kt)("h3",{id:"51-download-the-front-end-installation-package-and-unzip-it"},"5.1 Download the front-end installation package and unzip it"),(0,o.kt)("p",null,"Upload it to the server where the management console is located, and decompress it"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell",metastring:"script",script:!0},"tar -xvf apache-linkis-x.x.x-incubating-web-bin.tar.gz\n")),(0,o.kt)("h3",{id:"52-upgrade"},"5.2 Upgrade"),(0,o.kt)("blockquote",null,(0,o.kt)("p",{parentName:"blockquote"},"There are many ways to upgrade the management console, because it is only the update of resources, which can be done through the installation script of the management console, or it can directly overwrite the original resources.\nIt is recommended to use the soft chain method, just modify the target address of the soft chain. The following takes the new version resource path method as an example")),(0,o.kt)("p",null,"The nginx configuration file is by default in ",(0,o.kt)("inlineCode",{parentName:"p"},"/etc/nginx/conf.d/*"),"\nnginx log files are in ",(0,o.kt)("inlineCode",{parentName:"p"},"/var/log/nginx/access.log")," and ",(0,o.kt)("inlineCode",{parentName:"p"},"/var/log/nginx/error.log")),(0,o.kt)("p",null,"Scenario 1: If it is integrated into the DSS project, modify the address of the linkis management console resource in the DSS project to point to\nThe nginx configuration file for dss is by default in ",(0,o.kt)("inlineCode",{parentName:"p"},"/etc/nginx/conf.d/dss.conf")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-nginx"},"#Example\n server {\n ......\n location dss/linkis {\n alias /appcom/Install/linkis-web-newversion/dist; # static file directory\n index index.html index.html;\n }\n .....\n }\n")),(0,o.kt)("p",null,"Scenario 2: If linkis is deployed independently\nModify the configuration of Nginx, the static resource address points to the new version of the linkis console\nLinkis' nginx configuration file is by default in ",(0,o.kt)("inlineCode",{parentName:"p"},"/etc/nginx/conf.d/dss.conf")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-nginx"},"#Example\n server {\n ......\n location dss/linkis {\n alias /appcom/Install/linkis-web-newversion/dist; # static file directory\n index index.html index.html;\n }\n ......\n }\n")),(0,o.kt)("p",null,"Reload nginx configuration"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"sudo nginx -s reload\n")),(0,o.kt)("h3",{id:"53-notes"},"5.3 Notes"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"After the management console is upgraded, because the browser may have a cache, if you want to verify the effect, it is best to clear the browser cache")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/91b65c41.2f051fb4.js b/assets/js/91b65c41.2f051fb4.js new file mode 100644 index 00000000000..5deff1665ab --- /dev/null +++ b/assets/js/91b65c41.2f051fb4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklinkis_web_apache=self.webpackChunklinkis_web_apache||[]).push([[29025],{3905:function(e,t,n){n.d(t,{Zo:function(){return p},kt:function(){return m}});var o=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function a(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var c=o.createContext({}),s=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},p=function(e){var t=s(e.components);return o.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},u=o.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),u=s(n),m=r,h=u["".concat(c,".").concat(m)]||u[m]||d[m]||i;return n?o.createElement(h,a(a({ref:t},p),{},{components:n})):o.createElement(h,a({ref:t},p))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,a=new Array(i);a[0]=u;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l.mdxType="string"==typeof e?e:r,a[1]=l;for(var s=2;s=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var c=o.createContext({}),p=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},s=function(e){var t=p(e.components);return o.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},u=o.forwardRef((function(e,t){var n=e.components,r=e.mdxType,a=e.originalType,c=e.parentName,s=l(e,["components","mdxType","originalType","parentName"]),u=p(n),m=r,h=u["".concat(c,".").concat(m)]||u[m]||d[m]||a;return n?o.createElement(h,i(i({ref:t},s),{},{components:n})):o.createElement(h,i({ref:t},s))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var a=n.length,i=new Array(a);i[0]=u;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l.mdxType="string"==typeof e?e:r,i[1]=l;for(var p=2;p=0||(o[t]=e[t]);return o}(e,n);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}var a=i.createContext({}),c=function(e){var n=i.useContext(a),t=n;return e&&(t="function"==typeof e?e(n):s(s({},n),e)),t},p=function(e){var n=c(e.components);return i.createElement(a.Provider,{value:n},e.children)},u={inlineCode:"code",wrapper:function(e){var n=e.children;return i.createElement(i.Fragment,{},n)}},d=i.forwardRef((function(e,n){var t=e.components,o=e.mdxType,l=e.originalType,a=e.parentName,p=r(e,["components","mdxType","originalType","parentName"]),d=c(t),m=o,h=d["".concat(a,".").concat(m)]||d[m]||u[m]||l;return t?i.createElement(h,s(s({ref:n},p),{},{components:t})):i.createElement(h,s({ref:n},p))}));function m(e,n){var t=arguments,o=n&&n.mdxType;if("string"==typeof e||o){var l=t.length,s=new Array(l);s[0]=d;var r={};for(var a in n)hasOwnProperty.call(n,a)&&(r[a]=n[a]);r.originalType=e,r.mdxType="string"==typeof e?e:o,s[1]=r;for(var c=2;c -proxyUser \n')),(0,l.kt)("p",null,"The following output is expected."),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-bash"},'=====Java Start Command=====\nexec /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64/jre/bin/java -server -Xms32m -Xmx2048m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/Linkis/linkis03/logs/linkis-cli -XX:ErrorFile=/Linkis/linkis03/logs/linkis-cli/ps_err_pid%p.log -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=80 -XX:+DisableExplicitGC -classpath /Linkis/linkis03/conf/linkis-cli:/Linkis/linkis03/lib/linkis-computation-governance/linkis-client/linkis-cli/*:/Linkis/linkis03/lib/linkis-commons/public-module/*: -Dconf.root=/Linkis/linkis03/conf/linkis-cli -Dconf.file=linkis-cli.properties -Dlog.path=/Linkis/linkis03/logs/linkis-cli -Dlog.file=linkis-client.root.log.20220418221952287912946 org.apache.linkis.cli.application.LinkisClientApplication \'-engineType shell-1 -codeType shell -code echo "hello" -submitUser test -proxyUser test\'\n[INFO] LogFile path: /Linkis/linkis03/logs/linkis-cli/linkis-client.root.log.20220418221952287912946\n[INFO] User does not provide usr-configuration file. Will use default config\n[INFO] connecting to linkis gateway:http://127.0.0.1:9001\nJobId:6\nTaskId:6\nExecId:exec_id018028linkis-cg-entranceiZbp19q51jb8p984yk2jxdZ:9104LINKISCLI_test_shell_1\n[INFO] Job is successfully submitted!\n\n2022-04-18 22:19:53.019 INFO Program is substituting variables for you\n2022-04-18 22:19:53.019 INFO Variables substitution ended successfully\n2022-04-18 22:19:53.019 WARN The code you submit will not be limited by the limit\nJob with jobId : LINKISCLI_test_shell_1 and execID : LINKISCLI_test_shell_1 submitted \n2022-04-18 22:19:53.019 INFO You have submitted a new job, script code (after variable substitution) is\n************************************SCRIPT CODE************************************\necho "hello"\n************************************SCRIPT CODE************************************\n2022-04-18 22:19:53.019 INFO Your job is accepted, jobID is LINKISCLI_test_shell_1 and jobReqId is 6 in ServiceInstance(linkis-cg-entrance, iZbp19q51jb8p984yk2jxdZ:9104). Please wait it to be scheduled\njob is scheduled.\n2022-04-18 22:19:53.019 INFO Your job is Scheduled. Please wait it to run.\nYour job is being scheduled by orchestrator.\n2022-04-18 22:19:53.019 INFO job is running.\n2022-04-18 22:19:53.019 INFO Your job is Running now. Please wait it to complete.\n2022-04-18 22:19:53.019 INFO Job with jobGroupId : 6 and subJobId : 5 was submitted to Orchestrator.\n2022-04-18 22:19:53.019 INFO Background is starting a new engine for you,execId astJob_4_codeExec_4 mark id is mark_4, it may take several seconds, please wait\n2022-04-18 22:20:01.020 INFO Task submit to ec: ServiceInstance(linkis-cg-engineconn, iZbp19q51jb8p984yk2jxdZ:43213) get engineConnExecId is: 1\n2022-04-18 22:20:01.020 INFO EngineConn local log path: ServiceInstance(linkis-cg-engineconn, iZbp19q51jb8p984yk2jxdZ:43213) /appcom1/tmp/test/20220418/shell/cc21fbb5-3a33-471b-a565-8407ff8ebd80/logs\niZbp19q51jb8p984yk2jxdZ:43213_0 >> echo "hello"\n2022-04-18 22:20:01.438 WARN [Linkis-Default-Scheduler-Thread-1] org.apache.linkis.engineconn.computation.executor.hook.executor.ExecuteOnceHook 50 warn - execute once become effective, register lock listener\nhello\n2022-04-18 22:20:01.020 INFO Your subjob : 5 execue with state succeed, has 1 resultsets.\n2022-04-18 22:20:01.020 INFO Congratuaions! Your job : LINKISCLI_test_shell_1 executed with status succeed and 0 results.\n2022-04-18 22:20:01.020 INFO job is completed.\n2022-04-18 22:20:01.020 INFO Task creation time(\u4efb\u52a1\u521b\u5efa\u65f6\u95f4): 2022-04-18 22:19:53, Task scheduling time(\u4efb\u52a1\u8c03\u5ea6\u65f6\u95f4): 2022-04-18 22:19:53, Task start time(\u4efb\u52a1\u5f00\u59cb\u65f6\u95f4): 2022-04-18 22: Mission end time(\u4efb\u52a1\u7ed3\u675f\u65f6\u95f4): 2022-04-18 22:20:01\n2022-04-18 22:20:01.020 INFO Your mission(\u60a8\u7684\u4efb\u52a1) 6 The total time spent is(\u603b\u8017\u65f6\u65f6\u95f4\u4e3a): 8.3 \u79d2\n2022-04-18 22:20:01.020 INFO Congratulations. Your job completed with status Success.\n\n[INFO] Job execute successfully! Will try get execute result\n============Result:================\nTaskId:6\nExecId: exec_id018028linkis-cg-entranceiZbp19q51jb8p984yk2jxdZ:9104LINKISCLI_test_shell_1\nUser:test\nCurrent job status:SUCCEED\nextraMsg: \nresult: \n\n[INFO] Retrieving result-set, may take time if result-set is large, please do not exit program.\n============ RESULT SET 1 ============\nhello \n############Execute Success!!!########\n')))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/cfdaf306.7600c823.js b/assets/js/cfdaf306.7600c823.js new file mode 100644 index 00000000000..59ac96ee5e9 --- /dev/null +++ b/assets/js/cfdaf306.7600c823.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklinkis_web_apache=self.webpackChunklinkis_web_apache||[]).push([[40206],{3905:function(e,n,t){t.d(n,{Zo:function(){return p},kt:function(){return m}});var i=t(67294);function o(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function l(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,i)}return t}function s(e){for(var n=1;n=0||(o[t]=e[t]);return o}(e,n);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}var a=i.createContext({}),c=function(e){var n=i.useContext(a),t=n;return e&&(t="function"==typeof e?e(n):s(s({},n),e)),t},p=function(e){var n=c(e.components);return i.createElement(a.Provider,{value:n},e.children)},u={inlineCode:"code",wrapper:function(e){var n=e.children;return i.createElement(i.Fragment,{},n)}},d=i.forwardRef((function(e,n){var t=e.components,o=e.mdxType,l=e.originalType,a=e.parentName,p=r(e,["components","mdxType","originalType","parentName"]),d=c(t),m=o,h=d["".concat(a,".").concat(m)]||d[m]||u[m]||l;return t?i.createElement(h,s(s({ref:n},p),{},{components:t})):i.createElement(h,s({ref:n},p))}));function m(e,n){var t=arguments,o=n&&n.mdxType;if("string"==typeof e||o){var l=t.length,s=new Array(l);s[0]=d;var r={};for(var a in n)hasOwnProperty.call(n,a)&&(r[a]=n[a]);r.originalType=e,r.mdxType="string"==typeof e?e:o,s[1]=r;for(var c=2;c -proxyUser \n')),(0,l.kt)("p",null,"The following output is expected."),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-bash"},'=====Java Start Command=====\nexec /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64/jre/bin/java -server -Xms32m -Xmx2048m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/Linkis/linkis03/logs/linkis-cli -XX:ErrorFile=/Linkis/linkis03/logs/linkis-cli/ps_err_pid%p.log -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=80 -XX:+DisableExplicitGC -classpath /Linkis/linkis03/conf/linkis-cli:/Linkis/linkis03/lib/linkis-computation-governance/linkis-client/linkis-cli/*:/Linkis/linkis03/lib/linkis-commons/public-module/*: -Dconf.root=/Linkis/linkis03/conf/linkis-cli -Dconf.file=linkis-cli.properties -Dlog.path=/Linkis/linkis03/logs/linkis-cli -Dlog.file=linkis-client.root.log.20220418221952287912946 org.apache.linkis.cli.application.LinkisClientApplication \'-engineType shell-1 -codeType shell -code echo "hello" -submitUser test -proxyUser test\'\n[INFO] LogFile path: /Linkis/linkis03/logs/linkis-cli/linkis-client.root.log.20220418221952287912946\n[INFO] User does not provide usr-configuration file. Will use default config\n[INFO] connecting to linkis gateway:http://127.0.0.1:9001\nJobId:6\nTaskId:6\nExecId:exec_id018028linkis-cg-entranceiZbp19q51jb8p984yk2jxdZ:9104LINKISCLI_test_shell_1\n[INFO] Job is successfully submitted!\n\n2022-04-18 22:19:53.019 INFO Program is substituting variables for you\n2022-04-18 22:19:53.019 INFO Variables substitution ended successfully\n2022-04-18 22:19:53.019 WARN The code you submit will not be limited by the limit\nJob with jobId : LINKISCLI_test_shell_1 and execID : LINKISCLI_test_shell_1 submitted \n2022-04-18 22:19:53.019 INFO You have submitted a new job, script code (after variable substitution) is\n************************************SCRIPT CODE************************************\necho "hello"\n************************************SCRIPT CODE************************************\n2022-04-18 22:19:53.019 INFO Your job is accepted, jobID is LINKISCLI_test_shell_1 and jobReqId is 6 in ServiceInstance(linkis-cg-entrance, iZbp19q51jb8p984yk2jxdZ:9104). Please wait it to be scheduled\njob is scheduled.\n2022-04-18 22:19:53.019 INFO Your job is Scheduled. Please wait it to run.\nYour job is being scheduled by orchestrator.\n2022-04-18 22:19:53.019 INFO job is running.\n2022-04-18 22:19:53.019 INFO Your job is Running now. Please wait it to complete.\n2022-04-18 22:19:53.019 INFO Job with jobGroupId : 6 and subJobId : 5 was submitted to Orchestrator.\n2022-04-18 22:19:53.019 INFO Background is starting a new engine for you,execId astJob_4_codeExec_4 mark id is mark_4, it may take several seconds, please wait\n2022-04-18 22:20:01.020 INFO Task submit to ec: ServiceInstance(linkis-cg-engineconn, iZbp19q51jb8p984yk2jxdZ:43213) get engineConnExecId is: 1\n2022-04-18 22:20:01.020 INFO EngineConn local log path: ServiceInstance(linkis-cg-engineconn, iZbp19q51jb8p984yk2jxdZ:43213) /appcom1/tmp/test/20220418/shell/cc21fbb5-3a33-471b-a565-8407ff8ebd80/logs\niZbp19q51jb8p984yk2jxdZ:43213_0 >> echo "hello"\n2022-04-18 22:20:01.438 WARN [Linkis-Default-Scheduler-Thread-1] org.apache.linkis.engineconn.computation.executor.hook.executor.ExecuteOnceHook 50 warn - execute once become effective, register lock listener\nhello\n2022-04-18 22:20:01.020 INFO Your subjob : 5 execue with state succeed, has 1 resultsets.\n2022-04-18 22:20:01.020 INFO Congratuaions! Your job : LINKISCLI_test_shell_1 executed with status succeed and 0 results.\n2022-04-18 22:20:01.020 INFO job is completed.\n2022-04-18 22:20:01.020 INFO Task creation time(\u4efb\u52a1\u521b\u5efa\u65f6\u95f4): 2022-04-18 22:19:53, Task scheduling time(\u4efb\u52a1\u8c03\u5ea6\u65f6\u95f4): 2022-04-18 22:19:53, Task start time(\u4efb\u52a1\u5f00\u59cb\u65f6\u95f4): 2022-04-18 22: Mission end time(\u4efb\u52a1\u7ed3\u675f\u65f6\u95f4): 2022-04-18 22:20:01\n2022-04-18 22:20:01.020 INFO Your mission(\u60a8\u7684\u4efb\u52a1) 6 The total time spent is(\u603b\u8017\u65f6\u65f6\u95f4\u4e3a): 8.3 \u79d2\n2022-04-18 22:20:01.020 INFO Congratulations. Your job completed with status Success.\n\n[INFO] Job execute successfully! Will try get execute result\n============Result:================\nTaskId:6\nExecId: exec_id018028linkis-cg-entranceiZbp19q51jb8p984yk2jxdZ:9104LINKISCLI_test_shell_1\nUser:test\nCurrent job status:SUCCEED\nextraMsg: \nresult: \n\n[INFO] Retrieving result-set, may take time if result-set is large, please do not exit program.\n============ RESULT SET 1 ============\nhello \n############Execute Success!!!########\n')))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/dd16698b.55f24d1e.js b/assets/js/dd16698b.55f24d1e.js new file mode 100644 index 00000000000..6d61310ec69 --- /dev/null +++ b/assets/js/dd16698b.55f24d1e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklinkis_web_apache=self.webpackChunklinkis_web_apache||[]).push([[63576],{3905:function(t,e,a){a.d(e,{Zo:function(){return s},kt:function(){return k}});var n=a(67294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var o=n.createContext({}),d=function(t){var e=n.useContext(o),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},s=function(t){var e=d(t.components);return n.createElement(o.Provider,{value:e},t.children)},u={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},m=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,o=t.parentName,s=p(t,["components","mdxType","originalType","parentName"]),m=d(a),k=r,g=m["".concat(o,".").concat(k)]||m[k]||u[k]||l;return a?n.createElement(g,i(i({ref:e},s),{},{components:a})):n.createElement(g,i({ref:e},s))}));function k(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=m;var p={};for(var o in e)hasOwnProperty.call(e,o)&&(p[o]=e[o]);p.originalType=t,p.mdxType="string"==typeof t?t:r,i[1]=p;for(var d=2;d