在Google Cloud Platform的K8上运行Fn函数
最近,我在Functions和Project Fn中玩了很多游戲。 最終,我不得不離開筆記本電腦上的操場,進(jìn)入真正的野生世界。 在K8s集群上運(yùn)行Fn的想法對(duì)我來說很有吸引力,因此我決定在Prem或云中的某個(gè)地方進(jìn)行操作。 在對(duì)如何在裸機(jī)上自行安裝和配置K8s集群進(jìn)行了一些研究之后,我得出的結(jié)論是我對(duì)此太懶了。 因此,我飛到了云端。
在本文中,我將展示如何在Google Cloud Platform托管的Kubernetes集群上運(yùn)行Fn。 為什么選擇Google? K8s服務(wù)還有很多其他云提供商。
事實(shí)是,Google 確實(shí)在云中擁有Kubernetes集群,每個(gè)人都可以使用。 他們會(huì)立即為您提供服務(wù),而無需申請(qǐng)預(yù)覽模式訪問權(quán)限(也就是我們?cè)谡业竭m合您的功能后會(huì)與您聯(lián)系),解釋您為什么需要它,檢查背景,信用記錄等。因此,谷歌。
在完成所有手續(xù)并最終可以使用Google Kubernetes Engine之后 ,轉(zhuǎn)到“ 快速入門”頁面并按照說明安裝Google Cloud SDK。
如果您的計(jì)算機(jī)上未安裝kubectl ,則可以使用gcloud進(jìn)行安裝:
gcloud components install kubectl按照Kubernetes Engine快速入門上的說明,通過調(diào)用以下命令來配置gcloud并創(chuàng)建K8s集群:
gcloud container clusters create fncluster gcloud container clusters get-credentials fncluster用kubectl檢查結(jié)果:
kubectl cluster-info這將為您提供集群中K8s服務(wù)及其URL的列表。
好的,這就是我們的出發(fā)點(diǎn)。 一方面,我們?cè)谠浦杏辛艘粋€(gè)新的K8s集群,另一方面是Fn項(xiàng)目。 讓他們結(jié)婚吧。
我們需要安裝一個(gè)工具來管理Kubernetes軟件包(圖表)。 類似于Linux上的apt / yum / dnf / pkg。 工具是Helm 。 由于我是Mac用戶,所以我做到了:
brew install kubernetes-helm其余的Helm安裝選項(xiàng)可在此處獲得 。
下一步是在K8s集群中安裝Tiller。 這是Helm的服務(wù)器部分:
kubectl create serviceaccount --namespace kube-system tiller kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller helm init --service-account tiller --upgradehelm repo update如果未在本地安裝Fn,則需要安裝它,以便在計(jì)算機(jī)上(在Mac或Linux上)具有Fn CLI:
curl -LSs https: //raw .githubusercontent.com /fnproject/cli/master/install> setup.shchmod u+x setup.shsudo ./setup.sh在帶有Helm的K8s集群上安裝Fn(假設(shè)您確實(shí)有g(shù)it client):
git clone git@github.com:fnproject/fn-helm.git && cd fn-helm helm dep build fnhelm install --name fn-release fn等待(幾分鐘),直到Google Kubernetes Engine將外部IP分配給集群中的Fn API。 檢查:
kubectl get svc --namespace default -w fn-release-fn-api配置本地Fn客戶端以訪問在K8s集群上運(yùn)行的Fn
export FN_API_URL=http://$(kubectl get svc --namespace default fn-release-fn-api -o jsonpath='{.status.loadBalancer.ingress[0].ip}'):80基本上完成了。 讓我們檢查一下:
fn apps create adfbuilderapp fn apps list現(xiàn)在,我們可以使用Fn函數(shù)構(gòu)建ADF應(yīng)用程序,如我以前的文章中所述 。 僅這次,該功能將運(yùn)行,因此構(gòu)建作業(yè)將在云中較高的位置執(zhí)行。
而已!
翻譯自: https://www.javacodegeeks.com/2018/03/run-fn-functions-on-k8s-on-google-cloud-platform.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的在Google Cloud Platform的K8上运行Fn函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小米路由器连不上网怎么解决
- 下一篇: 华为手机有通话录音功能吗