【问题标题】:How to install Hasura Platform on custom VPS?如何在自定义 VPS 上安装 Hasura 平台?
【发布时间】:2019-02-27 15:12:19
【问题描述】:

我想为小型项目尝试 Hasura 平台。 我对服务器的地理位置有限制,所以不适合Digital Ocean。

【问题讨论】:

    标签: kubernetes vps hasura


    【解决方案1】:

    您可以使用 kubeadm 在 VPS(比如运行 Ubuntu)上安装 Kubernetes,然后按照指南 here 在该 Kubernetes 集群上设置 Hasura。

    custom-cluster.yaml 示例可能如下所示:

    name: '<cluster-name>'
    alias: '<cluster-alias>'
    kubeContext: '<kube-context>'
    config:
      namespace: hasura
      configmap: controller-conf
    infra:
      provider: custom
    metadata:
      namespaces:
        hasura: hasura
        user: default
      gateway:
        ports:
        - name: http
          port: 80
          protocol: TCP
          targetPort: 80
        - name: https
          port: 443
          protocol: TCP
          targetPort: 443
        - name: ssh
          port: 2022
          protocol: TCP
          targetPort: 22
        selector:
          app: gateway
        externalIPs: ["<your-vps-public-ip>"]
      postgres:
        volume:
          hostPath:
            path: '/data/hasura-data'
          name: postgres-pv
      filestore:
        volume:
          hostPath:
            path: '/data/hasura-data'
          name: filestore-pv
      sessionStore:
        volume:
          hostPath:
            path: '/data/hasura-data'
          name: redis-pv
    

    【讨论】:

      【解决方案2】:

      @Shahidh 答案的实现

      到 VPS 1 核、2 Gb、Ubuntu 16.04 x86_64

      discussion on Discord

      VPS:

      ssh root@<your-vps-public-ip>
      

      安装 Docker:

      apt-get update && apt-get install -qy docker.io
      

      安装 Kubernetes (在 v1.10 上测试过)

      apt-get update && apt-get install -y apt-transport-https curl
      
      curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
      
      cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
      deb https://apt.kubernetes.io/ kubernetes-xenial main
      EOF
      
      apt-get update
      apt-get install -qy kubelet=1.10.11-00 kubeadm=1.10.11-00 kubectl=1.10.11-00
      apt-mark hold kubelet kubeadm kubectl
      
      kubeadm init --pod-network-cidr=10.244.0.0/16 \
      --apiserver-advertise-address=<your-vps-public-ip> \
      --kubernetes-version=1.10.11
      
      export KUBECONFIG=/etc/kubernetes/admin.conf
      
      kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/bc79dd1505b0c8681ece4de4c0d86c5cd2643275/Documentation/kube-flannel.yml
      
      kubectl taint nodes --all node-role.kubernetes.io/master-
      
      mkdir -p /data/hasura-data
      

      查看:kubectl get all --namespace=kube-system

      在本地机器上:

       mkdir ~/k8s/
       scp root@<you-vps-public-ip>:/etc/kubernetes/admin.conf ~/k8s/
      

      设置 Kubernetes 上下文:

       export KUBECONFIG=~/k8s/admin.conf
      

      检查:

      kubectl get nodes
      

      为 custom-cluster.yaml 获取 &lt;kube-context&gt;

       kubectl config current-context
      

      安装 hasura 集群:

       cd <project-directory>
       hasura cluster install \
       --file custom-cluster.yaml \
       --domain=<your-vps-public-ip>.xip.io
      

      将集群添加到项目中:

      hasura cluster add --file custom-cluster.yaml
      

      【讨论】:

      • hasura cluster install 给出以下错误“安装 Hasura failed error=[1024] key 'hasuraID' not found in config.json”,知道吗?谢谢!
      • @Diego 先致电hasura login
      • 别忘了应用配置:hasura platform:conf apply
      猜你喜欢
      • 2013-05-27
      • 2012-08-05
      • 1970-01-01
      • 2017-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多