Kubernetes Deployment
This article describes how to deploy a Linkis service in a Kind Kubernetes environment for easier learning and debugging.
kind github:<https://github.com/kubernetes-sigs/kind> kind web site:kind.sigs.k8s.io/
- kind 0.14.0
- docker 20.10.17
- centos 7.6
- helm 3.x
-
- Ensure that the component depends on the version
-
- kind means that the machine simulating node with docker container is restarted and the container has changed and the scheduler is not working anymore. This is a kind limitation and there is a detailed explanation in the official document.
1. sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2. sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3. sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
4. sudo yum makecache fast
5. sudo yum -y install docker-ce
6. systemctl start docker
7. systemctl enable docker
1. vi /etc/docker/daemon.json
2. {
3. "registry-mirrors": ["http://hub-mirror.c.163.com"],
4. "insecure-registries": ["https://registry.mydomain.com","http://hub-mirror.c.163.com"]
5. }
1. https://github.com/kubernetes-sigs/kind/releases
1. chmod +x ./kind
2. mv kind-linux-amd64 /usr/bin/kind
1. apache-linkis-1.3.0-incubating-bin.tar.gz
1. mkdir -p /opt/data/common/extendlib
1. curl https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.28/mysql-connector-java-8.0.28.jar -o /opt/data/common/extendlib/[mysql-connector-java-8.0.28.jar](https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.28/mysql-connector-java-8.0.28.jar)
1. ./bin/install-linkis-to-kubernetes.sh reset
1. ./bin/install-linkis-to-kubernetes.sh pull -mghcr.dockerproxy.com
1. ./bin/install-linkis-to-kubernetes.sh install -l -mghcr.dockerproxy.com
1. kubectl get pods -A

1. ./helm/scripts/prepare-for-spark.sh
1. ./helm/scripts/remote-proxy.sh start
1. linkis-web: http://10.0.2.101:8088/
2. eureka: http://10.0.2.101:20303/
1. ./helm/scripts/login-pod.sh cg-engineconnmanager
2. Executing shell tests
3. sh ./bin/linkis-cli -engineType shell-1 -codeType shell -code "echo "hello" " -submitUser hadoop -proxyUser hadoop
4. Executing hive Tests
5. sh ./bin/linkis-cli -engineType hive-2.3.3 -codeType hql -code "show tables" -submitUser hadoop -proxyUser hadoop
6. Executing spark Tests
7. sh ./bin/linkis-cli -engineType spark-2.4.3 -codeType sql -code "show tables" -submitUser hadoop -proxyUser hadoop
8. Executing python Tests
9. sh ./bin/linkis-cli -engineType python-python2 -codeType python -code "print(\"hello\")" -submitUser hadoop -proxyUser hadoop -confMap python.version=python

