安裝第三方K8S管理平臺wayne

#下載鏡像
docker pull mysql
docker pull 360cloud/wayne-backend
docker pull 360cloud/wayne-frontend
#創建工作目錄
mkdir -p /home/wayne/data
mkdir -p /home/wayne/logs
mkdir -p /home/wayne/conf
#上傳配置文件,配置文件見附件
#修改配置文件config.js
#將裏面的youip改成本機的Ip地址即可。
#添加網絡段
docker network create wayne
#啓動Mysql:
docker run -d -p 3306:3306 --name mysql --restart=always \
--network wayne -e MYSQL_ROOT_PASSWORD=root \
-v $PWD/data:/var/lib/mysql \
-v $PWD/logs:/logs \
mysql
#啓動後臺:
docker run -d -p 8080:8080 --name wayne-backend --restart=always \
--network wayne -e GOPATH="/go" \
-v $PWD/conf/app.conf:/opt/wayne/conf/app.conf \
-v /etc/hosts:/etc/hosts \
360cloud/wayne-backend /opt/wayne/backend
#啓動前臺:
docker run -d -p 4200:80 --name wayne-frontend --restart=always \
--network wayne \
-v $PWD/conf/config.js:/usr/local/openresty/nginx/html/config.js \
-v /etc/hosts:/etc/hosts \
360cloud/wayne-frontend

最後,登錄wayne,連接K8s即可

http://localhost:4200,默認用戶密碼admin:admin

如何關聯K8S集羣?

1、修改/etc/hosts,添加K8S集羣的域名地址解析

echo 10.41.XX.XX apiserver.cluster.local >> /etc/hosts

2、重啓wayne-frontend與wayne-backend容器

docker restart wayne-frontend
docker restart wayne-backend

3、獲取K8S的配置信息

kubectl config view #這裏看不到具體的證書數據
cat /root/.kube/config #這裏可以看到所有信息
#有的配置可能在/etc/kubernetes/kubelet.*裏面,具體可視情況而定。

進入wayne,進入後臺-集羣-關聯集羣,將以上獲取到的信息配置到wayne的系統裏,關聯K8S。

完成!

配置文件附件

conf/app.conf

appname = wayne
httpport = 8080
runmode = prod
autorender = false
copyrequestbody = true
EnableDocs = true
EnableAdmin = true
StaticDir = public:static

# Custom config
ShowSql = false

## if enable username and password login
EnableDBLogin = true

# token, generate jwt token
RsaPrivateKey = "./apikey/rsa-private.pem"
RsaPublicKey = "./apikey/rsa-public.pem"

# token end time. second
TokenLifeTime=86400

# kubernetes labels config
AppLabelKey= wayne-app
NamespaceLabelKey = wayne-ns
PodAnnotationControllerKindLabelKey = wayne.cloud/controller-kind

# database configuration:
## mysql
DBName = "wayne"
DBTns = "tcp(mysql:3306)"
DBUser = "root"
DBPasswd = "root"
DBLoc = "Asia%2FShanghai"
DBConnTTL = 30

# web shell auth
appKey = "860af247a91a19b2368d6425797921c6"

# Set demo namespace and group id
DemoGroupId = "1"
DemoNamespaceId = "1"

# Sentry
LogLevel = "4"
SentryEnable = false
SentryDSN = ""
SentryLogLevel = "4"

# Robin
EnableRobin = false

# api-keys
EnableApiKeys = true

# Bus
EnableWebhook = true
BusEnable = true

# Webhook
EnableWebhook = true
WebhookClientTimeout = 10
WebhookClientWindowSize = 16

# other
# Use Canary/Production Update
# If set app metaData {"mode":"beta"},the app will auto redirect to BetaUrl
BetaUrl = ""
AppUrl = ""

# oauth2
[auth.oauth2]
enabled = false
redirect_url = "https://www.wayne.cloud"
client_id = client
client_secret = secret
auth_url = https://example.com/oauth2/v1/authorize
token_url = https://example.com/oauth2/v1/token
api_url = https://example.com/oauth2/v1/userinfo
# If your OAuth 2.0-based authorization service does not have email, name, and dispaly fields, use mapping criteria.
api_mapping = name:name,email:email,display:display

# ldap config
# enable ldap login
[auth.ldap]
enabled = false
ldap_url = ldap://127.0.0.1
ldap_search_dn = "cn=admin,dc=example,dc=com"
ldap_search_password = admin
ldap_base_dn = "dc=example,dc=com"
ldap_filter =
ldap_uid = cn
ldap_scope = 2
ldap_connection_timeout = 30

config.js

window.CONFIG = {
    URL: 'http://當前IP:8080',
    RAVEN: false,
    RAVEN_DSN: 'RAVEN_DSN'
};
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章