Skip to content

Instantly share code, notes, and snippets.

View harryge00's full-sized avatar

Haoyuan Ge harryge00

  • Ant Financial
  • Hangzhou
View GitHub Profile
@harryge00
harryge00 / debian-serviceEntry.yaml
Created November 22, 2018 07:32
Istio rule to allow apt-get update/install in debian
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
name: debian-archive-ext
spec:
hosts:
- deb.debian.org
- security.debian.org
ports:
- number: 80
@harryge00
harryge00 / Mesos-Note.md
Last active November 29, 2018 07:54
DCOS HowTo

How to ssh to dcos public/private node(agent) without password:

dcos node ssh --master-proxy --mesos-id=

Access multiple services through Marathon-LB

First, view public-agent-ip:9090/haproxy?stats. You can see ports of backend services, like:

zipkin_10101
restapi_10102

Then, visit public-agent-ip:10101 for zipkin, public-agent-ip:10102 for restapi.

@harryge00
harryge00 / mesos-cni.md
Last active December 7, 2018 06:55
Integrate CNI with Mesos

libexec and cni-plugin is needed Define mesos-agent

@harryge00
harryge00 / kubeconfig
Last active December 28, 2018 03:24
kubeconfig
apiVersion: v1
clusters:
- cluster:
server: http://apiserver.marathon.slave.mesos:30080
name: kubernetes
contexts:
- context:
cluster: kubernetes
user: kubernetes-admin
name: kubernetes
@harryge00
harryge00 / mesos-agent config
Last active June 28, 2019 13:33
mesos-agent config
MESOS_CGROUPS_ENABLE_CFS=true
MESOS_CGROUPS_LIMIT_SWAP=false
MESOS_CONTAINERIZERS=docker,mesos
MESOS_CONTAINER_LOGGER=com_mesosphere_mesos_JournaldLogger
MESOS_DEFAULT_CONTAINER_DNS=file:///opt/mesosphere/etc/mesos-slave-dns.json
MESOS_DISALLOW_SHARING_AGENT_PID_NAMESPACE=true
MESOS_DOCKER_REMOVE_DELAY=1hrs
MESOS_DOCKER_STOP_TIMEOUT=20secs
MESOS_DOCKER_STORE_DIR=/var/lib/mesos/slave/store/docker
MESOS_DOCKER_VOLUME_CHECKPOINT_DIR=/var/lib/mesos/isolators/docker/volume
@harryge00
harryge00 / mesos-agent config
Created December 26, 2018 02:31
mesos-agent config
MESOS_CGROUPS_ENABLE_CFS=true
MESOS_CGROUPS_LIMIT_SWAP=false
MESOS_CONTAINERIZERS=docker,mesos
MESOS_CONTAINER_LOGGER=com_mesosphere_mesos_JournaldLogger
MESOS_DEFAULT_CONTAINER_DNS=file:///opt/mesosphere/etc/mesos-slave-dns.json
MESOS_DISALLOW_SHARING_AGENT_PID_NAMESPACE=true
MESOS_DOCKER_REMOVE_DELAY=1hrs
MESOS_DOCKER_STOP_TIMEOUT=20secs
MESOS_DOCKER_STORE_DIR=/var/lib/mesos/slave/store/docker
MESOS_DOCKER_VOLUME_CHECKPOINT_DIR=/var/lib/mesos/isolators/docker/volume
@harryge00
harryge00 / kubeconfig
Created December 28, 2018 15:38
kubeconfig-for-aws
apiVersion: v1
clusters:
- cluster:
server: http://apiserver.marathon.slave.mesos:31333
name: kubernetes
contexts:
- context:
cluster: kubernetes
user: kubernetes-admin
name: kubernetes
@harryge00
harryge00 / Istio环境部署说明.md
Last active July 4, 2019 10:15
mesos-dns 与 CNI 集成

Mesos-DNS 部署

Mesos-dns是 mesos 服务发现工具,能查找app的Ip,端口号以及master,leader等信息。在Apache Mesos 集群中,允许应用程序和服务通过域名系统(DNS)来相互定位。Mesos-DNS 的特点是轻量、无状态,易于部署和维护。Mesos-DNS 将每个集群中正在运行的应用程序的域名转换成IP 地址和端口号。这使得任何链接到集群中运行的服务都可以通过DNS 进行查找。 Mesos-DNS是简单和无状态的,它不需要一致性机制,持久存储或日志复制,因为应用所需的心跳,健康监控或生命周期管理等功能都已经由Master、Agent和框架所提供。Mesos-DNS可以通过使用像Marathon这样的框架来实现容错,可以监控应用程序运行状况并在应用出现故障时重新启动它。Mesos-DNS因故障重新启动时,无需进一步协调它会从Master节点检索最新的应用状态,然后处理DNS请求。可以通过增加Master节点,即可提高可用性并为大规模集群中的DNS请求提供负载均衡。

Mesos-DNS 安装

Mesos-DNS 可以装在Mesos集群的任意一台机器上,或者是在同一网络的一台专用机器上。为了实现HA,可以在多个master上分别部署mesos-dns 实例。

wget https://github.com/mesosphere/mesos-dns/releases/download/v0.6.0/mesos-dns-v0.6.0-linux-amd64
sudo mv mesos-dns-v0.6.0-linux-amd64 /usr/local/bin/
@harryge00
harryge00 / kubeconfig
Created January 24, 2019 01:53
kubeconfig-mesos
apiVersion: v1
clusters:
- cluster:
server: http://apiserver.marathon.slave.mesos:31080
name: kubernetes
contexts:
- context:
cluster: kubernetes
user: kubernetes-admin
name: kubernetes
@harryge00
harryge00 / .bash_profile
Last active September 29, 2019 17:05 — forked from chrisberkhout/.bash_profile
Git aliases taken from oh-my-zsh's git plugin and translated to bash
# git aliases - taken from oh-my-zsh's git plugin and translated to bash
# https://github.com/robbyrussell/oh-my-zsh/wiki/Cheatsheet#helpful-aliases-for-common-git-tasks
# https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/git/git.plugin.zsh
function git_current_branch() {
ref=$(git symbolic-ref HEAD 2> /dev/null) || \
ref=$(git rev-parse --short HEAD 2> /dev/null) || return
echo ${ref#refs/heads/}
}
function git_current_repository() {
ref=$(git symbolic-ref HEAD 2> /dev/null) || \