Commit 1eea295c authored by Jason Song's avatar Jason Song Committed by GitHub

Merge pull request #2115 from nobodyiam/verify-k8s

simplify k8s deployment
parents f0d0a48a 9eb9b7e8
...@@ -18,6 +18,8 @@ apollo-configservice-1.0.0-github.zip <br/> ...@@ -18,6 +18,8 @@ apollo-configservice-1.0.0-github.zip <br/>
获取 apollo-configservice-1.0.0.jar, 重命名为 apollo-configservice.jar, 放到 scripts/apollo-on-kubernetes/apollo-config-server 获取 apollo-configservice-1.0.0.jar, 重命名为 apollo-configservice.jar, 放到 scripts/apollo-on-kubernetes/apollo-config-server
### 1.3 build image ### 1.3 build image
需要分别为alpine-bash-3.8-image,apollo-config-server,apollo-admin-server和apollo-portal-server构建镜像。
以 build apollo-config-server image 为例, 其他类似 以 build apollo-config-server image 为例, 其他类似
```bash ```bash
...@@ -61,7 +63,7 @@ MySQL 部署步骤略 ...@@ -61,7 +63,7 @@ MySQL 部署步骤略
示例假设你有 4 台 kubernetes node 来部署 apollo, apollo 开启了 4 个环境, 即 dev、test-alpha、test-beta、prod 示例假设你有 4 台 kubernetes node 来部署 apollo, apollo 开启了 4 个环境, 即 dev、test-alpha、test-beta、prod
按照 scripts/apollo-on-kubernetes/kubernetes/kubectl-apply.sh 文件的内容部署 apollo 即可 按照 scripts/apollo-on-kubernetes/kubernetes/kubectl-apply.sh 文件的内容部署 apollo 即可,注意需要按照实际情况修改对应配置文件中的数据库连接信息、eureka.service.url、replicas、nodeSelector、镜像信息等。
```bash ```bash
scripts/apollo-on-kubernetes/kubernetes$ cat kubectl-apply.sh scripts/apollo-on-kubernetes/kubernetes$ cat kubectl-apply.sh
...@@ -69,24 +71,24 @@ scripts/apollo-on-kubernetes/kubernetes$ cat kubectl-apply.sh ...@@ -69,24 +71,24 @@ scripts/apollo-on-kubernetes/kubernetes$ cat kubectl-apply.sh
kubectl create namespace sre kubectl create namespace sre
# dev-env # dev-env
kubectl apply -f service-mysql-for-apollo-dev-env.yaml --record && \ kubectl apply -f apollo-env-dev/service-mysql-for-apollo-dev-env.yaml --record && \
kubectl apply -f service-apollo-config-server-dev.yaml --record && \ kubectl apply -f apollo-env-dev/service-apollo-config-server-dev.yaml --record && \
kubectl apply -f service-apollo-admin-server-dev.yaml --record kubectl apply -f apollo-env-dev/service-apollo-admin-server-dev.yaml --record
# fat-env(test-alpha-env) # fat-env(test-alpha-env)
kubectl apply -f service-mysql-for-apollo-test-alpha-env.yaml --record && \ kubectl apply -f apollo-env-test-alpha/service-mysql-for-apollo-test-alpha-env.yaml --record && \
kubectl apply -f service-apollo-config-server-test-alpha.yaml --record && \ kubectl apply -f apollo-env-test-alpha/service-apollo-config-server-test-alpha.yaml --record && \
kubectl apply -f service-apollo-admin-server-test-alpha.yaml --record kubectl apply -f apollo-env-test-alpha/service-apollo-admin-server-test-alpha.yaml --record
# uat-env(test-beta-env) # uat-env(test-beta-env)
kubectl apply -f service-mysql-for-apollo-test-beta-env.yaml --record && \ kubectl apply -f apollo-env-test-beta/service-mysql-for-apollo-test-beta-env.yaml --record && \
kubectl apply -f service-apollo-config-server-test-beta.yaml --record && \ kubectl apply -f apollo-env-test-beta/service-apollo-config-server-test-beta.yaml --record && \
kubectl apply -f service-apollo-admin-server-test-beta.yaml --record kubectl apply -f apollo-env-test-beta/service-apollo-admin-server-test-beta.yaml --record
# prod-env # prod-env
kubectl apply -f service-mysql-for-apollo-prod-env.yaml --record && \ kubectl apply -f apollo-env-prod/service-mysql-for-apollo-prod-env.yaml --record && \
kubectl apply -f service-apollo-config-server-prod.yaml --record && \ kubectl apply -f apollo-env-prod/service-apollo-config-server-prod.yaml --record && \
kubectl apply -f service-apollo-admin-server-prod.yaml --record kubectl apply -f apollo-env-prod/service-apollo-admin-server-prod.yaml --record
# portal # portal
kubectl apply -f service-apollo-portal-server.yaml --record kubectl apply -f service-apollo-portal-server.yaml --record
......
...@@ -18,7 +18,6 @@ ADD . /apollo-admin-server/ ...@@ -18,7 +18,6 @@ ADD . /apollo-admin-server/
ENV APOLLO_ADMIN_SERVICE_NAME="service-apollo-admin-server.sre" ENV APOLLO_ADMIN_SERVICE_NAME="service-apollo-admin-server.sre"
EXPOSE 8090 EXPOSE 8090
CMD ["/apollo-admin-server/scripts/startup-kubernetes.sh"] CMD ["/apollo-admin-server/scripts/startup-kubernetes.sh"]
#!/bin/sh
set -e
# admin-server config
admin_server_config=/apollo-admin-server/config/application-github.properties
cp ${admin_server_config} ${admin_server_config}.cp
sed -i -E "s#DATASOURCES_URL#${DATASOURCES_URL}#g" ${admin_server_config}.cp
sed -i -E "s#DATASOURCES_USERNAME#${DATASOURCES_USERNAME}#g" ${admin_server_config}.cp
sed -i -E "s#DATASOURCES_PASSWORD#${DATASOURCES_PASSWORD}#g" ${admin_server_config}.cp
cat ${admin_server_config}.cp > ${admin_server_config}
rm -rf ${admin_server_config}.cp
exec "$@"
...@@ -18,8 +18,6 @@ ADD . /apollo-config-server/ ...@@ -18,8 +18,6 @@ ADD . /apollo-config-server/
ENV APOLLO_CONFIG_SERVICE_NAME="service-apollo-config-server.sre" ENV APOLLO_CONFIG_SERVICE_NAME="service-apollo-config-server.sre"
EXPOSE 8080 EXPOSE 8080
CMD ["/apollo-config-server/scripts/startup-kubernetes.sh"] CMD ["/apollo-config-server/scripts/startup-kubernetes.sh"]
#!/bin/sh
set -e
# config-server config
config_server_config=/apollo-config-server/config/application-github.properties
cp ${config_server_config} ${config_server_config}.cp
sed -i -E "s#DATASOURCES_URL#${DATASOURCES_URL}#g" ${config_server_config}.cp
sed -i -E "s#DATASOURCES_USERNAME#${DATASOURCES_USERNAME}#g" ${config_server_config}.cp
sed -i -E "s#DATASOURCES_PASSWORD#${DATASOURCES_PASSWORD}#g" ${config_server_config}.cp
cat ${config_server_config}.cp > ${config_server_config}
rm -rf ${config_server_config}.cp
exec "$@"
...@@ -18,13 +18,6 @@ ADD . /apollo-portal-server/ ...@@ -18,13 +18,6 @@ ADD . /apollo-portal-server/
ENV APOLLO_PORTAL_SERVICE_NAME="service-apollo-portal-server.sre" ENV APOLLO_PORTAL_SERVICE_NAME="service-apollo-portal-server.sre"
ENV DEV_META_SERVICE_NAME="service-apollo-config-server-dev.sre"
ENV TEST_ALPHA_META_SERVICE_NAME="service-apollo-config-server-test-alpha.sre"
ENV TEST_BETA_META_SERVICE_NAME="service-apollo-config-server-test-beta.sre"
ENV PROD_META_SERVICE_NAME="service-apollo-config-server-prod.sre"
EXPOSE 8070 EXPOSE 8070
CMD ["/apollo-portal-server/scripts/startup-kubernetes.sh"] CMD ["/apollo-portal-server/scripts/startup-kubernetes.sh"]
#!/bin/sh
set -e
# portal-server config
portal_server_config=/apollo-portal-server/config/application-github.properties
cp ${portal_server_config} ${portal_server_config}.cp
sed -i -E "s#DATASOURCES_URL#${DATASOURCES_URL}#g" ${portal_server_config}.cp
sed -i -E "s#DATASOURCES_USERNAME#${DATASOURCES_USERNAME}#g" ${portal_server_config}.cp
sed -i -E "s#DATASOURCES_PASSWORD#${DATASOURCES_PASSWORD}#g" ${portal_server_config}.cp
cat ${portal_server_config}.cp > ${portal_server_config}
rm -rf ${portal_server_config}.cp
# meta-server config
meta_server_config=/apollo-portal-server/config/apollo-env.properties
cp ${meta_server_config} ${meta_server_config}.cp
sed -i -E "s#DEV_META_SERVICE_NAME#${DEV_META_SERVICE_NAME}#g" ${meta_server_config}.cp
sed -i -E "s#TEST_ALPHA_META_SERVICE_NAME#${TEST_ALPHA_META_SERVICE_NAME}#g" ${meta_server_config}.cp
sed -i -E "s#TEST_BETA_META_SERVICE_NAME#${TEST_BETA_META_SERVICE_NAME}#g" ${meta_server_config}.cp
sed -i -E "s#PROD_META_SERVICE_NAME#${PROD_META_SERVICE_NAME}#g" ${meta_server_config}.cp
cat ${meta_server_config}.cp > ${meta_server_config}
rm -rf ${meta_server_config}.cp
exec "$@"
...@@ -24,19 +24,6 @@ metadata: ...@@ -24,19 +24,6 @@ metadata:
subsets: subsets:
- addresses: - addresses:
# 更改为你的 mysql addresses, 例如 1.1.1.1 # 更改为你的 mysql addresses, 例如 1.1.1.1
# 其中 1.1.1.1、2.2.2.2、3.3.3.3 为你的 mysql 集群, 例如 MySQL-Galera-WSrep 或 TiDB
- ip: your-mysql-addresses
ports:
- protocol: TCP
port: 3306
- addresses:
# 更改为你的 mysql addresses, 例如 2.2.2.2
- ip: your-mysql-addresses
ports:
- protocol: TCP
port: 3306
- addresses:
# 更改为你的 mysql addresses, 例如 3.3.3.3
- ip: your-mysql-addresses - ip: your-mysql-addresses
ports: ports:
- protocol: TCP - protocol: TCP
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment