Skip to content

antony@notes:~/misc$ cat "Google.md"

Google

2024-04-19· misc

陳老師 GKE 課程教學筆記

  1. 今天我們為何要先學 GCP? 答: 因為要來 Run Google Kubernetes Engine (GKE)

Google Cloud Platform

  1. GCP 只能 Run GKE 嗎? 答: GCP 還有提供很多服務,譬如還有 BigQuery (一種資料分析的工具)、Google Cloud Storage (會提供儲存空間讓你存資料)、Compute Engine (在 Google Cloud 上建立、啟動和管理虛擬機)…等

Cloud Identity

Cloud Identity 是 Google Cloud Platform (GCP) 提供的一項服務,提供統一的方式來集中管理與建立使用者、多重身份驗證、設備管理…等

Cloud Identity 還有 Single Sign-On(SSO) 的特性,可以提供單一的登入入口,登入後就可以使用各種 Google 提供的服務。

GKE

透過 kubectl 跟 Api Server 溝通 Control manager 會負責讓 application run 的長長久久穩穩當當 看不到也無法控制 Control plane

Command

dig 命令不會根據 /etc/resolv.conf 裡面的 Search Domain 去查詢。

cat wulin/wkload/usdt/job-dtp-bucket.yaml 
apiVersion: batch/v1
kind: Job
metadata:
  name: job-dtp-bucket
  namespace: kube-system
spec:
  # If the field is set to 0, the Job will be eligible to be automatically deleted immediately after it finishes.
  ttlSecondsAfterFinished: 10
  template:
    metadata:
      name: job-dtp-bucket
    spec:
      containers:
      - name: job-dtp-bucket
        # 以下 Image 有安裝 mc 命令
        image: quay.io/cloudwalker/alp.base:24.01
        tty: true
        command: ["sh", "-c"]
        args:
        - |
          mc config host add mios http://miniosnsd.kube-system:9000 minio minio123
          [ "$?" != "0" ] && echo "MinIO not exist" && exit 1

          wget https://dlcdn.apache.org/hadoop/common/hadoop-3.4.0/hadoop-3.4.0.tar.gz -O /tmp/hadoop-3.4.0.tar.gz
          cd /tmp && tar xvfz hadoop-3.4.0.tar.gz

          wget https://dlcdn.apache.org/hive/hive-4.0.0/apache-hive-4.0.0-bin.tar.gz -O /tmp/apache-hive-4.0.0-bin.tar.gz
          cd /tmp && tar xvfz apache-hive-4.0.0-bin.tar.gz

          wget https://dlcdn.apache.org/hive/hive-3.1.3/apache-hive-3.1.3-bin.tar.gz -O /tmp/apache-hive-3.1.3-bin.tar.gz
          cd /tmp && tar xvfz apache-hive-3.1.3-bin.tar.gz

          shpass -p 'bigred' scp -P 22100 bigred@kube-kadm.kube-system:wulin/wkload/usdt/conf/hdp3.4/* /tmp/hadoop-3.4.0/etc/hadoop/
          shpass -p 'bigred' scp -P 22100 bigred@kube-kadm.kube-system:wulin/wkload/usdt/bin/* /tmp/hadoop-3.4.0/bin/
          shpass -p 'bigred' scp -P 22100 bigred@kube-kadm.kube-system:~/wulin/wkload/usdt/conf/hive4.0/* /tmp/apache-hive-4.0.0-bin/conf/
          shpass -p 'bigred' scp -P 22100 bigred@kube-kadm.kube-system:~/wulin/wkload/usdt/conf/hive3.1.3/* /tmp/apache-hive-3.1.3-bin/conf/

          mc rm -r --force mios/dtp/ && mc rb mios/dtp 
          mc mb mios/dtp

          mc mb mios/dtp/hdp3.4 
          mc cp -r /tmp/hadoop-3.4.0/* mios/dtp/hdp3.4 

          mc mb mios/dtp/hive4.0 
          mc cp -r /tmp/apache-hive-4.0.0-bin/* mios/dtp/hive4.0 

          mc mb mios/dtp/hive3.1.3 
          mc cp -r /tmp/apache-hive-3.1.3-bin/* mios/dtp/hive3.1.3

      restartPolicy: Never
cat wulin/wkload/usdt/pod-dtm1.yaml 
apiVersion: v1
kind: Pod
metadata:
  name: dtm1
  namespace: kube-system
  labels:
    app: hdp
spec:
  hostname: dtm1
  subdomain: hdp 
  dnsPolicy: None
  dnsConfig:
    nameservers:
      - 10.98.0.10
    searches:
      - hdp.kube-system.svc.k1.org
      - kube-system.svc.k1.org
      - svc.k1.org
  volumes:
  - name: nn
    hostPath:
      path: /var/dtm1-nn
  - name: sn
    hostPath:
      path: /var/dtm1-sn
  - name: hdpsys
    hostPath:
      path: /home/hdpsys
#    emptyDir: {}
  initContainers:
  - name: volume-permissions
    image: quay.io/cloudwalker/us.dt:24.01
    command: 
    - /bin/sh
    - -c
    - |
      chmod -R 755 /home/bigred/nn && chown 1000:1000 /home/bigred/nn
      chmod -R 755 /home/bigred/sn && chown 1000:1000 /home/bigred/sn
    volumeMounts:
    - name: nn
      mountPath: /home/bigred/nn
    - name: sn
      mountPath: /home/bigred/sn
  containers:
  - name: dtm1
    image: quay.io/cloudwalker/us.dt:24.01
    imagePullPolicy: Always
    tty: true 
    securityContext:
      privileged: true
    volumeMounts:
    - name: nn
      mountPath: /home/bigred/nn
    - name: sn
      mountPath: /home/bigred/sn
    - name: hdpsys
      mountPath: /opt/dtp
      mountPropagation: Bidirectional
  - name: s3fs
    image: quay.io/cloudwalker/alp.s3fs:24.01
    imagePullPolicy: Always
    securityContext:
      privileged: true
    volumeMounts:
    - name: hdpsys
      mountPath: /s3
      mountPropagation: Bidirectional   
    env:
    - name: USER
      value: minio
    - name: PASSWORD
      value: minio123
    - name: URL
      value: http://miniosnsd.kube-system:9000
    - name: BUCKET
      value: dtp
    - name: EXTARG
      value: "-o uid=1000 -o gid=1000 -o umask=000"
    - name: DEBUG
      value: "-o dbglevel=info -o curldbg -f"
---