(window.webpackJsonp=window.webpackJsonp||[]).push([[28],{144:function(e,n,t){"use strict";t.d(n,"a",(function(){return l})),t.d(n,"b",(function(){return g}));var i=t(0),a=t.n(i);function u(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function s(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 r(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?s(Object(t),!0).forEach((function(n){u(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):s(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function c(e,n){if(null==e)return{};var t,i,a=function(e,n){if(null==e)return{};var t,i,a={},u=Object.keys(e);for(i=0;i<u.length;i++)t=u[i],n.indexOf(t)>=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(i=0;i<u.length;i++)t=u[i],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}var o=a.a.createContext({}),p=function(e){var n=a.a.useContext(o),t=n;return e&&(t="function"==typeof e?e(n):r(r({},n),e)),t},l=function(e){var n=p(e.components);return a.a.createElement(o.Provider,{value:n},e.children)},d={inlineCode:"code",wrapper:function(e){var n=e.children;return a.a.createElement(a.a.Fragment,{},n)}},b=a.a.forwardRef((function(e,n){var t=e.components,i=e.mdxType,u=e.originalType,s=e.parentName,o=c(e,["components","mdxType","originalType","parentName"]),l=p(t),b=i,g=l["".concat(s,".").concat(b)]||l[b]||d[b]||u;return t?a.a.createElement(g,r(r({ref:n},o),{},{components:t})):a.a.createElement(g,r({ref:n},o))}));function g(e,n){var t=arguments,i=n&&n.mdxType;if("string"==typeof e||i){var u=t.length,s=new Array(u);s[0]=b;var r={};for(var c in n)hasOwnProperty.call(n,c)&&(r[c]=n[c]);r.originalType=e,r.mdxType="string"==typeof e?e:i,s[1]=r;for(var o=2;o<u;o++)s[o]=t[o];return a.a.createElement.apply(null,s)}return a.a.createElement.apply(null,t)}b.displayName="MDXCreateElement"},211:function(e,n,t){"use strict";t.r(n),n.default=t.p+"assets/images/sge_cluster-b9ac6485a770b5f8a031b29f6f430810.png"},212:function(e,n,t){"use strict";t.r(n),n.default=t.p+"assets/images/sge_stat-29ad9dfe485895eb54eea5baad709e15.png"},95:function(e,n,t){"use strict";t.r(n),t.d(n,"frontMatter",(function(){return s})),t.d(n,"metadata",(function(){return r})),t.d(n,"toc",(function(){return c})),t.d(n,"default",(function(){return p}));var i=t(3),a=t(7),u=(t(0),t(144)),s={},r={unversionedId:"ecosystem/kaldi/RunningDistributedThchs30KaldiJobs",id:"ecosystem/kaldi/RunningDistributedThchs30KaldiJobs",isDocsHomePage:!1,title:"RunningDistributedThchs30KaldiJobs",description:"\x3c!--",source:"@site/docs/ecosystem/kaldi/RunningDistributedThchs30KaldiJobs.md",slug:"/ecosystem/kaldi/RunningDistributedThchs30KaldiJobs",permalink:"/docs/ecosystem/kaldi/RunningDistributedThchs30KaldiJobs",editUrl:"https://github.com/apache/submarine/edit/master/website/docs/ecosystem/kaldi/RunningDistributedThchs30KaldiJobs.md",version:"current"},c=[{value:"Prepare data for training",id:"prepare-data-for-training",children:[]},{value:"Prepare Docker images",id:"prepare-docker-images",children:[]},{value:"Run Kaldi jobs",id:"run-kaldi-jobs",children:[{value:"Run distributed training",id:"run-distributed-training",children:[]}]}],o={toc:c};function p(e){var n=e.components,s=Object(a.a)(e,["components"]);return Object(u.b)("wrapper",Object(i.a)({},o,s,{components:n,mdxType:"MDXLayout"}),Object(u.b)("h1",{id:"thchs30-kaldi-example-with-yarn-service"},"Thchs30 Kaldi Example With YARN Service"),Object(u.b)("h2",{id:"prepare-data-for-training"},"Prepare data for training"),Object(u.b)("p",null,"Thchs30 is a common benchmark in machine learning for speech data and transcripts. Below example is based on Thchs30 dataset."),Object(u.b)("p",null,"1) download gz file:"),Object(u.b)("pre",null,Object(u.b)("code",{parentName:"pre"},"THCHS30_PATH=/data/hdfs1/nfs/aisearch/kaldi/thchs30\nmkdir $THCHS30_PATH/data && cd $THCHS30_PATH/data\nwget http://www.openslr.org/resources/18/data_thchs30.tgz\nwget http://www.openslr.org/resources/18/test-noise.tgz\nwget http://www.openslr.org/resources/18/resource.tgz\n")),Object(u.b)("p",null,"2) Checkout ",Object(u.b)("a",{parentName:"p",href:"https://github.com/apache/submarine.git"},"https://github.com/apache/submarine.git"),":"),Object(u.b)("pre",null,Object(u.b)("code",{parentName:"pre"},"git clone https://github.com/apache/submarine.git\n")),Object(u.b)("p",null,"3) Go to ",Object(u.b)("inlineCode",{parentName:"p"},"submarine/docker/ecosystem/")),Object(u.b)("pre",null,Object(u.b)("code",{parentName:"pre"},"cp -r ./kaldi/sge $THCHS30_PATH/sge\n")),Object(u.b)("p",null,"4) optional\uff0cModify ",Object(u.b)("inlineCode",{parentName:"p"},"/opt/kaldi/egs/thchs30/s5/cmd.sh")," in the Container,This queue is used by default"),Object(u.b)("pre",null,Object(u.b)("code",{parentName:"pre"},'export train_cmd="queue.pl -q all.q"\n')),Object(u.b)("p",null,Object(u.b)("strong",{parentName:"p"},"Warning:")),Object(u.b)("p",null,"Please note that YARN service doesn't allow multiple services with the same name, so please run following command"),Object(u.b)("pre",null,Object(u.b)("code",{parentName:"pre"},"yarn application -destroy <service-name>\n")),Object(u.b)("p",null,"to delete services if you want to reuse the same service name."),Object(u.b)("h2",{id:"prepare-docker-images"},"Prepare Docker images"),Object(u.b)("p",null,"Refer to ",Object(u.b)("a",{parentName:"p",href:"/docs/ecosystem/kaldi/WriteDockerfileKaldi"},"Write Dockerfile")," to build a Docker image or use prebuilt one:"),Object(u.b)("ul",null,Object(u.b)("li",{parentName:"ul"},"hadoopsubmarine/kaldi-latest-gpu-base:0.0.1")),Object(u.b)("h2",{id:"run-kaldi-jobs"},"Run Kaldi jobs"),Object(u.b)("h3",{id:"run-distributed-training"},"Run distributed training"),Object(u.b)("pre",null,Object(u.b)("code",{parentName:"pre"},'# Change the variables according to your needs\nSUBMARINE_VERSION=3.3.0-SNAPSHOT\nWORKER_NUM=2\nSGE_CFG_PATH=/cfg\nTHCHS30_PATH=/data/hdfs1/nfs/aisearch/kaldi/thchs30\nDOCKER_HADOOP_HDFS_HOME=/app/${SUBMARINE_VERSION}\n\n# Dependent on registrydns, you must fill in < your RegistryDNSIP> in resolv.conf\nyarn jar /usr/local/matrix/share/hadoop/yarn/${SUBMARINE_VERSION}.jar \\\njob run --name kaldi-thchs30-distributed \\\n--env DOCKER_JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre/ \\\n--env DOCKER_HADOOP_HDFS_HOME=$DOCKER_HADOOP_HDFS_HOME \\\n--env YARN_CONTAINER_RUNTIME_DOCKER_CONTAINER_NETWORK=calico-network \\\n--env PYTHONUNBUFFERED="0" \\\n--env TZ="Asia/Shanghai" \\\n--env YARN_CONTAINER_RUNTIME_DOCKER_MOUNTS=${THCHS30_PATH}/sge/resolv.conf:/etc/resolv.conf,\\\n${THCHS30_PATH}/sge/passwd:/etc/passwd:rw,\\\n${THCHS30_PATH}/sge/group:/etc/group:rw,\\\n${THCHS30_PATH}/sge:$SGE_CFG_PATH,\\\n${THCHS30_PATH}/data:/opt/kaldi/egs/thchs30,\\\n${THCHS30_PATH}/mul/s5:/opt/kaldi/egs/mul-thchs30/s5 \\\n--input_path /opt/kaldi/egs/thchs30/data \\\n--docker_image hadoopsubmarine/kaldi-latest-gpu-base:0.0.1 \\\n--num_workers $WORKER_NUM \\\n--worker_resources memory=64G,vcores=32,gpu=1 \\\n--worker_launch_cmd "sudo mkdir -p /opt/kaldi/egs/mul-thchs30/s5 && \\\nsudo cp /opt/kaldi/egs/thchs30/s5/* /opt/kaldi/egs/mul-thchs30/s5 -r && \\\ncluster_user=`whoami` domain_suffix="ml.com" && \\\ncd /cfg && bash sge_run.sh $WORKER_NUM $SGE_CFG_PATH && \\\nif [ $(echo $HOST_NAME |grep "^master-") ] then sleep 2m && cd /opt/kaldi/egs/mul-thchs30/s5 && ./run.sh fi" \\\n--verbose\n')),Object(u.b)("p",null,"Explanations:"),Object(u.b)("ul",null,Object(u.b)("li",{parentName:"ul"},Object(u.b)("inlineCode",{parentName:"li"},">1")," num_workers indicates it is a distributed training."),Object(u.b)("li",{parentName:"ul"},"Parameters / resources / Docker image of parameter server can be specified separately. For many cases, parameter server doesn't require GPU.We don't need parameter server here")),Object(u.b)("p",null,"For the meaning of the individual parameters, see the ",Object(u.b)("a",{parentName:"p",href:"../../adminDocs/yarn/README"},"QuickStart")," page!"),Object(u.b)("p",null,Object(u.b)("em",{parentName:"p"},"Outputs of distributed training")),Object(u.b)("p",null,"Sample output of master:"),Object(u.b)("pre",null,Object(u.b)("code",{parentName:"pre"},"...\nReading package lists...\nBuilding dependency tree...\nReading state information...\nThe following additional packages will be installed:\n  bsd-mailx cpio gridengine-common ifupdown iproute2 isc-dhcp-client\n  isc-dhcp-common libatm1 libdns-export162 libisc-export160 liblockfile-bin\n  liblockfile1 libmnl0 libxmuu1 libxtables11 ncurses-term netbase\n  openssh-client openssh-server openssh-sftp-server postfix python3-chardet\n  python3-pkg-resources python3-requests python3-six python3-urllib3\n  ssh-import-id ssl-cert tcsh xauth\nSuggested packages:\n  libarchive1 gridengine-qmon ppp rdnssd iproute2-doc resolvconf avahi-autoipd\n  isc-dhcp-client-ddns apparmor ssh-askpass libpam-ssh keychain monkeysphere\n  rssh molly-guard ufw procmail postfix-mysql postfix-pgsql postfix-ldap\n  postfix-pcre sasl2-bin libsasl2-modules dovecot-common postfix-cdb\n  postfix-doc python3-setuptools python3-ndg-httpsclient python3-openssl\n  python3-pyasn1 openssl-blacklist\nThe following NEW packages will be installed:\n  bsd-mailx cpio gridengine-client gridengine-common gridengine-exec\n  gridengine-master ifupdown iproute2 isc-dhcp-client isc-dhcp-common libatm1\n  libdns-export162 libisc-export160 liblockfile-bin liblockfile1 libmnl0\n  libxmuu1 libxtables11 ncurses-term netbase openssh-client openssh-server\n  openssh-sftp-server postfix python3-chardet python3-pkg-resources\n  python3-requests python3-six python3-urllib3 ssh-import-id ssl-cert tcsh\n  xauth\n0 upgraded, 33 newly installed, 0 to remove and 30 not upgraded.\nNeed to get 12.1 MB of archives.\nAfter this operation, 65.8 MB of additional disk space will be used.\nGet:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 libatm1 amd64 1:2.5.1-1.5 [24.2 kB]\nGet:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 libmnl0 amd64 1.0.3-5 [12.0 kB]\nGet:3 http://archive.ubuntu.com/ubuntu xenial/main amd64 liblockfile-bin amd64 1.09-6ubuntu1 [10.8 kB]\nGet:4 http://archive.ubuntu.com/ubuntu xenial/main amd64 liblockfile1 amd64 1.09-6ubuntu1 [8056 B]\nGet:5 http://archive.ubuntu.com/ubuntu xenial/main amd64 cpio amd64 2.11+dfsg-5ubuntu1 [74.8 kB]\nGet:6 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 iproute2 amd64 4.3.0-1ubuntu3.16.04.5 [523 kB]\nGet:7 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 ifupdown amd64 0.8.10ubuntu1.4 [54.9 kB]\nGet:8 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libisc-export160 amd64 1:9.10.3.dfsg.P4-8ubuntu1.15 [153 kB]\nGet:9 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdns-export162 amd64 1:9.10.3.dfsg.P4-8ubuntu1.15 [665 kB]\nGet:10 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 isc-dhcp-client amd64 4.3.3-5ubuntu12.10 [224 kB]\nGet:11 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 isc-dhcp-common amd64 4.3.3-5ubuntu12.10 [105 kB]\nGet:12 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxtables11 amd64 1.6.0-2ubuntu3 [27.2 kB]\nGet:13 http://archive.ubuntu.com/ubuntu xenial/main amd64 netbase all 5.3 [12.9 kB]\nGet:14 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxmuu1 amd64 2:1.1.2-2 [9674 B]\nGet:15 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-client amd64 1:7.2p2-4ubuntu2.8 [590 kB]\nGet:16 http://archive.ubuntu.com/ubuntu xenial/main amd64 xauth amd64 1:1.0.9-1ubuntu2 [22.7 kB]\nGet:17 http://archive.ubuntu.com/ubuntu xenial/main amd64 ssl-cert all 1.0.37 [16.9 kB]\nGet:18 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 postfix amd64 3.1.0-3ubuntu0.3 [1152 kB]\nGet:19 http://archive.ubuntu.com/ubuntu xenial/main amd64 bsd-mailx amd64 8.1.2-0.20160123cvs-2 [63.7 kB]\nGet:20 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-common all 6.2u5-7.4 [156 kB]\nGet:21 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-client amd64 6.2u5-7.4 [3394 kB]\nGet:22 http://archive.ubuntu.com/ubuntu xenial/universe amd64 tcsh amd64 6.18.01-5 [410 kB]\nGet:23 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-exec amd64 6.2u5-7.4 [990 kB]\nGet:24 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-master amd64 6.2u5-7.4 [2429 kB]\nGet:25 http://archive.ubuntu.com/ubuntu xenial/main amd64 ncurses-term all 6.0+20160213-1ubuntu1 [249 kB]\nGet:26 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-sftp-server amd64 1:7.2p2-4ubuntu2.8 [38.9 kB]\nGet:27 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-server amd64 1:7.2p2-4ubuntu2.8 [335 kB]\nGet:28 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-pkg-resources all 20.7.0-1 [79.0 kB]\nGet:29 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-chardet all 2.3.0-2 [96.2 kB]\nGet:30 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-six all 1.10.0-3 [11.0 kB]\nGet:31 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 python3-urllib3 all 1.13.1-2ubuntu0.16.04.3 [58.5 kB]\nGet:32 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 python3-requests all 2.9.1-3ubuntu0.1 [55.8 kB]\nGet:33 http://archive.ubuntu.com/ubuntu xenial/main amd64 ssh-import-id all 5.5-0ubuntu1 [10.2 kB]\nFetched 12.1 MB in 0s (15.0 MB/s)\nSelecting previously unselected package libatm1:amd64.\n(Reading database ...\n(Reading database ... 5%\n(Reading database ... 10%\n(Reading database ... 15%\n(Reading database ... 20%\n(Reading database ... 25%\n(Reading database ... 30%\n(Reading database ... 35%\n(Reading database ... 40%\n(Reading database ... 45%\n(Reading database ... 50%\n(Reading database ... 55%\n(Reading database ... 60%\n(Reading database ... 65%\n(Reading database ... 70%\n(Reading database ... 75%\n(Reading database ... 80%\n(Reading database ... 85%\n(Reading database ... 90%\n(Reading database ... 95%\n(Reading database ... 100%\n(Reading database ... 21398 files and directories currently installed.)\nPreparing to unpack .../libatm1_1%3a2.5.1-1.5_amd64.deb ...\nUnpacking libatm1:amd64 (1:2.5.1-1.5) ...\nSelecting previously unselected package libmnl0:amd64.\nPreparing to unpack .../libmnl0_1.0.3-5_amd64.deb ...\nUnpacking libmnl0:amd64 (1.0.3-5) ...\nSelecting previously unselected package liblockfile-bin.\nPreparing to unpack .../liblockfile-bin_1.09-6ubuntu1_amd64.deb ...\nUnpacking liblockfile-bin (1.09-6ubuntu1) ...\nSelecting previously unselected package liblockfile1:amd64.\nPreparing to unpack .../liblockfile1_1.09-6ubuntu1_amd64.deb ...\nUnpacking liblockfile1:amd64 (1.09-6ubuntu1) ...\nSelecting previously unselected package cpio.\nPreparing to unpack .../cpio_2.11+dfsg-5ubuntu1_amd64.deb ...\nUnpacking cpio (2.11+dfsg-5ubuntu1) ...\nSelecting previously unselected package iproute2.\nPreparing to unpack .../iproute2_4.3.0-1ubuntu3.16.04.5_amd64.deb ...\nUnpacking iproute2 (4.3.0-1ubuntu3.16.04.5) ...\nSelecting previously unselected package ifupdown.\nPreparing to unpack .../ifupdown_0.8.10ubuntu1.4_amd64.deb ...\nUnpacking ifupdown (0.8.10ubuntu1.4) ...\nSelecting previously unselected package libisc-export160.\nPreparing to unpack .../libisc-export160_1%3a9.10.3.dfsg.P4-8ubuntu1.15_amd64.deb ...\nUnpacking libisc-export160 (1:9.10.3.dfsg.P4-8ubuntu1.15) ...\nSelecting previously unselected package libdns-export162.\nPreparing to unpack .../libdns-export162_1%3a9.10.3.dfsg.P4-8ubuntu1.15_amd64.deb ...\nUnpacking libdns-export162 (1:9.10.3.dfsg.P4-8ubuntu1.15) ...\nSelecting previously unselected package isc-dhcp-client.\nPreparing to unpack .../isc-dhcp-client_4.3.3-5ubuntu12.10_amd64.deb ...\nUnpacking isc-dhcp-client (4.3.3-5ubuntu12.10) ...\nSelecting previously unselected package isc-dhcp-common.\nPreparing to unpack .../isc-dhcp-common_4.3.3-5ubuntu12.10_amd64.deb ...\nUnpacking isc-dhcp-common (4.3.3-5ubuntu12.10) ...\nSelecting previously unselected package libxtables11:amd64.\nPreparing to unpack .../libxtables11_1.6.0-2ubuntu3_amd64.deb ...\nUnpacking libxtables11:amd64 (1.6.0-2ubuntu3) ...\nSelecting previously unselected package netbase.\nPreparing to unpack .../archives/netbase_5.3_all.deb ...\nUnpacking netbase (5.3) ...\nSelecting previously unselected package libxmuu1:amd64.\nPreparing to unpack .../libxmuu1_2%3a1.1.2-2_amd64.deb ...\nUnpacking libxmuu1:amd64 (2:1.1.2-2) ...\nSelecting previously unselected package openssh-client.\nPreparing to unpack .../openssh-client_1%3a7.2p2-4ubuntu2.8_amd64.deb ...\nUnpacking openssh-client (1:7.2p2-4ubuntu2.8) ...\nSelecting previously unselected package xauth.\nPreparing to unpack .../xauth_1%3a1.0.9-1ubuntu2_amd64.deb ...\nUnpacking xauth (1:1.0.9-1ubuntu2) ...\nSelecting previously unselected package ssl-cert.\nPreparing to unpack .../ssl-cert_1.0.37_all.deb ...\nUnpacking ssl-cert (1.0.37) ...\nSelecting previously unselected package postfix.\nPreparing to unpack .../postfix_3.1.0-3ubuntu0.3_amd64.deb ...\nUnpacking postfix (3.1.0-3ubuntu0.3) ...\nSelecting previously unselected package bsd-mailx.\nPreparing to unpack .../bsd-mailx_8.1.2-0.20160123cvs-2_amd64.deb ...\nUnpacking bsd-mailx (8.1.2-0.20160123cvs-2) ...\nSelecting previously unselected package gridengine-common.\nPreparing to unpack .../gridengine-common_6.2u5-7.4_all.deb ...\nUnpacking gridengine-common (6.2u5-7.4) ...\nSelecting previously unselected package gridengine-client.\nPreparing to unpack .../gridengine-client_6.2u5-7.4_amd64.deb ...\nUnpacking gridengine-client (6.2u5-7.4) ...\nSelecting previously unselected package tcsh.\nPreparing to unpack .../tcsh_6.18.01-5_amd64.deb ...\nUnpacking tcsh (6.18.01-5) ...\nSelecting previously unselected package gridengine-exec.\nPreparing to unpack .../gridengine-exec_6.2u5-7.4_amd64.deb ...\nUnpacking gridengine-exec (6.2u5-7.4) ...\nSelecting previously unselected package gridengine-master.\nPreparing to unpack .../gridengine-master_6.2u5-7.4_amd64.deb ...\nUnpacking gridengine-master (6.2u5-7.4) ...\nSelecting previously unselected package ncurses-term.\nPreparing to unpack .../ncurses-term_6.0+20160213-1ubuntu1_all.deb ...\nUnpacking ncurses-term (6.0+20160213-1ubuntu1) ...\nSelecting previously unselected package openssh-sftp-server.\nPreparing to unpack .../openssh-sftp-server_1%3a7.2p2-4ubuntu2.8_amd64.deb ...\nUnpacking openssh-sftp-server (1:7.2p2-4ubuntu2.8) ...\nSelecting previously unselected package openssh-server.\nPreparing to unpack .../openssh-server_1%3a7.2p2-4ubuntu2.8_amd64.deb ...\nUnpacking openssh-server (1:7.2p2-4ubuntu2.8) ...\nSelecting previously unselected package python3-pkg-resources.\nPreparing to unpack .../python3-pkg-resources_20.7.0-1_all.deb ...\nUnpacking python3-pkg-resources (20.7.0-1) ...\nSelecting previously unselected package python3-chardet.\nPreparing to unpack .../python3-chardet_2.3.0-2_all.deb ...\nUnpacking python3-chardet (2.3.0-2) ...\nSelecting previously unselected package python3-six.\nPreparing to unpack .../python3-six_1.10.0-3_all.deb ...\nUnpacking python3-six (1.10.0-3) ...\nSelecting previously unselected package python3-urllib3.\nPreparing to unpack .../python3-urllib3_1.13.1-2ubuntu0.16.04.3_all.deb ...\nUnpacking python3-urllib3 (1.13.1-2ubuntu0.16.04.3) ...\nSelecting previously unselected package python3-requests.\nPreparing to unpack .../python3-requests_2.9.1-3ubuntu0.1_all.deb ...\nUnpacking python3-requests (2.9.1-3ubuntu0.1) ...\nSelecting previously unselected package ssh-import-id.\nPreparing to unpack .../ssh-import-id_5.5-0ubuntu1_all.deb ...\nUnpacking ssh-import-id (5.5-0ubuntu1) ...\nProcessing triggers for systemd (229-4ubuntu21.22) ...\nProcessing triggers for libc-bin (2.23-0ubuntu11) ...\nSetting up libatm1:amd64 (1:2.5.1-1.5) ...\nSetting up libmnl0:amd64 (1.0.3-5) ...\nSetting up liblockfile-bin (1.09-6ubuntu1) ...\nSetting up liblockfile1:amd64 (1.09-6ubuntu1) ...\nSetting up cpio (2.11+dfsg-5ubuntu1) ...\nupdate-alternatives: using /bin/mt-gnu to provide /bin/mt (mt) in auto mode\nSetting up iproute2 (4.3.0-1ubuntu3.16.04.5) ...\nSetting up ifupdown (0.8.10ubuntu1.4) ...\nCreating /etc/network/interfaces.\nSetting up libisc-export160 (1:9.10.3.dfsg.P4-8ubuntu1.15) ...\nSetting up libdns-export162 (1:9.10.3.dfsg.P4-8ubuntu1.15) ...\nSetting up isc-dhcp-client (4.3.3-5ubuntu12.10) ...\nSetting up isc-dhcp-common (4.3.3-5ubuntu12.10) ...\nSetting up libxtables11:amd64 (1.6.0-2ubuntu3) ...\nSetting up netbase (5.3) ...\nSetting up libxmuu1:amd64 (2:1.1.2-2) ...\nSetting up openssh-client (1:7.2p2-4ubuntu2.8) ...\nSetting up xauth (1:1.0.9-1ubuntu2) ...\nSetting up ssl-cert (1.0.37) ...\nSetting up postfix (3.1.0-3ubuntu0.3) ...\nCreating /etc/postfix/dynamicmaps.cf\nsetting myhostname: master-0.XXX\nsetting alias maps\nsetting alias database\nchanging /etc/mailname to master-0.XXX\nsetting myorigin\nsetting destinations: $myhostname, master-0.XXX, localhost.XXX, , localhost\nsetting relayhost:\nsetting mynetworks: 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128\nsetting mailbox_size_limit: 0\nsetting recipient_delimiter: +\nsetting inet_interfaces: all\nsetting inet_protocols: all\n/etc/aliases does not exist, creating it.\nWARNING: /etc/aliases exists, but does not have a root alias.\n\nPostfix is now set up with a default configuration.  If you need to make\nchanges, edit\n/etc/postfix/main.cf (and others) as needed.  To view Postfix configuration\nvalues, see postconf(1).\n\nAfter modifying main.cf, be sure to run '/etc/init.d/postfix reload'.\n\nRunning newaliases\ninvoke-rc.d: could not determine current runlevel\ninvoke-rc.d: policy-rc.d denied execution of restart.\nSetting up bsd-mailx (8.1.2-0.20160123cvs-2) ...\nupdate-alternatives: using /usr/bin/bsd-mailx to provide /usr/bin/mailx (mailx) in auto mode\nSetting up gridengine-common (6.2u5-7.4) ...\n\nCreating config file /etc/default/gridengine with new version\nSetting up gridengine-client (6.2u5-7.4) ...\nSetting up tcsh (6.18.01-5) ...\nupdate-alternatives: using /bin/tcsh to provide /bin/csh (csh) in auto mode\nSetting up gridengine-exec (6.2u5-7.4) ...\ninvoke-rc.d: could not determine current runlevel\ninvoke-rc.d: policy-rc.d denied execution of start.\nSetting up gridengine-master (6.2u5-7.4) ...\nsu: Authentication failure\n(Ignored)\nInitializing cluster with the following parameters:\n => SGE_ROOT: /var/lib/gridengine\n => SGE_CELL: default\n => Spool directory: /var/spool/gridengine/spooldb\n => Initial manager user: sgeadmin\nInitializing spool (/var/spool/gridengine/spooldb)\nInitializing global configuration based on /usr/share/gridengine/default-configuration\nInitializing complexes based on /usr/share/gridengine/centry\nInitializing usersets based on /usr/share/gridengine/usersets\nAdding user sgeadmin as a manager\nCluster creation complete\ninvoke-rc.d: could not determine current runlevel\ninvoke-rc.d: policy-rc.d denied execution of start.\nSetting up ncurses-term (6.0+20160213-1ubuntu1) ...\nSetting up openssh-sftp-server (1:7.2p2-4ubuntu2.8) ...\nSetting up openssh-server (1:7.2p2-4ubuntu2.8) ...\nCreating SSH2 RSA key; this may take some time ...\n2048 SHA256:hfQpES1aS4cjF8AOCIParZR6342vdwutoyITru0wtuE root@master-0.XXX (RSA)\nCreating SSH2 DSA key; this may take some time ...\n1024 SHA256:gOsPMVgwXBHJzixN/gtJAG+hVCHqw8t7Fhy4nsx8od0 root@master-0.XXX (DSA)\nCreating SSH2 ECDSA key; this may take some time ...\n256 SHA256:3D5SNniUb4z+/BuqXheFgG+DfjsxXqTT/zwWAqdX4jM root@master-0.XXX (ECDSA)\nCreating SSH2 ED25519 key; this may take some time ...\n256 SHA256:SwyeV9iSqOW4TKLi4Wvc0zD8lWtupHCJpDu8oWBwbfU root@master-0.XXX (ED25519)\ninvoke-rc.d: could not determine current runlevel\ninvoke-rc.d: policy-rc.d denied execution of start.\nSetting up python3-pkg-resources (20.7.0-1) ...\nSetting up python3-chardet (2.3.0-2) ...\nSetting up python3-six (1.10.0-3) ...\nSetting up python3-urllib3 (1.13.1-2ubuntu0.16.04.3) ...\nSetting up python3-requests (2.9.1-3ubuntu0.1) ...\nSetting up ssh-import-id (5.5-0ubuntu1) ...\nProcessing triggers for libc-bin (2.23-0ubuntu11) ...\nProcessing triggers for systemd (229-4ubuntu21.22) ...\nReading package lists...\nBuilding dependency tree...\nReading state information...\n0 upgraded, 0 newly installed, 0 to remove and 30 not upgraded.\n")),Object(u.b)("p",null,"cat $SGE_CFG_PATH/setcfg.log"),Object(u.b)("pre",null,Object(u.b)("code",{parentName:"pre"},"finish master\nadd worker node worker-0.XXX\n")),Object(u.b)("p",null,"Sample output of worker:"),Object(u.b)("pre",null,Object(u.b)("code",{parentName:"pre"},"please wait\nReading package lists...\nBuilding dependency tree...\nReading state information...\nThe following additional packages will be installed:\n  bsd-mailx cpio gridengine-common ifupdown iproute2 isc-dhcp-client\n  isc-dhcp-common libatm1 libdns-export162 libisc-export160 liblockfile-bin\n  liblockfile1 libmnl0 libxmuu1 libxtables11 ncurses-term netbase\n  openssh-client openssh-server openssh-sftp-server postfix python3-chardet\n  python3-pkg-resources python3-requests python3-six python3-urllib3\n  ssh-import-id ssl-cert tcsh xauth\nSuggested packages:\n  libarchive1 gridengine-qmon ppp rdnssd iproute2-doc resolvconf avahi-autoipd\n  isc-dhcp-client-ddns apparmor ssh-askpass libpam-ssh keychain monkeysphere\n  rssh molly-guard ufw procmail postfix-mysql postfix-pgsql postfix-ldap\n  postfix-pcre sasl2-bin libsasl2-modules dovecot-common postfix-cdb\n  postfix-doc python3-setuptools python3-ndg-httpsclient python3-openssl\n  python3-pyasn1 openssl-blacklist\nThe following NEW packages will be installed:\n  bsd-mailx cpio gridengine-client gridengine-common gridengine-exec ifupdown\n  iproute2 isc-dhcp-client isc-dhcp-common libatm1 libdns-export162\n  libisc-export160 liblockfile-bin liblockfile1 libmnl0 libxmuu1 libxtables11\n  ncurses-term netbase openssh-client openssh-server openssh-sftp-server\n  postfix python3-chardet python3-pkg-resources python3-requests python3-six\n  python3-urllib3 ssh-import-id ssl-cert tcsh xauth\n0 upgraded, 32 newly installed, 0 to remove and 30 not upgraded.\nNeed to get 9633 kB of archives.\nAfter this operation, 51.2 MB of additional disk space will be used.\nGet:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 libatm1 amd64 1:2.5.1-1.5 [24.2 kB]\nGet:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 libmnl0 amd64 1.0.3-5 [12.0 kB]\nGet:3 http://archive.ubuntu.com/ubuntu xenial/main amd64 liblockfile-bin amd64 1.09-6ubuntu1 [10.8 kB]\nGet:4 http://archive.ubuntu.com/ubuntu xenial/main amd64 liblockfile1 amd64 1.09-6ubuntu1 [8056 B]\nGet:5 http://archive.ubuntu.com/ubuntu xenial/main amd64 cpio amd64 2.11+dfsg-5ubuntu1 [74.8 kB]\nGet:6 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 iproute2 amd64 4.3.0-1ubuntu3.16.04.5 [523 kB]\nGet:7 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 ifupdown amd64 0.8.10ubuntu1.4 [54.9 kB]\nGet:8 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libisc-export160 amd64 1:9.10.3.dfsg.P4-8ubuntu1.15 [153 kB]\nGet:9 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdns-export162 amd64 1:9.10.3.dfsg.P4-8ubuntu1.15 [665 kB]\nGet:10 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 isc-dhcp-client amd64 4.3.3-5ubuntu12.10 [224 kB]\nGet:11 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 isc-dhcp-common amd64 4.3.3-5ubuntu12.10 [105 kB]\nGet:12 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxtables11 amd64 1.6.0-2ubuntu3 [27.2 kB]\nGet:13 http://archive.ubuntu.com/ubuntu xenial/main amd64 netbase all 5.3 [12.9 kB]\nGet:14 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxmuu1 amd64 2:1.1.2-2 [9674 B]\nGet:15 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-client amd64 1:7.2p2-4ubuntu2.8 [590 kB]\nGet:16 http://archive.ubuntu.com/ubuntu xenial/main amd64 xauth amd64 1:1.0.9-1ubuntu2 [22.7 kB]\nGet:17 http://archive.ubuntu.com/ubuntu xenial/main amd64 ssl-cert all 1.0.37 [16.9 kB]\nGet:18 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 postfix amd64 3.1.0-3ubuntu0.3 [1152 kB]\nGet:19 http://archive.ubuntu.com/ubuntu xenial/main amd64 bsd-mailx amd64 8.1.2-0.20160123cvs-2 [63.7 kB]\nGet:20 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-common all 6.2u5-7.4 [156 kB]\nGet:21 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-client amd64 6.2u5-7.4 [3394 kB]\nGet:22 http://archive.ubuntu.com/ubuntu xenial/universe amd64 tcsh amd64 6.18.01-5 [410 kB]\nGet:23 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-exec amd64 6.2u5-7.4 [990 kB]\nGet:24 http://archive.ubuntu.com/ubuntu xenial/main amd64 ncurses-term all 6.0+20160213-1ubuntu1 [249 kB]\nGet:25 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-sftp-server amd64 1:7.2p2-4ubuntu2.8 [38.9 kB]\nGet:26 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-server amd64 1:7.2p2-4ubuntu2.8 [335 kB]\nGet:27 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-pkg-resources all 20.7.0-1 [79.0 kB]\nGet:28 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-chardet all 2.3.0-2 [96.2 kB]\nGet:29 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-six all 1.10.0-3 [11.0 kB]\nGet:30 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 python3-urllib3 all 1.13.1-2ubuntu0.16.04.3 [58.5 kB]\nGet:31 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 python3-requests all 2.9.1-3ubuntu0.1 [55.8 kB]\nGet:32 http://archive.ubuntu.com/ubuntu xenial/main amd64 ssh-import-id all 5.5-0ubuntu1 [10.2 kB]\nFetched 9633 kB in 2s (4496 kB/s)\nSelecting previously unselected package libatm1:amd64.\n(Reading database ...\n(Reading database ... 5%\n(Reading database ... 10%\n(Reading database ... 15%\n(Reading database ... 20%\n(Reading database ... 25%\n(Reading database ... 30%\n(Reading database ... 35%\n(Reading database ... 40%\n(Reading database ... 45%\n(Reading database ... 50%\n(Reading database ... 55%\n(Reading database ... 60%\n(Reading database ... 65%\n(Reading database ... 70%\n(Reading database ... 75%\n(Reading database ... 80%\n(Reading database ... 85%\n(Reading database ... 90%\n(Reading database ... 95%\n(Reading database ... 100%\n(Reading database ... 21398 files and directories currently installed.)\nPreparing to unpack .../libatm1_1%3a2.5.1-1.5_amd64.deb ...\nUnpacking libatm1:amd64 (1:2.5.1-1.5) ...\nSelecting previously unselected package libmnl0:amd64.\nPreparing to unpack .../libmnl0_1.0.3-5_amd64.deb ...\nUnpacking libmnl0:amd64 (1.0.3-5) ...\nSelecting previously unselected package liblockfile-bin.\nPreparing to unpack .../liblockfile-bin_1.09-6ubuntu1_amd64.deb ...\nUnpacking liblockfile-bin (1.09-6ubuntu1) ...\nSelecting previously unselected package liblockfile1:amd64.\nPreparing to unpack .../liblockfile1_1.09-6ubuntu1_amd64.deb ...\nUnpacking liblockfile1:amd64 (1.09-6ubuntu1) ...\nSelecting previously unselected package cpio.\nPreparing to unpack .../cpio_2.11+dfsg-5ubuntu1_amd64.deb ...\nUnpacking cpio (2.11+dfsg-5ubuntu1) ...\nSelecting previously unselected package iproute2.\nPreparing to unpack .../iproute2_4.3.0-1ubuntu3.16.04.5_amd64.deb ...\nUnpacking iproute2 (4.3.0-1ubuntu3.16.04.5) ...\nSelecting previously unselected package ifupdown.\nPreparing to unpack .../ifupdown_0.8.10ubuntu1.4_amd64.deb ...\nUnpacking ifupdown (0.8.10ubuntu1.4) ...\nSelecting previously unselected package libisc-export160.\nPreparing to unpack .../libisc-export160_1%3a9.10.3.dfsg.P4-8ubuntu1.15_amd64.deb ...\nUnpacking libisc-export160 (1:9.10.3.dfsg.P4-8ubuntu1.15) ...\nSelecting previously unselected package libdns-export162.\nPreparing to unpack .../libdns-export162_1%3a9.10.3.dfsg.P4-8ubuntu1.15_amd64.deb ...\nUnpacking libdns-export162 (1:9.10.3.dfsg.P4-8ubuntu1.15) ...\nSelecting previously unselected package isc-dhcp-client.\nPreparing to unpack .../isc-dhcp-client_4.3.3-5ubuntu12.10_amd64.deb ...\nUnpacking isc-dhcp-client (4.3.3-5ubuntu12.10) ...\nSelecting previously unselected package isc-dhcp-common.\nPreparing to unpack .../isc-dhcp-common_4.3.3-5ubuntu12.10_amd64.deb ...\nUnpacking isc-dhcp-common (4.3.3-5ubuntu12.10) ...\nSelecting previously unselected package libxtables11:amd64.\nPreparing to unpack .../libxtables11_1.6.0-2ubuntu3_amd64.deb ...\nUnpacking libxtables11:amd64 (1.6.0-2ubuntu3) ...\nSelecting previously unselected package netbase.\nPreparing to unpack .../archives/netbase_5.3_all.deb ...\nUnpacking netbase (5.3) ...\nSelecting previously unselected package libxmuu1:amd64.\nPreparing to unpack .../libxmuu1_2%3a1.1.2-2_amd64.deb ...\nUnpacking libxmuu1:amd64 (2:1.1.2-2) ...\nSelecting previously unselected package openssh-client.\nPreparing to unpack .../openssh-client_1%3a7.2p2-4ubuntu2.8_amd64.deb ...\nUnpacking openssh-client (1:7.2p2-4ubuntu2.8) ...\nSelecting previously unselected package xauth.\nPreparing to unpack .../xauth_1%3a1.0.9-1ubuntu2_amd64.deb ...\nUnpacking xauth (1:1.0.9-1ubuntu2) ...\nSelecting previously unselected package ssl-cert.\nPreparing to unpack .../ssl-cert_1.0.37_all.deb ...\nUnpacking ssl-cert (1.0.37) ...\nSelecting previously unselected package postfix.\nPreparing to unpack .../postfix_3.1.0-3ubuntu0.3_amd64.deb ...\nUnpacking postfix (3.1.0-3ubuntu0.3) ...\nSelecting previously unselected package bsd-mailx.\nPreparing to unpack .../bsd-mailx_8.1.2-0.20160123cvs-2_amd64.deb ...\nUnpacking bsd-mailx (8.1.2-0.20160123cvs-2) ...\nSelecting previously unselected package gridengine-common.\nPreparing to unpack .../gridengine-common_6.2u5-7.4_all.deb ...\nUnpacking gridengine-common (6.2u5-7.4) ...\nSelecting previously unselected package gridengine-client.\nPreparing to unpack .../gridengine-client_6.2u5-7.4_amd64.deb ...\nUnpacking gridengine-client (6.2u5-7.4) ...\nSelecting previously unselected package tcsh.\nPreparing to unpack .../tcsh_6.18.01-5_amd64.deb ...\nUnpacking tcsh (6.18.01-5) ...\nSelecting previously unselected package gridengine-exec.\nPreparing to unpack .../gridengine-exec_6.2u5-7.4_amd64.deb ...\nUnpacking gridengine-exec (6.2u5-7.4) ...\nSelecting previously unselected package ncurses-term.\nPreparing to unpack .../ncurses-term_6.0+20160213-1ubuntu1_all.deb ...\nUnpacking ncurses-term (6.0+20160213-1ubuntu1) ...\nSelecting previously unselected package openssh-sftp-server.\nPreparing to unpack .../openssh-sftp-server_1%3a7.2p2-4ubuntu2.8_amd64.deb ...\nUnpacking openssh-sftp-server (1:7.2p2-4ubuntu2.8) ...\nSelecting previously unselected package openssh-server.\nPreparing to unpack .../openssh-server_1%3a7.2p2-4ubuntu2.8_amd64.deb ...\nUnpacking openssh-server (1:7.2p2-4ubuntu2.8) ...\nSelecting previously unselected package python3-pkg-resources.\nPreparing to unpack .../python3-pkg-resources_20.7.0-1_all.deb ...\nUnpacking python3-pkg-resources (20.7.0-1) ...\nSelecting previously unselected package python3-chardet.\nPreparing to unpack .../python3-chardet_2.3.0-2_all.deb ...\nUnpacking python3-chardet (2.3.0-2) ...\nSelecting previously unselected package python3-six.\nPreparing to unpack .../python3-six_1.10.0-3_all.deb ...\nUnpacking python3-six (1.10.0-3) ...\nSelecting previously unselected package python3-urllib3.\nPreparing to unpack .../python3-urllib3_1.13.1-2ubuntu0.16.04.3_all.deb ...\nUnpacking python3-urllib3 (1.13.1-2ubuntu0.16.04.3) ...\nSelecting previously unselected package python3-requests.\nPreparing to unpack .../python3-requests_2.9.1-3ubuntu0.1_all.deb ...\nUnpacking python3-requests (2.9.1-3ubuntu0.1) ...\nSelecting previously unselected package ssh-import-id.\nPreparing to unpack .../ssh-import-id_5.5-0ubuntu1_all.deb ...\nUnpacking ssh-import-id (5.5-0ubuntu1) ...\nProcessing triggers for systemd (229-4ubuntu21.22) ...\nProcessing triggers for libc-bin (2.23-0ubuntu11) ...\nSetting up libatm1:amd64 (1:2.5.1-1.5) ...\nSetting up libmnl0:amd64 (1.0.3-5) ...\nSetting up liblockfile-bin (1.09-6ubuntu1) ...\nSetting up liblockfile1:amd64 (1.09-6ubuntu1) ...\nSetting up cpio (2.11+dfsg-5ubuntu1) ...\nupdate-alternatives: using /bin/mt-gnu to provide /bin/mt (mt) in auto mode\nSetting up iproute2 (4.3.0-1ubuntu3.16.04.5) ...\nSetting up ifupdown (0.8.10ubuntu1.4) ...\nCreating /etc/network/interfaces.\nSetting up libisc-export160 (1:9.10.3.dfsg.P4-8ubuntu1.15) ...\nSetting up libdns-export162 (1:9.10.3.dfsg.P4-8ubuntu1.15) ...\nSetting up isc-dhcp-client (4.3.3-5ubuntu12.10) ...\nSetting up isc-dhcp-common (4.3.3-5ubuntu12.10) ...\nSetting up libxtables11:amd64 (1.6.0-2ubuntu3) ...\nSetting up netbase (5.3) ...\nSetting up libxmuu1:amd64 (2:1.1.2-2) ...\nSetting up openssh-client (1:7.2p2-4ubuntu2.8) ...\nSetting up xauth (1:1.0.9-1ubuntu2) ...\nSetting up ssl-cert (1.0.37) ...\nSetting up postfix (3.1.0-3ubuntu0.3) ...\nCreating /etc/postfix/dynamicmaps.cf\nsetting myhostname: worker-0.XXX\nsetting alias maps\nsetting alias database\nchanging /etc/mailname to worker-0.XXX\nsetting myorigin\nsetting destinations: $myhostname, worker-0.XXX, localhost.XXX, , localhost\nsetting relayhost:\nsetting mynetworks: 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128\nsetting mailbox_size_limit: 0\nsetting recipient_delimiter: +\nsetting inet_interfaces: all\nsetting inet_protocols: all\n/etc/aliases does not exist, creating it.\nWARNING: /etc/aliases exists, but does not have a root alias.\n\nPostfix is now set up with a default configuration.  If you need to make\nchanges, edit\n/etc/postfix/main.cf (and others) as needed.  To view Postfix configuration\nvalues, see postconf(1).\n\nAfter modifying main.cf, be sure to run '/etc/init.d/postfix reload'.\n\nRunning newaliases\ninvoke-rc.d: could not determine current runlevel\ninvoke-rc.d: policy-rc.d denied execution of restart.\nSetting up bsd-mailx (8.1.2-0.20160123cvs-2) ...\nupdate-alternatives: using /usr/bin/bsd-mailx to provide /usr/bin/mailx (mailx) in auto mode\nSetting up gridengine-common (6.2u5-7.4) ...\n\nCreating config file /etc/default/gridengine with new version\nSetting up gridengine-client (6.2u5-7.4) ...\nSetting up tcsh (6.18.01-5) ...\nupdate-alternatives: using /bin/tcsh to provide /bin/csh (csh) in auto mode\nSetting up gridengine-exec (6.2u5-7.4) ...\ninvoke-rc.d: could not determine current runlevel\ninvoke-rc.d: policy-rc.d denied execution of start.\nSetting up ncurses-term (6.0+20160213-1ubuntu1) ...\nSetting up openssh-sftp-server (1:7.2p2-4ubuntu2.8) ...\nSetting up openssh-server (1:7.2p2-4ubuntu2.8) ...\nCreating SSH2 RSA key; this may take some time ...\n2048 SHA256:ok/TxzwtF5W8I55sDxrt4Agy4fuWn39BiSovvDObhVE root@worker-0.XXX (RSA)\nCreating SSH2 DSA key; this may take some time ...\n1024 SHA256:4y48kVYt3mS3q1KgZzEoYMnS/2d/tA8TJUK5uNSaxZY root@worker-0.XXX (DSA)\nCreating SSH2 ECDSA key; this may take some time ...\n256 SHA256:4D7zm4cD2IbDnHoXnzcIo3FISbvOW8eOstGBNf1/bvo root@worker-0.XXX (ECDSA)\nCreating SSH2 ED25519 key; this may take some time ...\n256 SHA256:/HrA3xiZiH5CZkXwtcfE6GwcMM+hEhZzTdFHxj4PzDg root@worker-0.XXX (ED25519)\ninvoke-rc.d: could not determine current runlevel\ninvoke-rc.d: policy-rc.d denied execution of start.\nSetting up python3-pkg-resources (20.7.0-1) ...\nSetting up python3-chardet (2.3.0-2) ...\nSetting up python3-six (1.10.0-3) ...\nSetting up python3-urllib3 (1.13.1-2ubuntu0.16.04.3) ...\nSetting up python3-requests (2.9.1-3ubuntu0.1) ...\nSetting up ssh-import-id (5.5-0ubuntu1) ...\nProcessing triggers for libc-bin (2.23-0ubuntu11) ...\nProcessing triggers for systemd (229-4ubuntu21.22) ...\nReading package lists...\nBuilding dependency tree...\nReading state information...\n0 upgraded, 0 newly installed, 0 to remove and 30 not upgraded.\n")),Object(u.b)("p",null,"cat $SGE_CFG_PATH/setcfg.log"),Object(u.b)("pre",null,Object(u.b)("code",{parentName:"pre"},"please wait\nStart SGE for worker is finished\ndone for worker-0.XXX worker.\n")),Object(u.b)("p",null,"Sample output of sge:\n",Object(u.b)("img",{alt:"alt text",src:t(211).default,title:"SGE for multiple jobs"})),Object(u.b)("p",null,Object(u.b)("img",{alt:"alt text",src:t(212).default,title:"SGE for user multiple jobs"})))}p.isMDXComponent=!0}}]);