blob: e176c25d391700a21bf298d6ca154e234ab1dedb [file] [log] [blame]
<!doctype html>
<html class="docs-version-1.1.2" lang="en" dir="ltr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="generator" content="Docusaurus v2.0.0-beta.14">
<link rel="alternate" type="application/rss+xml" href="/blog/rss.xml" title="Apache Linkis Blog RSS Feed">
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="Apache Linkis Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache Linkis" href="/opensearch.xml"><title data-react-helmet="true">Installation Directory Structure | Apache Linkis</title><meta data-react-helmet="true" name="twitter:card" content="summary_large_image"><meta data-react-helmet="true" property="og:url" content="https://linkis.incubator.apache.org/docs/latest/deployment/installation_hierarchical_structure"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="1.1.2"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="docs-default-1.1.2"><meta data-react-helmet="true" property="og:title" content="Installation Directory Structure | Apache Linkis"><meta data-react-helmet="true" name="description" content="The directory structure of Linkis 1.0 is very different from the 0.X version. Each microservice in 0.X has a root directory that exists independently. The main advantage of this directory structure is that it is easy to distinguish microservices and facilitate individual Microservices are managed, but there are some obvious problems:"><meta data-react-helmet="true" property="og:description" content="The directory structure of Linkis 1.0 is very different from the 0.X version. Each microservice in 0.X has a root directory that exists independently. The main advantage of this directory structure is that it is easy to distinguish microservices and facilitate individual Microservices are managed, but there are some obvious problems:"><link data-react-helmet="true" rel="shortcut icon" href="/img/favicon.ico"><link data-react-helmet="true" rel="canonical" href="https://linkis.incubator.apache.org/docs/latest/deployment/installation_hierarchical_structure"><link data-react-helmet="true" rel="alternate" href="https://linkis.incubator.apache.org/docs/latest/deployment/installation_hierarchical_structure" hreflang="en"><link data-react-helmet="true" rel="alternate" href="https://linkis.incubator.apache.org/zh-CN/docs/latest/deployment/installation_hierarchical_structure" hreflang="zh-CN"><link data-react-helmet="true" rel="alternate" href="https://linkis.incubator.apache.org/docs/latest/deployment/installation_hierarchical_structure" hreflang="x-default"><link data-react-helmet="true" rel="preconnect" href="https://AE29KQB3IA-dsn.algolia.net" crossorigin="anonymous"><link rel="stylesheet" href="/assets/css/styles.92d87943.css">
<link rel="preload" href="/assets/js/runtime~main.a4c60f50.js" as="script">
<link rel="preload" href="/assets/js/main.42471b13.js" as="script">
</head>
<body>
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div><a href="#" class="skipToContent_OuoZ">Skip to main content</a></div><nav class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle clean-btn" type="button" tabindex="0"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/"><img src="/img/logo.png" alt="Apache Linkis Logo" class="themedImage_TMUO themedImage--light_4Vu1 navbar__logo"><img src="/img/logo.png" alt="Apache Linkis Logo" class="themedImage_TMUO themedImage--dark_uzRr navbar__logo"><b class="navbar__title">Apache Linkis(Incubating)</b></a><a class="navbar__item navbar__link" href="/">Home</a><a class="navbar__item navbar__link" href="/faq/main">FAQ</a><a class="navbar__item navbar__link" href="/download/main">Download</a><a class="navbar__item navbar__link" href="/community/how-to-subscribe">Community</a><a class="navbar__item navbar__link" href="/blog">Blog</a><a class="navbar__item navbar__link" href="/team">Team</a><a class="navbar__item navbar__link" href="/user">Users</a><div class="navbar__item dropdown dropdown--hoverable"><a class="navbar__link">ASF</a><ul class="dropdown__menu"><li><a href="https://www.apache.org/" target="_blank" rel="noopener noreferrer" class="dropdown__link">Foundation</a></li><li><a href="https://www.apache.org/licenses/" target="_blank" rel="noopener noreferrer" class="dropdown__link">License</a></li><li><a href="https://www.apache.org/events/current-event" target="_blank" rel="noopener noreferrer" class="dropdown__link">Events</a></li><li><a href="https://www.apache.org/security/" target="_blank" rel="noopener noreferrer" class="dropdown__link">Security</a></li><li><a href="https://www.apache.org/foundation/sponsorship.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Sponsorship</a></li><li><a href="https://www.apache.org/foundation/policies/privacy.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Privacy</a></li><li><a href="https://www.apache.org/foundation/thanks.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Thanks</a></li></ul></div></div><div class="navbar__items navbar__items--right"><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a class="navbar__link">Doc</a><ul class="dropdown__menu"><li><a class="dropdown__link" href="/docs/1.1.3/introduction">Next(1.1.3)</a></li><li><a class="dropdown__link" href="/docs/latest/introduction">1.1.2</a></li><li><a class="dropdown__link" href="/docs/1.1.1/introduction">1.1.1</a></li><li><a class="dropdown__link" href="/docs/1.1.0/introduction">1.1.0</a></li><li><a class="dropdown__link" href="/docs/1.0.3/introduction">1.0.3</a></li><li><a class="dropdown__link" href="/docs/1.0.2/introduction">1.0.2</a></li><li><a class="dropdown__link" href="/docs/0.11.0/introduction">0.11.0</a></li><li><a class="dropdown__link" href="/versions">All Version</a></li></ul></div><a href="https://github.com/apache/incubator-linkis" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link header-github-link" aria-label="GitHub"></a><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a href="#" class="navbar__link"><span><svg t="1631348384596" class="iconLanguage_EbrZ" viewBox="0 0 1024 1024" version="1.1" p-id="557" width="20" height="20"><path d="M547.797333 638.208l-104.405333-103.168 1.237333-1.28a720.170667 720.170667 0 0 0 152.490667-268.373333h120.448V183.082667h-287.744V100.906667H347.605333v82.218666H59.818667V265.386667h459.178666a648.234667 648.234667 0 0 1-130.304 219.946666 643.242667 643.242667 0 0 1-94.976-137.728H211.541333a722.048 722.048 0 0 0 122.453334 187.434667l-209.194667 206.378667 58.368 58.368 205.525333-205.525334 127.872 127.829334 31.232-83.84m231.424-208.426667h-82.218666l-184.96 493.312h82.218666l46.037334-123.306667h195.242666l46.464 123.306667h82.218667l-185.002667-493.312m-107.690666 287.744l66.56-178.005333 66.602666 178.005333z" fill="currentColor" p-id="558"></path></svg><span>English</span></span></a><ul class="dropdown__menu"><li><a href="/docs/latest/deployment/installation_hierarchical_structure" target="_self" rel="noopener noreferrer" class="dropdown__link dropdown__link--active" style="text-transform:capitalize">English</a></li><li><a href="/zh-CN/docs/latest/deployment/installation_hierarchical_structure" target="_self" rel="noopener noreferrer" class="dropdown__link" style="text-transform:capitalize">简体中文</a></li></ul></div><div class="searchBox_Bc3W"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"></span></button></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div class="main-wrapper docs-wrapper docs-doc-page"><div class="docPage_lDyR"><button class="clean-btn backToTopButton_i9tI" type="button"><svg viewBox="0 0 24 24" width="28"><path d="M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z" fill="currentColor"></path></svg></button><aside class="docSidebarContainer_0YBq"><div class="sidebar_a3j0"><nav class="menu thin-scrollbar menu_cyFh menuWithAnnouncementBar_+O1J"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" href="/docs/latest/introduction">Introduction</a></li><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" href="/docs/latest/release">Version Overview</a></li><li class="theme-doc-sidebar-item-category menu__list-item"><a class="menu__link menu__link--sublist menu__link--active" href="#">Deployment</a><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" tabindex="0" href="/docs/latest/deployment/quick_deploy">Quick Deployment</a></li><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" tabindex="0" href="/docs/latest/deployment/cluster_deployment">Cluster Deployment</a></li><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" tabindex="0" href="/docs/latest/deployment/engine_conn_plugin_installation">EngineConnPlugin Installation</a></li><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/docs/latest/deployment/installation_hierarchical_structure">Installation Directory Structure</a></li><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" tabindex="0" href="/docs/latest/deployment/unpack_hierarchical_structure">installation package directory structure</a></li><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" tabindex="0" href="/docs/latest/deployment/sourcecode_hierarchical_structure">Source Code Directory Structure</a></li><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" tabindex="0" href="/docs/latest/deployment/web_install">Linkis Console Deployment</a></li><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" tabindex="0" href="/docs/latest/deployment/involve_skywalking_into_linkis">Involve SkyWaling into Linkis</a></li><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" tabindex="0" href="/docs/latest/deployment/start_metadatasource">DataSource</a></li><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" tabindex="0" href="/docs/latest/deployment/deploy_linkis_without_hdfs">Deploy Linkis without HDFS</a></li><li class="theme-doc-sidebar-item-link menu__list-item"><a class="menu__link" tabindex="0" href="/docs/latest/deployment/linkis_scriptis_install">Installation and deployment of tool scriptis</a></li></ul></li><li class="theme-doc-sidebar-item-category menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#">User Guide</a></li><li class="theme-doc-sidebar-item-category menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#">Engine Usage</a></li><li class="theme-doc-sidebar-item-category menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#">API Docs</a></li><li class="theme-doc-sidebar-item-category menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#">Table Structure</a></li><li class="theme-doc-sidebar-item-category menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#">Architecture</a></li><li class="theme-doc-sidebar-item-category menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#">Development Doc</a></li><li class="theme-doc-sidebar-item-category menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#">Upgrade Guide</a></li><li class="theme-doc-sidebar-item-category menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#">Tuning And Troubleshooting</a></li></ul></nav></div></aside><main class="docMainContainer_r8cw"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_zHA2"><div class="docItemContainer_oiyr"><article><span class="theme-doc-version-badge badge badge--secondary">Version: <!-- -->1.1.2</span><div class="theme-doc-markdown markdown"><header><h1>Installation directory structure</h1></header><p>The directory structure of Linkis 1.0 is very different from the 0.X version. Each microservice in 0.X has a root directory that exists independently. The main advantage of this directory structure is that it is easy to distinguish microservices and facilitate individual Microservices are managed, but there are some obvious problems:</p><ol><li>The microservice catalog is too complicated and it is not convenient to switch catalog management</li><li>There is no unified startup script, which makes it more troublesome to start and stop microservices</li><li>There are a large number of duplicate service configurations, and the same configuration often needs to be modified in many places</li><li>There are a large number of repeated Lib dependencies, which increases the size of the installation package and the risk of dependency conflicts</li></ol><p>Therefore, in Linkis 1.0, we have greatly optimized and adjusted the installation directory structure, reducing the number of microservice directories, reducing the jar packages that are repeatedly dependent, and reusing configuration files and microservice management scripts as much as possible. Mainly reflected in the following aspects:</p><p>1.The bin folder is no longer provided for each microservice, and modified to be shared by all microservices.</p><blockquote><p>The Bin folder is modified to the installation directory, which is mainly used to install Linkis 1.0 and check the environment status. The new sbin directory provides one-click start and stop for Linkis, and provides independent start and stop for all microservices by changing parameters.</p></blockquote><p>2.No longer provide a separate conf directory for each microservice, and modify it to be shared by all microservices.</p><blockquote><p>The Conf folder contains two aspects of content. On the one hand, it is the configuration information shared by all microservices. This type of configuration information contains information that users can customize configuration according to their own environment; on the other hand, it is the special characteristics of each microservice. Configuration, under normal circumstances, users do not need to change by themselves.</p></blockquote><p>3.The lib folder is no longer provided for each microservice, and modified to be shared by all microservices</p><blockquote><p>The Lib folder also contains two aspects of content, on the one hand, the common dependencies required by all microservices; on the other hand, the special dependencies required by each microservice.</p></blockquote><p>4.The log directory is no longer provided for each microservice, modified to be shared by all microservices</p><blockquote><p>The Log directory contains log files of all microservices.</p></blockquote><p>The simplified directory structure of Linkis 1.0 is as follows.</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── bin ──installation directory</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── checkEnv.sh ── Environmental variable detection</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── checkServices.sh ── Microservice status check</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── common.sh ── Some public shell functions</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── install-io.sh ── Used for dependency replacement during installation</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └── install.sh ── Main script of Linkis installation</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── conf ──configuration directory</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── application-eureka.yml </span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── application-linkis.yml ──Microservice general yml</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-engineconnmanager-io.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-engineconnmanager.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-engineplugin.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-entrance.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-linkismanager.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-computation-governance</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │   └── linkis-client</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │   └── linkis-cli</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │   ├── linkis-cli.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │   └── log4j2.xml</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-env.sh ──linkis environment properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-et-validator.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-mg-gateway.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis.properties ──linkis global properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-bml.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-cs.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-datasource.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-publicservice.properties</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── log4j2.xml</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── proxy.properties(Optional)</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └── token.properties(Optional)</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── db ──database DML and DDL file directory</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis\_ddl.sql ──Database table definition SQL</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis\_dml.sql ──Database table initialization SQL</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └── module ──Contains DML and DDL files of each microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── lib ──lib directory</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-commons ──Common dependency package</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-computation-governance ──The lib directory of the computing governance module</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-engineconn-plugins ──lib directory of all EngineConnPlugins</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-public-enhancements ──lib directory of public enhancement services</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └── linkis-spring-cloud-services ──SpringCloud lib directory</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── logs ──log directory</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-engineconnmanager-gc.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-engineconnmanager.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-engineconnmanager.out</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-engineplugin-gc.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-engineplugin.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-engineplugin.out</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-entrance-gc.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-entrance.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-entrance.out</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-linkismanager-gc.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-linkismanager.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-cg-linkismanager.out</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-et-validator-gc.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-et-validator.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-et-validator.out</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-mg-eureka-gc.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-mg-eureka.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-mg-eureka.out</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-mg-gateway-gc.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-mg-gateway.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-mg-gateway.out</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-bml-gc.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-bml.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-bml.out</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-cs-gc.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-cs.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-cs.out</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-datasource-gc.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-datasource.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-datasource.out</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-publicservice-gc.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis-ps-publicservice.log</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └── linkis-ps-publicservice.out</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── pid ──Process ID of all microservices</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis\_cg-engineconnmanager.pid ──EngineConnManager microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis\_cg-engineconnplugin.pid ──EngineConnPlugin microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis\_cg-entrance.pid ──Engine entrance microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis\_cg-linkismanager.pid ──linkis manager microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis\_mg-eureka.pid ──eureka microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis\_mg-gateway.pid ──gateway microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis\_ps-bml.pid ──material library microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis\_ps-cs.pid ──Context microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ├── linkis\_ps-datasource.pid ──Data source microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └── linkis\_ps-publicservice.pid ──public microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">└── sbin ──microservice start and stop script directory</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> ├── ext ──Start and stop script directory of each microservice</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> ├── linkis-daemon.sh ── Quick start and stop, restart a single microservice script</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> ├── linkis-start-all.sh ── Start all microservice scripts with one click</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> └── linkis-stop-all.sh ── Stop all microservice scripts with one click</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><header><h1>Configuration item modification</h1></header><p>After executing the install.sh in the bin directory to complete the Linkis installation, you need to modify the configuration items. All configuration items are located in the con directory. Normally, you need to modify the three configurations of db.sh, linkis.properties, and linkis-env.sh For documentation, project installation and configuration, please refer to the article &quot;Linkis1.0 Installation&quot;</p><header><h1>Microservice start and stop</h1></header><p>After modifying the configuration items, you can start the microservice in the sbin directory. The names of all microservices are as follows:</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── linkis-cg-engineconnmanager ──engine management service</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── linkis-cg-engineplugin ──EngineConnPlugin management service</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── linkis-cg-entrance ──computing governance entrance service</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── linkis-cg-linkismanager ──computing governance management service</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── linkis-mg-eureka ──microservice registry service</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── linkis-mg-gateway ──Linkis gateway service</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── linkis-ps-bml ──material library service</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── linkis-ps-cs ──context service</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">├── linkis-ps-datasource ──data source service</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">└── linkis-ps-publicservice ──public service</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p><strong>Microservice abbreviation</strong>:</p><table><thead><tr><th>Abbreviation</th><th>Full English Name</th><th>Full Chinese Name</th></tr></thead><tbody><tr><td>cg</td><td>Computation Governance</td><td>Computing Governance</td></tr><tr><td>mg</td><td>Microservice Governance</td><td>Microservice Governance</td></tr><tr><td>ps</td><td>Public Enhancement Service</td><td>Public Enhancement Service</td></tr></tbody></table><p>In the past, to start and stop a single microservice, you need to enter the bin directory of each microservice and execute the start/stop script. When there are many microservices, it is troublesome to start and stop. A lot of additional directory switching operations are added. Linkis1.0 will all The scripts related to the start and stop of microservices are placed in the sbin directory, and only a single entry script needs to be executed.</p><p><strong>Under the Linkis/sbin directory</strong>:</p><p>1.Start all microservices at once:</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">sh linkis-start-all.sh</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>2.Shut down all microservices at once</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">sh linkis-stop-all.sh</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>3.Start a single microservice (the service name needs to be removed from the Linkis prefix, such as mg-eureka)</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">sh linkis-daemon.sh start service-name</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>For example: </p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">sh linkis-daemon.sh start mg-eureka</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>4.Shut down a single microservice</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">sh linkis-daemon.sh stop service-name</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>For example: </p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">sh linkis-daemon.sh stop mg-eureka</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>5.Restart a single microservice</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">sh linkis-daemon.sh restart service-name</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>For example: </p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">sh linkis-daemon.sh restart mg-eureka</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>6.View the status of a single microservice</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">sh linkis-daemon.sh status service-name</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>For example: </p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI"><pre tabindex="0" class="prism-code language-undefined codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">sh linkis-daemon.sh status mg-eureka</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="theme-doc-footer-edit-meta-row row"><div class="col"><a href="https://github.com/apache/incubator-linkis-website/edit/dev/versioned_docs/version-1.1.2/deployment/installation_hierarchical_structure.md" target="_blank" rel="noreferrer noopener" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_mS5F" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col lastUpdated_mt2f"></div></div></footer></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages navigation"><div class="pagination-nav__item"><a class="pagination-nav__link" href="/docs/latest/deployment/engine_conn_plugin_installation"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">« <!-- -->EngineConnPlugin Installation</div></a></div><div class="pagination-nav__item pagination-nav__item--next"><a class="pagination-nav__link" href="/docs/latest/deployment/unpack_hierarchical_structure"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">installation package directory structure<!-- --> »</div></a></div></nav></div></div></div></div></main></div></div><footer class="footer"><div class="container"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">Linkis</div><ul class="footer__items"><li class="footer__item"><a class="footer__link-item" href="/docs/latest/introduction">Document</a></li><li class="footer__item"><a class="footer__link-item" href="/faq/main">FAQ</a></li><li class="footer__item"><a href="https://github.com/apache/incubator-linkis/releases" target="_blank" rel="noopener noreferrer" class="footer__link-item"><span>Releases<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_wgqa"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></span></a></li></ul></div><div class="col footer__col"><div class="footer__title">Community</div><ul class="footer__items"><li class="footer__item"><a href="https://github.com/apache/incubator-linkis" target="_blank" rel="noopener noreferrer" class="footer__link-item"><span>GitHub<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_wgqa"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></span></a></li><li class="footer__item"><a href="https://github.com/apache/incubator-linkis/issues" target="_blank" rel="noopener noreferrer" class="footer__link-item"><span>Issue Tracker<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_wgqa"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></span></a></li><li class="footer__item"><a href="https://github.com/apache/incubator-linkis/pulls" target="_blank" rel="noopener noreferrer" class="footer__link-item"><span>Pull Requests<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_wgqa"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></span></a></li></ul></div><div class="col footer__col"><div class="footer__title">Subscribe Mailing List</div><ul class="footer__items"><li class="footer__item"><a class="footer__link-item" href="/community/how-to-subscribe">How to Subscribe</a></li><li class="footer__item"><a href="mailto:dev-subscribe@linkis.apache.org" target="_blank" rel="noopener noreferrer" class="footer__link-item"><span>Subscribe Mail<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_wgqa"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></span></a></li><li class="footer__item"><a href="https://lists.apache.org/list.html?dev@linkis.apache.org" target="_blank" rel="noopener noreferrer" class="footer__link-item"><span>Mail Archive<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_wgqa"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></span></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright"><div><img style="height:50px" alt="Apache Software Foundation" src="/img/incubator-logo.svg"><p style="color: #999999; padding: 0 20px 30px;font-weight:400;text-align:left">Apache Linkis is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</p><p></p>
<p style="padding: 0 20px 30px;color: #999999;font-weight: 400;"> Copyright © 2022 The Apache Software Foundation. Licensed under the Apache License, Version 2.0. Apache Linkis, Apache Incubator, Apache, the Apache feather logo, the Apache Linkis logo and the Apache Incubator project logo are trademarks of The Apache Software Foundation.</p>
<div></div></div></div></div></div></footer></div>
<script src="/assets/js/runtime~main.a4c60f50.js"></script>
<script src="/assets/js/main.42471b13.js"></script>
</body>
</html>