后端,运维,资源技巧

VYOS 安装与基础命令

安装

vyos@vyos:~$ install image
Welcome to the VyOS install program.  This script
will walk you through the process of installing the
VyOS image to a local hard drive.
Would you like to continue? (Yes/No) [Yes]: Yes
Probing drives: OK
Looking for pre-existing RAID groups...none found.
The VyOS image will require a minimum 2000MB root.
Would you like me to try to partition a drive automatically
or would you rather partition it manually with parted?  If
you have already setup your partitions, you may skip this step
 
Partition (Auto/Parted/Skip) [Auto]:
 
I found the following drives on your system:
 sda    4294MB
 
Install the image on? [sda]:
 
This will destroy all data on /dev/sda.
Continue? (Yes/No) [No]: Yes
 
How big of a root partition should I create? (2000MB - 4294MB) [4294]MB:
 
Creating filesystem on /dev/sda1: OK
Done!
Mounting /dev/sda1...
What would you like to name this image? [1.2.0-rolling+201809210337]:
OK.  This image will be named: 1.2.0-rolling+201809210337
Copying squashfs image...
Copying kernel and initrd images...
Done!
I found the following configuration files:
    /opt/vyatta/etc/config.boot.default
Which one should I copy to sda? [/opt/vyatta/etc/config.boot.default]:
 
Copying /opt/vyatta/etc/config.boot.default to sda.
Enter password for administrator account
Enter password for user 'vyos':
Retype password for user 'vyos':
I need to install the GRUB boot loader.
I found the following drives on your system:
 sda    4294MB
 
Which drive should GRUB modify the boot partition on? [sda]:
 
Setting up grub: OK
Done!



vyos@vyos:~$ reboot
Proceed with reboot? (Yes/No) [No] Yes

阅读全文»

IPv4 / IPv6 双栈网络优先使用 IPv4 协议栈 Windows / Linux 设置方法

最近这几年国内网络基本都普及了 IPv4 / IPv6 双栈网络,可是在使用过程中,却经常发现 IPv6 的路由比较差,无论是响应速度还是质量都堪忧,就目前阶段而言国内 IPv6 的 Peer 还不能和 IPv4 相比。

根据 RFC3484 规定在双栈网络的情况下,默认都是优先使用 v6 协议,如果无法连接或超时则会回落 v4 这个时间大概是 300ms 左右。不过在实际使用过程中发现,使用 v6 访问时异常缓慢,原因如文章开头所述。例如在更新 Linux 软件包时如果使用优先的 v6 协议栈,那你就慢慢等吧。

阅读全文»

Git 更安全的强制推送,--force-with-lease

由于 git rebase 命令的存在,强制将提交推送到远端仓库似乎也有些必要。不过都知道 git push --force 是不安全的,这让 git rebase 命令显得有些鸡肋。

本文将推荐 --force-with-lease 参数,让我们可以更安全地进行强制推送。

阅读全文»

上游库更新后,如何同步一个 fork

fork 了别人的仓库后,原作者又更新了仓库,如何将自己的代码和原仓库保持一致?

同步一个 fork

Configuring a remote for a fork

  • 给 fork 配置一个 remote
  • 使用 git remote -v 查看远程状态。
git remote -v
# origin  https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
# origin  https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
  • 添加一个将被同步给 fork 远程的上游仓库
git remote add upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git

阅读全文»

Docker概念与常用命令

image

什么是Docker?

  • Docker是PaaS提供商dotCloud开源的基于LXC的,源代码托管在Github上的,基于Go语⾔言并遵从Apache2.0协议开源。
  • Docker可以让开发者打包他们的应⽤用以及依赖包到⼀一个轻量量级、可移植的容器器中,然后发布到任何流行的Linux机器器上,也可以实现虚拟化。
  • 容器器是完全使⽤用沙箱机制,相互之间不不会有任何接口(类似iPhone 的 app),更更重要的是容器器性能开销极低。

Docker的应用场景

  • Web 应⽤用的⾃自动化打包和发布.
  • 创建轻量、私有的PaaS环境.
  • 自动化测试和持续集成(CI)/持续部署(CD).
  • 部署并扩展Web应⽤用、数据库和后端服务器.

阅读全文»